The main objectives of the course are to familiarize students with the basic principles of Systems Analysis and Design, to introduce systems development methodologies and to apply modeling techniques with emphasis on Unified Modeling Language (UML) syntax and semantics using the Rational Unified Process (RUP) methodological framework in systems analysis and design.
- Introduction to system development methodologies: process-centered, data-centered, and object centered methodologies, structured design, rapid application development, agile development, selection criteria.
- Object-oriented analysis and design principles (use case driven, architecture centric, iterative and incremental), Introduction to UML, the role and value of UML in projects, the object-oriented paradigm and its relation to UML, an integrated approach to UML diagrams, UML tools.
- Use case models and diagrams: actors, use cases, relationships, system boundary, use case description, writing effective use cases, design guidelines, case study.
- Business process modeling with the use of activity diagrams: actions and activities, object nodes, control and object flows, swimlanes, design guidelines, case study.
- Structural modeling: class diagrams, conceptual, specification and implementation view of class diagrams, object diagrams, design guidelines, case study.
- Behavioral modeling: interaction diagrams (sequence and communication diagrams) basic notation, design guidelines, state diagrams, states, events, transitions, case study.
- Physical architecture: component and deployment diagrams.
- Rational Unified Process (RUP) methodological framework: phases, process and supporting workflows, iterations, milestones, best practices in RUP.
- Agile development, extreme programming, basic principles and practices, SCRUM methodology: sprints, roles, artifacts and user stories, case study.
- Modeling of a prototype system using UML: case study.
- Systems Analysis and Design with UML Version 2.0 (3rd edition) by A. Dennis, B. Haley, Wixom, D. Tegarden, Wiley, 2007.
- Requirements Analysis and System Design (3rd edition) by Leszek A. Maciaszek, Addison Wesley, 2007.
- System Analysis and Design Methods by Jeffrey L. Whitten, Lonnie D. Bentley and Kevin Dittman.
- Object-Oriented Systems Analysis and Design Using UML (2nd edition) by S. Bennett, S. McRobb, R. Farmer, McGraw Hill, 2002.
- Object Design: Roles, Responsibilities and Collaborations by Rebecca Wirfs-Brock and Alan McKean, Addison-Wesley, 2003.
- The Unified Modeling Language User Guide (2nd edition) by G. Booch, J. Rumbaugh, I. Jacobson, Addison Wesley, 2004.