Length: 3 Days
Software Requirements Training
Software Requirements Training Course Description
Software requirements training discusses what needs to be generated by a software. Software requirements training teaches you to identify the needs for and the external behavior of a system design.
Software requirements engineering is the process of determining what is to be produced in a software system. It has the widely recognized goal of determining the needs for, and the intended external behavior, of a system design. Software requirements training course covers all the knowledge, techniques, and skills required to implement or improve software requirements development and management. This hands-on seminar provides fundamentals of software requirements, terminology, importance of software requirements, software standards and models, and software development process.
Added Value of Software Requirements Training
- Learn how to define scope and goals of a software product
- Learn to identify the product’s stakeholders
- Learn how to convert higher-level business and user requirements into software product requirements
- Learn about concept of operations document an software requirements features
- Learn how to establish baseline for requirements, monitor them, and manage the requirements
- Learn about requirements elicitation, analysis, specification, and validation
TONEX Software Requirements Training Features
The main part of this hands-on course is dedicated to group activities and hands-on practices. Participants are welcome to bring in their own sample work or simply use the real world cases and examples our instructors will provide. The course is designed to be fun, interactive, and dynamic.
Audience
Software requirements training is a 3-day course designed for:
- Business analysts
- System and software requirements analysts
- Project managers
- Functional managers
- Software developers
- Testing engineers
- Software quality engineers
- Software stakeholders
Training Objectives
Upon the completion of software requirement training, attendees are able to:
- Understand the foundation and concepts of software requirements engineering
- Identify the suitable requirements elicitation approaches to identify their requirements
- Analyze their requirements successfully
- Develop a requirements feature correspond with their requirements
- Apply different requirements validation techniques to carefully assess their requirements to determine defects
- Manage change to their requirements
- Derive functional and non-functional requirements that are comprehensive, brief, precise, coherent, testable and explicit
- Choose the proper requirements elicitation techniques to identify requirements.
- Successfully evaluate requirements and prioritize based on that evaluation
- Perform requirements engineering in the context of the most common software development life cycles and processes
Course Outline
Overview of Software Requirements
- Definitions of a software requirement
- Product and process requirements
- Functional and non-functional requirements
- Developing properties
- Measurable requirements
- System and software requirements
- What are requirements
- Requirements information levels
- Importance of requirements
- Project failure issues
- Incomplete requirements issues
- Lack of user involvement issues
- Requirements defects
- Requirements churn issue
- Wasted resources
- Gold plating issue
- Incorrect approximations
- Advantages of good requirements
- When requirements and the life cycle
- Requirements engineering is iterative
- Requirements stakeholders
Requirements Process
- Models
- Actors
- Support and management
- Quality and improvement
- Incremental requirements development
- Requirements engineering context
Requirements Analysis
- Requirements sources
- Elicitation techniques
Requirements elicitation, Business level requirements
- Goal of business level requirements
- Vision statement
- Defining business objectives
- Features of “good” business objectives
- Product scope and limitations
- Product context diagram
Requirements elicitation, Stakeholders
- Stakeholder definition
- Advantages of knowing stakeholders
- Step 1: Identifying stakeholders
- User types
- Step 2: Trim the stakeholder list
- Step 3: Participation strategy
- Stakeholder conflict management
- Decision standards options
- Customer’s bill of rights
- Customer’s bill of responsibilities
Requirements elicitation, Requirements elicitation techniques
- Direct-two-way interactions
- Prior interview
- Open-ended questions
- Context-free questions
- During the interview
- Listening actively
- Interviewing guidelines
- Post interview
- Focus groups
- Facilitator do’s and don’ts
- Documentation analyses
- Other requirements elicitation techniques
Requirements Analysis
- Requirements organization
- Conceptual modeling
- Architectural design and requirements allocation
- Requirements negotiation
- Formal investigation
Requirements modeling
- Benefits of models
- Types of models
- Object oriented models
- Structured analysis models
- Data flow diagram
- Entity relationship diagram
- State transition diagram
- State transition table
- Other models
- Process flow diagram
- Decision tree
- Event/response table
Identifying Product Requirements
- Levels of requirements information
- Functional requirements
- Data requirements
- Nonfunctional requirements
- Quality qualities
- Measurable nonfunctional requirements
Requirements Specification
- System definition document
- System requirements document
- Software requirements specification
- Concept of operations
- Documenting user level requirements
- Concept of operations document
- System vs. software requirements
- Writing “good” requirements
- Data dictionary
Requirements Validation
- Requirements reviews
- Reviews definition
- Cost of rework
- Peer reviews
- Inspection process
- Inspection meeting
- Who should inspect requirements
- Requirements completeness
- Requirements checklist
- Ambiguity
- Prototyping
- Prioritizing
- Advantages of prioritizing requirements
- Prioritization concerns
- First pass prioritization
- Second pass prioritization
- Model validation
- Acceptance tests
- Requirements test planning
- Testability
- Writing test cases
Practical Considerations
- Iterative type of the requirements process
- Change management
- Requirements characteristics
- Requirements tracking
- Measuring requirements
Standards and models related to requirements
- SEI CMM® and CMMI SM
- SEI CMM® and CMMI SM
- Requirements management process area
- Requirements development process area
- Common practices
- IEEE software engineering standards
- ISO 9000:2000 on requirements
Requirements management
- Establishing and maintaining baselines
- Baseline definition
- Categories of baselines
- Requirements specification attainment
- Sign-off
- Traceability
- Traceability definition
- Bi-directional traceability
- Advantages of requirements traceability
- Traceability matrix
- Traceability tagging
- Requirements change management
- Configuration control procedures
- Configuration control process
- Approval authority process
- Impact analysis
- Requirements metrics
- Goal/question/metric
- Requirements size
- Requirements churn
- Defect per requirements
- Requirements defect backlog
- Traceability
- Requirements status
Software Requirements Training