Course: Software Requirements Analysis using Use Cases and UML (and, optionally, Rational Rose)
Duration: 1.5 to 3 days, or more (depending upon your objectives and requirements)
Delivery: Presentation and discussion with hands-on exercises delivered on-site. Optionally, can include:
- a workshop based upon general topics or real, project-specific work
- an introduction to Rational Rose and using Rose to complete the exercises
Audience:
The core audience roles include:
- Business and Software Requirements Analysts
Other roles that can benefit include:
- Software Architects
- Project Management and Customers/Stakeholders: especially the first 1 to 2 days
- Senior Management: especially the first 0.5 to 1 day
- Software Designers
- Software Developers
Also see the role-based offerings for Managers, Analysts, and Designers and Developers.
Price (in USD): The billing for seminar and workshop sessions is computed as follows:
- $285/student/day for students 1 through 12
- $240/student/day for students 13+
- minimum billing for 6 students
- travel and living expenses, at cost
- pro-rated billing for pre-arranged partial-attendance by Managers, etc.
Overview:
A 1.5 to 3 day seminar that optionally starts with a short overview of the Unified Process and progresses through requirements analysis using Use Cases and can optionally conclude with an overview of how these requirements are used to drive the discovery of the software architecture. The Unified Modeling Language (UML) is used for the applicable notation.
Optionally, an Introduction to Rational Rose can be woven into the seminar and some standardized exercises and/or a workshop can be added based upon general issues or specific project issues, depending upon the project's status.
Outline
Starting with the "Specifying System Behavior via Use Cases" module (with or without the Use Case Exercise), the other modules (detailed below) can be added as required. In addition, after the initial training session, on-site consulting/mentoring and/or off-site Use Case reviews can be added to help accelerate the analysis effort and ensure success.
The following table presents some suggested content mixes that have proven to work well:
|
Description
|
Duration
|
Content (Included Modules)
|
| Basic training, often followed by on-site consulting and/or some off-site Use Case reviews. |
2 Days
|
Specifying System Behavior via Use Cases module, complete with Use Case Exercise or a 0.5-day Use Case Workshop |
| Training for projects/teams that are using at least parts of the Unified Process and have made some attempt at working with Use Cases, sometimes followed by on-site consulting and/or off-site reviews. |
3 Days
|
Unified Process module plus Specifying System Behavior via Use Cases module (minus the Use Case Exercise) plus a 1-day Use Case Workshop |
| Training for projects/teams that have done some Use Case work but are struggling or finding that they've developed "useless cases" that don't optimal value. On-site consulting and/or off-site reviews sometimes follow this. |
3 Days
|
Specifying System Behavior via Use Cases module (minus the Use Case Exercise) plus a 1.5-day Use Case Workshop |
| Enhanced training for projects/teams where the Analysts tend to work more closely with the Architects, Designers and Developers. On-site consulting and/or off-site reviews sometimes follow this. |
4 Days
|
Unified Process, Specifying System Behavior via Use Cases and Use Case Analysis and Design modules (minus the Use Case Exercise) plus a 1.5-day Use Case Workshop |
| Follow-on training to help Analysts understand what happens to the Use Cases they develop (i.e., how they're used during software development). This is often done as part of an on-site review of an initial batch of Use Cases produced after training. |
1 Day
|
Review of some Use Case fundamentals, often resulting from an off-site Use Case review, plus Use Case Analysis and Design module. |
Unified Process - 0.5 Day
- The Rational Unified Process (RUP) : an assembly of industry best practices
- Practice 1 : Develop Iteratively
- Practice 2 : Engineer/Manage Requirements
- Practice 3 : Use Component Architectures
- Practice 4 : Modeling Visually (using UML)
- Practice 5 : Continuously Verify Quality
- Practice 6 : Manage Change
- Habits of Successful Projects
Specifying System Behavior via Use Cases - 2 Days (1.5 days without exercise)
- Introduction
- Requirements
- Use Case Fundamentals
- Creating Use Cases
- Capturing Detailed Requirements
- Simple Example
- Additional Use Case Concepts
- Using Use Cases (includes a free Use Case style guide)
- Use Case Exercise - 0.5 Day
Use Case Analysis and Design - From Use Cases to Classes - 0.5 Day
- Artifacts Overview
- Identify Classes from Use Case Flows
- Collaboration Diagrams
- Use Case Analysis and Design Steps
- Understanding the Relationships
- Creating an Initial Class Diagram
Use Case Workshop - 0.5 to 2 Days
- Common Use Case Issues
- Surviving Your First Use Cases ... and Benefiting the Most
- Requirements for Large Systems
- Topics based upon current project/team issues
(requires pre-review or pre-discussion of prior work done or attempted)
- Review of selected project use cases or requirements
- Discussion of current project issues
- Real-time work on selected portions of project use case(s)
Introduction to Rational Rose for Use Cases - 0.25 Day (inserted when doing the Use Case Exercise)
- The Rose Model, Model Elements and Diagrams
- basic concepts and configuration
- the model modeling elements and diagrams