In eduladder you can Ask,Answer,Listen,Earn and Download Questions and Question papers.
Watch related videos of your favorite subject.
Connect with students from different parts of the world.
Apply or Post Jobs, Courses ,Internships and Volunteering opportunity. For FREE
See Our team
Wondering how we keep quality?
Got unsolved questions? Ask Questions
You are here:Open notes-->VTU-->Software-Engineering-10IS51-unit-3
Software Engineering [10IS51] unit-3
UNIT -3 REQUIREMENTS
Requirement - Descriptions and specifications of a system.
? The process of establishing the services that the customer requires from a system
and the constraints under which it operates and is developed.
? The requirements themselves are the descriptions of the system services and
constraints that are generated during the requirements engineering process.
Requirement : A requirement may range from a high-level abstract statement of a
service or of a system constraint to a detailed mathematical functional specification.
Requirements serve a dual function :
? May be the basis for a bid for a contract - therefore must be open to interpretation
? May be the basis for the contract itself - therefore must be defined in detail
? Both these statements may be called requirements
Functional and non-functional requirements
Functional requirements : Statements of services the system should provide, how the
system should react to particular inputs and how the system should behave in
Non-functional requirements : Constraints on the services or functions offered by the
system such as timing constraints, constraints on the development process, standards,
Domain requirements : Requirements that come from the application domain of the
system and that reflect characteristics of that domain.
? They Describe functionality or system services
? Depend on the type of software, expected users and the type of system where the
software is used
? Functional user requirements may be high-level statements of what the system
should do but functional system requirements should describe the system services
Examples (The requirements can be defined as follows)
? The user shall be able to search either all of the initial set of databases or select
a subset from it.
? The system shall provide appropriate viewers for the user to read documents in
the document store.
? Every order shall be allocated a unique identifier (ORDER_ID) which the user
shall be able to copy to the accountís permanent storage area.
? They define system properties and constraints like reliability, response time
and storage requirements.
? Constraints are I/O device capability, system representations, etc.
? Process requirements may also be specified mandating
a particular CASE system, programming language or development method
Non-functional requirements may be more critical than functional requirements. If
these are not met, the system becomes useless.
1. Product requirements
These requirements specify that the delivered product must behave in a particular
way e.g. execution speed, reliability, etc.
2. Organizational requirements
? Requirements which are a consequence of organizational policies and procedures
process standards used, implementation requirements, etc.
3. External requirements
? Requirements which arise from factors which are external to the system and its
development process e.g. interoperability requirements, legislative requirements,
Types of requirement
1. User requirements
? Statements in natural language plus diagrams of the services the system provides
operational constraints. Written for customers
2. System requirements
? A structured document setting out detailed descriptions of the system services.
as a contract between client and contractor
3. Software specification
? A detailed software description which can serve as a basis for a design
or implementation. These set of requirements are written for developers
? Should describe functional and non-functional requirements so that they are
understandable by system users who donít have detailed technical knowledge
? User requirements are defined using natural language, tables and diagrams
Some of the problems with natural language
1. Lack of clarity
? Precision is difficult without making the document difficult to read
2. Requirements confusion
? Functional and non-functional requirements tend to be mixed-up
3. Requirements amalgamation
? Several different requirements may be expressed together
? More detailed specifications of user requirements
? Serve as a basis for designing the system
? May be used as part of the system contract
? System requirements may be expressed using system models
Most systems must operate with other systems and the operating interfaces must be
specified as part of the requirements
Three types of interface may have to be defined
? Procedural interfaces
? Data structures that are exchanged
? Data representations
Formal notations are an effective technique for interface specification
The requirements document
The requirements document is the official statement of what is required of the system
developers. It should include both a definition and a specification of requirements
The requirements document is NOT a design document. As far as possible, it should
set of WHAT the system should do rather than HOW it should do it.
Requirements document requirements ? The requirement doc should have the
? Specify external system behaviour
? Specify implementation constraints
? Easy to change
? Serve as reference tool for maintenance
? Record forethought about the life cycle of the
system i.e. predict changes
? Characterise responses to unexpected events
Requirements document structure - These are the various contents that the req doc
should possess :
? User requirements definition
? System architecture
? System requirements specification
? System models
? System evolution
Requirements engineering processes
The processes used for RE vary widely depending on the application domain, the
involved and the organization developing the requirements
These are some of the generic activities common to all processes
? Requirements elicitation
? Requirements analysis
? Requirements validation
? Requirements management
A feasibility study decides whether or not the proposed system is worthwhile
It is a short focused study that checks
? If the system contributes to organisational objectives
? If the system can be engineered using current technology and within budget
? If the system can be integrated with other systems that are used
Elicitation and analysis
? Sometimes called requirements elicitation or requirements discovery
? Involves technical staff working with customers to find out about the application
domain, the services that the system should provide and the systemís operational
? May involve end-users, managers, engineers involved in maintenance, domain
experts, trade unions, etc. These are called stakeholders
? Concerned with demonstrating that the requirements define the system that the
customer really wants
? Requirements error costs are high so validation is very important
Fixing a requirements error after delivery may cost up to 100 times the cost of
an implementation error
? Requirements management is the process of managing changing requirements
during the requirements engineering process and system development
? Requirements are inevitably incomplete and inconsistent
New requirements emerge during the process as business needs change and a
understanding of the system is developed
Different viewpoints have different requirements and these are often contradictory
? The priority of requirements from different viewpoints changes during the
? System customers may specify requirements from a business perspective that
conflict with end-user requirements
? The business and technical environment of the system changes during its