- Find and verify requirements with models
- Model as-is and will-be processes
- Model data and states to better understand requirements
All engineering disciplines use models to develop the products they intend to build. The reason is simple: Models help to uncover—and then clarify—the functional data, and control requirements for any product, including software systems. A poor set of requirements will cripple any project. Modeling the business and its requirements is a proven way of finding all the requirements and guaranteeing their accuracy. Once you know they are correct, you can use the requirements models as specifications for the designers and builders of the system.
Learn How to Show What a System Is—Not Just What it Does
You can describe a system by what it is and by what it does. For example, consider this typical statement from a requirements specification: “The product must calculate the cheapest fare.” Beyond this innocent description of what the system must do lies a complex set of rules, procedures, data, and functions. Requirements modeling discovers the rules for calculating the cheapest fare, the algorithms needed, and the data necessary to complete and support those calculations. In other words, you build a complete model of the system.
You also can use models when eliciting requirements. A quickly sketched process model can be indispensable for displaying your understanding of the system during interviews. A data or class model reveals the policy of the system and any gaps are quickly discovered by a model constructed with your customer. A state model explains how a system behaves and thus clarifies the consequences of requirements.
Put Techniques into Practice
This course includes frequent opportunities to apply the illustrated techniques. You work with your instructor to build models and prove or disprove example requirements. You construct models to elicit requirements and then feed them back to see if your understanding matches that of your customer. Learn to evaluate when each of the models is useful and what degree of detail is necessary.
Bonus
- Earn 14 CDUs (Continuing Development Units) from the IIBA® (IIBA®, the IIBA® logo, BABOK® and Business Analysis Body of Knowledge® are registered trademarks owned by International Institute of Business Analysis.These trademarks are used with the express permission of International Institute of Business Analysis.)
- Each course participant receives a copy of James and Suzanne Robertson's book Complete Systems Analysis for class work and later review of course material. Valid for public courses only.
2-Day Course Outline
Modeling
Objectives
Requirements and systems analysis
How modeling is used in product development
The Context Model
Describing the scope of the problem
How the work connects to the outside world
Ensuring that the scope is accurate
Event Partitioning
Need to partition large systems into smaller parts
Business events
Work’s response to the business event
How to find the business events
Process Modeling
Event response process models
Process specifications and data definitions
Modeling viewpoints and how to use them
Data Modeling
Class or entity model
Classes, attributes, and associations
Heuristics for finding classes and associations
Relationship between process and data
Using attribution to construct first-cut models
State Modeling
State models and why we want them
Link between state transitions and business events
Modeling the states of classes
Modeling the Product
Building models of the software product
UML models
Role of business events and adjacent systems
Determining the product scope
Business events and use cases







