Software Design with UML

Course Information
-
Overview
-
Learning Outcomes
-
Who Should Attend
-
Testimonials
-
Trainer's Profile
-
Course Outline
This 1-day course is designed for software developers, project managers, and anyone interested in understanding UML (Unified Modelling Language) and its application in software design. Participants will learn the fundamentals of UML and how to effectively apply it in realworld software development scenarios.
By the end of the workshop, you will be able to:
- Understand UML Fundamentals: Define UML and explain its significance in software design.
- Identify and Utilize UML Diagrams: Recognize different types of UML diagrams,
- Create Basic UML Diagrams:
- Develop class diagrams that depict the structure of a software system.
- Construct use case diagrams to represent user interactions with the system.
- Model interactions using sequence diagrams.
- Apply UML in Software Design:
- Use UML diagrams to effectively communicate design concepts and architecture.
- Demonstrate the ability to model workflows and states in a system with activity and state diagrams.
- Implement Best Practices: Recognize common pitfalls in UML modelling and apply best practices to create clear, concise diagrams.
- Collaborate on Design Projects: Work effectively in teams to design UML models for a fictional application, fostering teamwork and communication skills.
These outcomes aim to equip participants with practical skills that can be applied immediately in their roles, enhancing both their design capabilities and overall software development processes.
- Software Developers: individuals looking to enhance their modelling skills using UML for better software design and implementation.
- System Architects: Professionals responsible for the high-level design of systems who need a clear understanding of how to model complex architectures.
- Project Managers: Managers who want to improve their ability to communicate software design concepts with their teams and stakeholders.
- Business Analysts: Analysts who gather requirements and need to visualize those requirements through use case diagrams and other UML tools.
- Quality Assurance Engineers: QA professionals aiming to better understand the software design process in order to create effective test cases.
- Technical Writers: Writers who need to document software architectures and processes can benefit from understanding UML modelling.
- IT Managers and Executives: Leaders who want to gain insights into software designpractices to better support their teams and projects.
By attending this course, participants will enhance their understanding of UML and its practical applications, leading to improved collaboration and more effective software development practices.

- Hong Kong born cybersecurity solutions consultant
- Over 10 years’ experience in smart card industry
- From hardware security to software secure element
- Serving customers in telco and financial institutions
- Certified Information Systems Security Professional (CISSP) awarded by International Information System Security Certification Consortium (ISC2)
- Advanced Certificated in Learning for Performance (ACLP) awarded by Institute for Adult Learning (IAL), SUSS
9:00 AM - 09:30 AM Introduction to UML
- Definition of UML
- History and evolution of UML
- Importance of UML in software design
9:30 AM - 10:00 AM Overview of UML Diagrams
- Categories of UML diagrams: Structural Diagrams, Behavioural Diagrams
- Introduction to Common UML Diagrams:
- Class Diagram
- Use Case Diagram
- Sequence Diagram
- Activity Diagram
- State Diagram
10:00 AM - 10:15 AM Tea Break
Relax and network with peers
10:15 AM - 12:00 PM Use Case & Class and Diagrams
- Personas
- Use Case Diagrams
- Actors, Use Cases, Relationships
- Creating a use case diagram for a sample application
- Class Diagrams:
- Components: Classes, Attributes, Methods, Relationships
- Creating a class diagram
12:00 PM - 1:00 PM Lunch Break
Enjoy a meal and recharge
1:00 PM - 2:30 PM Sequence and Activity Diagrams
- Sequence Diagrams
- Message sequences, Lifelines, Activation boxes
- Practical example
- Activity Diagrams
- Activities, Transitions, Decision nodes
- How to model workflows with activity diagrams
2:30 PM - 3:00 PM State Diagrams and Best Practices
- State Diagrams:
- States, Events, Transitions
- Example: Modelling a traffic light system
- Best Practices in UML:
- Guidelines for effective modelling
- Common pitfalls and how to avoid them
3:00 PM - 3:15 PM Tea Break
Short break for refreshments
3:15 PM - 5:00 PM Group Exercise
- Design a UML model for a fictional application (e.g., an online bookstore)
- Groups present their models and receive feedback
