- Level Professional
- Duration 28 hours
- Course by The Hong Kong University of Science and Technology
-
Offered by
About
Software Development Life Cycle (SDLC) is the process of developing software through planning, requirement analysis, design, implementation, testing, and maintenance. This course focuses on the requirement analysis phase of SDLC, and you will learn how to use UML models to capture the system requirements and to facilitate communication between client/users and developers. UML is a general purpose visual modeling language for systems. It can be used to highlight different aspects of the system that are of interest to different stakeholders. Data requirements are captured in the domain model, which describes the important concepts of the application domain as classes, associations between them and constraints on them. Functional requirements are captured in the use-case model to describe the interactions between the system and its environment (users, other systems). UML incorporates the current best practices in Object-Oriented modeling techniques. Basic object-oriented programming (OOP) concepts are required to attempt the course. It is recommended to take the courses in the order they are listed, as they progressively develop techniques and concepts about software engineering, but it is not a hard requirement.Modules
Lecture 1 - Introduction to Software Engineering
1
Assignment
- Quiz 1 - Introduction
3
Videos
- Lecture 1-1 - Software Development is Complicated
- Lecture 1-2 Dealing with the Complexity
- Lecture 1-3 What is Software Engineering
1
Readings
- Lecture 1 - Introduction to Software Engineering
Lecture 2 - Modeling Software Systems Using UML
1
Assignment
- Quiz 2 - Modeling Software Systems Using UML
3
Videos
- Lecture 2-1 Modeling Introduction
- Lecture 2-2 UML Class Diagram
- Lecture 2-3 Association and Aggregation Relationships
3
Readings
- Lecture 2 - Modeling Software Systems using UML
- Lecture 2 - Class Diagram Exercise
- Lecture 2 - Class Diagram Exercise (Solution)
Lecture 3 - Types of Relationships in Class Diagram
1
Assignment
- Quiz 3 - Modeling Software Systems Using UML
3
Videos
- Lecture 3-1 Association Class
- Lecture 3-2 Generalization
- Lecture 3-3 Class Diagram Summary
5
Readings
- Lecture 3 - Modeling Software Systems using UML
- Lecture 3 - Class Diagram Exercise 1
- Lecture 3 - Class Diagram Exercise 1 (Solution)
- Lecture 3 - Class Diagram Exercise 2
- Lecture 3 - Class Diagram Exercise 2 (Solution)
Lecture 4 - System Requirements Capture and Domain Modeling
1
Assignment
- Quiz 4 - System Requirements Capture
3
Videos
- Lecture 4-1 - Introduction to System Requirements Capture
- Lecture 4-2 - Domain Modeling - Evaluating Classes
- Lecture 4-3 - Domain Modeling - Evaluating Associations and Attributes
3
Readings
- Lecture 4 - System Requirements Capture
- Lecture 4 - Domain Model Exercise
- Lecture 4 - Domain Model Exercise (Solution)
Lecture 5 - Use Case Modeling
1
Assignment
- Quiz 5 - System Requirements Capture
3
Videos
- Lecture 5-1 - Use Case Modeling - Actors
- Lecture 5-2 - Use Cases
- Lecture 5-3 - Use Case Modeling Example
3
Readings
- Lecture 5 - System Requirements Capture
- Lecture 5 - Domain Model Exercise
- Lecture 5 - Domain Model Exercise (Solution)
Lecture 6 - Use Case Specification
1
Assignment
- Quiz 6 - System Requirements Capture
3
Videos
- Lecture 6-1 - Use Case Specification
- Lecture 6-2 - Extension Point and Alternative Flow
- Lecture 6-3 - SubFlow
4
Readings
- Lecture 6 - System Requirements Capture
- Lecture 6 - Use Case Detailed Specification Example
- Lecture 6 - Use Case Model Exercise
- Lecture 6 - Use Case Model Exercise (Solution)
Lecture 7 - Non-Functional Requirements
1
Assignment
- Quiz 7 - System Requirements Capture
2
Videos
- Lecture 7-1 - Non-Functional Requirements
- Lecture 7-2 - Validate System Requirements
5
Readings
- Lecture 7 - System Requirements Capture
- Lecture 7 - Use Case Modeling Exercise
- Lecture 7 - Use Case Modeling Exercise (Solution)
- Lecture 7 - System Requirements Capture Exercise
- Lecture 7 - System Requirements Capture Exercise (Solution)
Auto Summary
Dive into the realm of software engineering with this professional course on modeling software systems using UML. Focused on the requirement analysis phase of SDLC, you'll master UML to capture system requirements and improve client-developer communication. Ideal for those with basic OOP knowledge, this Coursera course spans 1680 minutes and offers a starter subscription option. Perfect for IT and computer science professionals aiming to enhance their modeling skills.

Kenneth W T Leung