Agile UML Workshop: Hands-on Analysis, High-Level Design and Iteration Planning
Book Now - 1 Delivery Method Available:Classroom Virtual Classroom Private Group - Virtual Self-Paced Online
The Unified Modeling Language (UML) is the industry standard notation for describing objectoriented systems. It can be used as a medium for describing existing systems as well as for communicating the requirements and structure of new ones. The notation includes a number of diagram types that can be applied from analysis, through design and to system deployment.
Although ostensibly independent of development lifecycle, UML is intended to support iterative and incremental, architecture-driven development. The Rational Unified Process (RUP) provides a common framework intended for UML-based development processes, both heavy and light. It outlines four basic phases in a lifecycle: inception, elaboration, construction and transition.
The Agile UML Workshop course introduces a useful subset of the core modelling notation in UML and follows the four RUP phases at a high level. The view of both the notation and the process is intentionally streamlined, favouring agility over orthodoxy. Models appropriate to each part of the lifecycle are developed, with notation introduced as needed. Some techniques for planning and managing risk in development schedules are also introduced.
- Present a useful working subset of UML notation
- Outline a lightweight development lifecycle based on RUP
- Put the notation into practice following the development lifecycle for a simple project
- Introduce planning techniques that give developers, project managers and customers visibility of progress, and management of risk and schedule
Overview (4 topics)
- RUP and related development processes
- The role of UML
- The inception, elaboration, construction and transition phases
Inception (3 topics)
- Scope and system requirements
- Identifying and describing actors
- Identifying and defining use case goals
Elaboration (4 topics)
- Defining use cases in more detail
- Using activity diagrams to assist use case description
- Using class diagrams to explore the domain model
- Outlining a broad, baseline architecture with package diagrams
Construction (3 topics)
- Techniques for using interfaces and delegation to manage dependencies
- Analysing and designing for new and changing requirements
- Planning and estimation
Transition (2 topics)
- Planning for completion and installation
- Using component and deployment diagrams
The course is suitable for software developers and analysts with some notion of object-oriented principles and practices. Any previous experience with object-oriented programming, UML or other modelling notations is an advantage.