Please enable JavaScript.
Coggle requires JavaScript to display documents.
Software Requirements (Process (Requirement Elicitation Process
…
Software Requirements
Process
Feasibility Study
- Whether the desired system and its functionality are feasible to develop based on current software and hardware technologies
Requirement Gathering
- Communicate with users -> what the software provide and which features the software include
Software Requirement Validation
- Checks the requirements for realism, consistency and completeness
Software Requirement Specification
- Defines how the system works, what does it provide.
Requirement Elicitation Process
Requirement Gathering --> Requirement Organisation --> Negotiation & Discussion --> Requirement Specification
-
Organizing requirements
- The developers prioritize and arrange the requirements in order of importance, urgency and convenience.
Negotiation & discussion
- To removing conflicts between developers and stakeholders
Documentation
- All formal & informal, functional & non-functional
Techniques
Interviews
- Strong medium to collect requirements
-
Questionnaires
- A document with some questions for stakeholders.
Task analysis
- Team may analyze the operation for new system is required.
Domain analysis
- Analyze general and specific requirements
Brainstorming
- Debate to record stakeholders inputs for further requirements analysis
Prototyping
- Building user interface without adding detail functionality for user to interpret the features of intended software product
Observation
- Team observe the actual working of the existing installed systems
Software Elicitation and Analysis
- These help you understand the system to be specified.
Domain Analysis
- Is the process of analyzing related software systems in a domain to find their common and variable parts
Techniques
- DARE: Domain Analysis and Reuse Environment
- Feature-Oriented Domain Analysis
- IDEF0 for Domain Analysis
- Model Oriented Domain Analysis and Engineering
Requirements Elicitation and Analysis
- Is the practice of collecting the requirements of a system from users, custormers and other stakeholders.
Requirements Discovery
- This is the process of interacting with stakeholders of the system to discover their requirements.
Requirements classification and organizaion
- This activity takes the unstructured collection of requirements, groups related requirements, and organizes them into cohenrent clusters
Requirements prioritization and negotiation
- This activity is concerned with prioritizing requirements and finding and resolving requirements conflicts through negotiation
Requirements specification
- The requirements are documented and input into the next round of the spiral
-
Software requirement document
- Is an official statement of what system deveopers should implement.
Structure
- Preface
- Introduction
- Glossary
- User requirements definition
- System architecture
- System requirements specification
- System models
- System evolution
- Appendices
- Index
Requirement specification
- Is the process of writing down the user and system requirements in a requirements document
Ways of writing a specification
- Natural language sentences
- Structured natural language
- Design description languages
- Graphical notations
- Mathematical specifications
System engineering processes
Requirements validation
- Is the process of checking that requirements actually define the system that the customer really wants
Types
- Validity checks:
- Consistency checks: Conflicts
- Completeness checks: All function and the constraints
- Realism checks: Can be implemented
- Verifiability: Reduce the potential for duspute between customer and contractor
Techniques
- Requirements reviews:
- Prototyping
- Test-case generation