Length: 2 Days
Developing User Requirements Training Workshop
Developing User Requirements Training Workshop provides guidelines and skills to plan and write well-defined and well-formed, testable, verifiable, validateable user requirements. Attendees will learn to enhance their requirements writing skills and system/product development processes starting with elicitation and stakeholders involvement.
User Requirements are the foundation for building any successful product or system.
Determine WHAT the product/project or system must do and drive the user requirements development. User Requirements are used to determine [verify] if the project team built the product/project or the system correctly. User requirements development process identifies the activities needed to produce a set of complete and verifiable user requirements. User requirements will also be validated based on user’s operational needs.
User Requirements development process includes a set of activities that will produce requirements for the project, product, system or the sub-systems.
Everything should be made as simple as possible, but not simpler.
“Requirements” are defined as “something that governs what, how well, and under what conditions a product will achieve a given purpose.”
- Stakeholder involvement is essential for validating the user requirements. Are these the correct user’s requirements?
- Elicitation techniques enables the discovery and understanding of the needed requirements by the users.
- A trade study is used to analyze and compare alternative requirements and their cost impacts on the project.
- Traceability of user’s requirements to needs & requirements are critical. Support documentation, and constraining policies [e.g., safety, security ot reliability requirements].
Developing User Requirements Training Workshop Objectives:
- List attribute of well-defined user requirements
- Identify the motivations behind writing well defined user requirements
- Explain value proposition of well-formed, unambiguous, validated requirements to enhance your development processes and achieving success
- Describe the process to complete a user requirements specification document
- Steps in Writing and Assembling the Requirements Document
- List steps in Stakeholder Involvement and Elicitation
- Methods to identify the needs of the stakeholders who directly interact with the product or the system
- Describe challenges in defining user requirements for complex products and systems
- Understand why User Requirements Specifications are written early in the validation process, typically before the system is created
- List the elements in User Requirements Model Roadmap
- Define Activity Diagram, Actor Map, Actor Table and Business Policies
- List Cross-Cutting Activities related to developing User Requirements
- Define the role of Project Management Practices
- Risk Management, Metrics and Configuration Management
- Define the role of Decision Gates and Decision Support/Trade Studies
- List steps in Technical Reviews
- Define techniques in User Requirements Traceability
- List methods and techniques for User Requirements Validation
Who Should Attend
- Analysts
- Project and program managers
- Subject Matter Experts (SMEs)
- Agile Product Owners
- Project Leaders and Managers
- Software Engineers
- System Engineers
- Systems Analysts
- Software Testers
- Solution Architects
- and anyone else involved in planning and writing and managing user requirements
Topics Include:
- Requirements Development Process
- User Requirements Planning
- Eliciting Requirements Techniques
- Stakeholders Involvement Processes
- Developing Requirements
- Analyzing Requirements
- Writing and Validating the Requirements
- Check Requirements Completeness
- Methods to Verifying Requirements
- Methods to Validating Requirements
- Managing Baselines and Changes to the Requirements
Developing User Requirements Workshop Activities
- Templates, tools and exercises with real projects to assist in gathering user requirements and getting the correct stakeholders involved
- Tools and techniques to review requirements to make sure they are complete and address all of the users needs
- Mechanics to participate in the user requirements walkthrough
- Tools to ensure the correct requirements are being developed [validating the requirements]
- Techniques to gain stakeholder approval and support for the user requirements
- Mechanisms to track the requirements development activities
Course Agenda
User Requirements Development Process
- What are the user requirements?
- The requirements development process
- Elicit, analyze, verify, specify, verify, validate and manage
- Sources for requirements
- Rules for writing business requirements
- User requirement structures
- TONEX user requirement development template
- Steps in developing effective use requirements
- Stakeholder challenges in developing effective use requirements
- Identifying relevant stakeholders
- Identifying and managing requirements
- Differences and Similarities between Functional versus Non-Functional Requirements
- Modeling User’s Concerns as Non-Functional Requirements
- Categorizing and Characterizing Non-Functional Requirements
Techniques to Identify User Requirements
- Eliciting Requirements Techniques
- Concept of Operations
- User needs, expectations, goals, and objectives
- Operation from the user’s perspective
- Major external interfaces, high level functional requirements, and stakeholders
- Feasibility Study
- Conceptual high-level design and requirements
- Project Plan
- Review plans, configuration management plans, and risk plans
- Controlling the requirements development
- Configuration management
- Process to control changes to the requirements and manage the baseline documentation
- Risk management
- How to monitor, control, and mitigate high risk requirements
- Enablers
- Reviews
- How to identify defects, conflicts, missing, or unnecessary requirements
- Requirements review control gate
- Formal reviews
- To approve the final set of requirements
- Stakeholder involvement
- Rules for validating the requirements
- Elicitation
- Discovery and understanding of the needed requirements
Stakeholders Involvement Processes
- Processes Activities
- Develop requirements
- Stakeholder needs and input products
- Techniques to create prioritized, de-conflicted, and validated requirements with the stakeholders
- Write and document requirements
- Characteristics of “good” system requirements
- Necessary, testable, clear, concise, technology-independent, feasible, and stand-alone requirements
- The base to build upon ( baseline)
- Managing changes to the requirements
- Check completeness
- A complete set of requirements
- Functions that are needed to satisfy the stakeholder needs
- Associated performance, environmental, and other non-functional requirements
- Analyze, refine, and decompose requirements
- Tools to examine each requirement to see if it meets the characteristics of a good
- Requirement decomposition
- Refined set of requirements
- Validate requirements
- Each requirement must be validated to ensure that these are the correct requirements
- Stakeholder walkthroughs and tracing requirements to an associated need
- Manage requirements
- Accepted requirements and the baseline
- Changes to the requirements
Developing User Requirements
- Develop requirements
- To gather, analyze and develop requirements from the Concept of Operations (CONOPS), stakeholder needs, objectives and other external requirement
- Write and document requirements
- Functional and performance requirements into the appropriate requirements documents
- Initial Capabilities Document (ICD)
- Capability Development Document (CDD)
- Capability Production Document (CPD)
- Capability Development Tracking and Management
- Requirements development in the project timeline
- Requirements policy or standards
- Cataloging Non-Functional Requirements
- Quantitative Performance Requirements
Measurable Requirements
- Constraints vs. Non-Functional Requirements
- Constraining (Environmental) Elements
- Analyzing Stakeholder needs and requirements
- Bad Requirements
- Missing Requirements
- Inconsistent Requirements
- Issues with identifying Non-Functional Requirements
- Exercise: Non-Functional in Your Environment
- Non-Functional Performance Requirements
- Evaluating Performance Requirements
- Requirements Decomposition
- How do I fit these activities to my project? [Tailoring]
- What should I track in this process step to reduce project risks and get what is expected? [Metrics]
Requirements Analysis Process
- Requirement completeness
- Requirements attributes [quality factors] assignment
- Requirement’s priority, risk, cost, owner, date, verification and validation methods
- Verification methods
- Demonstration, analysis, test, and inspection
- Validation methods
- Demonstration, analysis, test, and inspection
- Stakeholders approval
- The baseline [reference point for future decisions] establishment
- Development, testing, support, deployment, production, training, and disposal
- Functional, Performance, Environmental, and Non – Functional Requirements
Analyzing Requirements Attributes
- Necessary [trace to a user need]
- Concise [minimal]
- Feasible [attainable]
- Testable [measurable]
- Technology Independent [avoid “HOW to” statements unless they are real constraints on the design of the system]
- Unambiguous [Clear]
- Complete [function fully defined]
Guidelines for Writing Requirement Statements
- Principles of well-defined requirements
- Syntax and active voice
- Requirements construct
- Well-formed, bad and irrelevant requirements
- Stakeholder requirements and needs
- What are effective requirement statements?
- Structured requirement statements
- System thinking
- Exercise: Working with requirements
- Techniques and tools to identify Functional Requirements
- Performance Requirements
- Enabling Requirements
- Training, operations, maintenance support, development, testing, production, deployment, and disposal
- How to separate Interface Requirements?
- Environmental Requirements
- Non-functional
- Reliability, availability, safety, and security
Writing and Validating the Requirements
- Check Requirements Completeness
- Characteristics of good requirements
- Good requirements statements
- Traceability to the source
- Traceability to the operational needs
- Attributable to an authoritative source
- Requirements unique identifier
- Test the wording of the requirement from different stakeholders’ perspectives
- Specific and singularity
- Measurability
- Functions assessment as quantitatively or qualitatively
- Performance factors
- Testability
- Vague statements
- Consistency and compatibility
- Feasibility
- Implementation-free
- Critical performance and level of acceptance
- Requirements analysis measures
- Measures of Effectiveness (MOEs)
- Measures of Performance (MOPs)
- Key Performance Parameters (KPPs)
Methods to Verifying and Validating Requirements
- Requirements verification vs. validation
- Methods to Validating Requirements
- Managing Baselines and Changes to the Requirements
- Validation Terminology
- User Requirement Specifications
- Functional Requirements (Functional Requirement Specifications)
- Validation Plans (VP)
- Validation Master Plans (VMP)
- Risk Assessment (RA)
- Test Plan / Test Protocol
- Operational Qualification (OQ)
- Performance Qualification (PQ)
- Requirements Traceability Matrix
- Validation Summary Report
- Change Control for Validated Systems
- Auditing and Assessments
- Verification and Validation checklists