Requirements Engineering Foundation
General Description
We all know that the validity and accuracy of the requirements can make or break a project, yet often insufficient time and effort is devoted to this critical part of the software development life cycle. This course explores not just why the requirements matter, but how to gather the right requirements, document them effectively and ensure that they are properly implemented. It explores the roles of the requirements engineer and business analyst both in ferreting out the requirements and interacting with the project team to ensure the customer gets the product they want and need. In this course you will learn effective techniques to select the right people from whom you will elicit the requirements. You will learn to document and track these requirements so nothing gets missed. You will learn which team members you must interact with at which stage in the project, and you will learn to track the requirements to completion. Rather than looking at the requirements gathering as the first step in the lifecycle, we look at the requirements throughout the lifecycle as a driving force to implementing the best product possible.
This course is based on both the IIBA (International Institute of Business Analysts) and IREB (International Requirements Engineering Board) bodies of knowledge.
This course is an excellent preparation course for both the IIBA and IREB certification exams. In three days we will teach you to be effective in your tasks, how to work within the development methodology that has been implemented, and how to save your team time and money.
Learning Objectives
Through presentation, discussion, and hands–on exercises, attendees shall:
- Know reasons why requirements engineering/business analysis is important, yet often neglected (K1)
- Know roles of the requirements engineer/business analyst (K1)
- Understand the impact and causes of poor requirements (K2)
- Understand basic glossary terms (K2)
- Apply good requirements engineering to avoid project and product problems (K3)
- Extract the tasks from the requirements engineer/business analyst job description (K3)
- Know the legal aspects of working with contracts, suppliers and customers (K1)
- Understand that the type of product and application domain influence the approach that should be taken (K2)
- Understand that project conditions can strongly affect the success of the planned approach (K2)
- Understand that the environment is frequently changing and adaptation is a must (K2)
- Understand the social and human interaction factors that are required for success (K2)
- Identify missing success factors (K3)
- Estimate risk (K3)
- Understand the mechanisms and fundamental psychology of effective communication and the skills required for success (K2)
- Know the risks of inadequately determining the scope, context and interfaces of a system (K1)
- Understand the meaning of scope, context and interface (K2)
- Apply techniques to specify the logical and physical system boundaries using suitable techniques (K3)
- Know that requirements exist in many forms and must be consolidated into a coherent whole (K1)
- Understand the differences between functional and non–functional requirements and the acceptance criteria for each (K2)
- Understand the methods to use to define the behavior of the system (K2)
- Identify and model the processes of a system using a variety of tools and techniques (K3)
- Understand how to identify and structure large quantities of terms (K2)
- Apply graphical forms such as entity relationship diagrams (K3)
- Know classification schemes for non–functional requirements (K1)
- Understand categories of non–functional requirements, where to find these requirements and the importance of assigning acceptance criteria to each (K2)
- Understand interface requirements may change over time (K2)
- Know the pertinent IEEE documents and their main content (K1)
- Understand the needs of the individual stakeholders regarding the documentation they receive (K2)
- Understand the standard content of a requirements document (K2)
- Understand effective terminology to use in requirements and for acceptance criteria (K2)
- Rephrase a section of a requirements document so that it meets the required characteristics and complies to guidelines (K3)
- Know the requirements–applicable terms in the IEEE Glossary of Standard Software Engineering Terms (K1)
- Understand the importance of effectively using project glossaries (K2)
- Know which notation systems are most suitable for achieving various objectives at a specified level of detail (K1)
- Know that all sources must be identified and requirements solicited (K1)
- Understand the different sources and how to access information from these sources (K2)
- Understand the best elicitation techniques to use (K2)
- Understand how to validate quality characteristics (K2)
- Understand how to conduct an effective review session (K2)
- Apply checklists to find errors in requirements (K3)
- Understand the importance of each requirement being uniquely identified, prioritized and assigned the appropriate attributes (K2)
- Know the importance of creating views of the requirements (K1)
- Understand the different stakeholder views and the content of those views (K2)
- Understand the importance and application of traceability to a set of requirements (K2)
- Apply traceability (K3)
- Understand the importance of versioning and creating releases of requirements (K2)
- Understand the role of change management and the activities of a change control board (K2)
- Know the categories of tools that a requirements engineer/business analyst uses (K1)
- Understand the application of tools to the phases of requirements gathering and documentation (K2)
- Assess the benefits of various tools (K3)
- Know the outlook for the industry and the adaptation required for various domains and stakeholders (K1)
Course Materials
This course includes the following materials:
| Name |
Description |
| Course Outline |
A general description of the course along with learning objectives, course materials and an outline of the course topics, including approximate timings for each section. |
| Noteset |
A set of approximately 600 PowerPoint slides covering the topics to be addressed. |
| IREB Foundation Syllabus |
“Certified Professional for Requirements Engineering Syllabus” |
| IIBA Body of Knowledge |
“Guide to the Business Analysis Body of Knowledge” |
| Project Source Documents for Course Exercises; |
Specifications used in the realistic example project used in exercises for the course. |
| Exercise Solutions |
A set of approximately 60 pages of detailed solutions for all exercises in the course. |
The printed course materials are provided in a binder in a way which makes it convenient for course attendees to remove portions as needed for reference; e.g., during exercises.
Session Plan
Total course time is 18 hours of instruction and 5 hours of exercises.
An additional 3 hours of optional exercises are available if a 4 day format is requested.
- Defining the Job (90 minutes)
- Do good requirements matter? (2 exercises, 15 mins)
- Purpose of defining a body of knowledge
- Basic terminology (1 optional exercise – 10 mins)
- Business analyst or requirements engineer
- Required skills
- Categorizing Requirements (60 mins)
- Functional requirements
- Behavioral requirements
- Data and information requirements
- Non–functional requirements (1 optional exercise – 20 mins)
- Interface requirements
- Enterprise Analysis (180 mins)
- Determining the scope (2 optional exercises – 30 mins)
- Understanding who does what (1 optional exercise – 20 mins)
- Defining and planning the project (1 exercise – 10 mins)
- Managing requirements risk (1 optional exercise – 20 mins)
- Estimating (1 optional exercise – 10 mins)
- Managing scope (1 exercise – 15 mins)
- Eliciting Requirements (120 mins)
- Identifying the sources (1 optional exercise – 10 mins)
- Finding the stakeholders (1 exercise – 10 mins)
- Applying elicitation techniques (1 exercise – 15 mins)
- Analyzing the Requirements (90 mins)
- Creating the business domain model
- Analyzing what you elicited (1 optional exercise – 15 mins)
- Determining assumptions and constraints (1 optional exercise – 10 mins)
- Documenting Requirements (120 mins)
- Preparing the glossary
- Getting ready to document
- IEEE guidelines (1 exercise for 45 mins)
- Assigning attributes (1 exercise for 30 mins)
- Modeling Techniques (180 mins)
- Data and static behavioral models (1 exercise for 45 mins)
- Process and flow models (1 exercise for 30 mins)
- Usage models (1 exercise for 30 mins)
- Conducting Reviews and Gaining Approval (90 mins)
- Preparing the requirements package
- Validating and verifying through reviews (1 exercise for 30 mins)
- Obtaining approvals
- Implementing and Maintaining (90 mins)
- Tracking traceability (1 optional exercise for 30 mins)
- Managing changes
- Selecting the solution
- Tools – 60 mins (2 exercises for 30 mins)
- Outlook for the Industry – 10 mins
Copyright © 2003 – 2005, Rex Black, All Rights Reserved