SWE 313 | Software Process and Modeling
Course Description:
This course aims to provide a comprehensive presentation of the key concepts and models used in object-oriented approaches in software engineering. This includes a review of Object-Oriented concepts and modeling with UML: Structural Modeling, Behavioral Modeling – System architecture design, – User Interface Design – Object Persistence Design - Class and Method Design - Object-Oriented Testing – Unified Process development cycle – Use case analysis – Sequence diagrams – Encapsulation – Inheritance – Polymorphism – Design principles of coupling and cohesion – Design patterns. Students will be exposed to: Rational’s Software Tools, UML Generating tools, standard templates for SRS, Quality control and other SE related documents. Students will participate in a group project on object-oriented software engineering.
Course Objectives:
1. Define and understand fundamental and advanced concepts of software engineering process.
2. Define fundamental and advanced OO Software Engineering concepts.
3. Understand how to capture system requirements in use cases.
4. Understand how to transform an analysis models into to design models.
5. Apply an iterative process to the development of a design model.
6. Design UML diagrams to represent analysis and design models.
7. Understand software processes and software development methodologies.
8. Use OO Case tools to create UML diagrams.
5. Relationship of Course to Program Outcomes:
| Outcome | Outcome Description | Contribution |
| (c) | an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability | M |
| (e) | an ability to identify, formulate, and solve engineering problems | M |
| (k) | an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice | H |
| (l) | the ability to analyze, design, verify, validate, implement, apply, and maintain software systems | H |
Course References:
Textbooks | Primary
SOFTWARE MODELING AND DESIGN (2011) by Hassan Gomaa
Cambridge University Press
Textbooks | Supplementary
- S. Bennett, S. McRobb, and R. Farmer (2006). Object-Oriented Systems Analysis and Design Using UML. 3rd Edition, McGraw-Hill
- G. Booch et al. (2007). Object-Oriented Analysis and Design with Applications. 3rd Edition, Addison-Wesley.
