Course Description
This unit covers the essential skills of object-oriented analysis and design including use case modelling, domain modelling, design patterns, object relational mapping, etc. It emphases the ever changing nature of software requirements and key analysis and design techniques to identify and handle those changes. Unified Modelling Language (UML) is introduced as a standard way of expressing and documenting the results of both analysis and design. The objectives are to ensure that on completion of this unit, students will be able to analyze a real world system development problem, to convert the analysis result to an efficient, resilient design by applying various design principles and patterns, and to implement that design. Students are expected to have sufficient Java or C# knowledge to ensure success in this course.
Learning Outcome
- Understand how to analyze a problem based on user requirements.
- Construct one or more models of the problem space and express the results of analysis in proper UML diagrams.
- Transform the domain-model from your analysis into an effective object-oriented design.
- Understand the principles of quality object-oriented design and apply them through out the design stage
- Understand how and when to use a few important GoF design patterns.
Assessment packages
- Quizzes (50%)
- Final Exam (50%)
Course staff
- Lecturer: Dr. Ying Zhou (ZHOUY at IT dot USYD dot EDU dot AU)