0% found this document useful (0 votes)
462 views5 pages

Course: Software Engineering Principles and Practices (Code: 20CS44P) Week-6: Requirement Engineering & Modelling Session No. 01

The document discusses requirement engineering and modeling in software engineering. It defines requirements as conditions or capabilities needed to solve problems through software or systems. Requirement engineering is important as it ensures the correct problem is solved and there is mutual understanding between customers and developers about what the software will do. There are different types of requirements including business, user, and software functional and non-functional requirements. Requirements can come from various sources like stakeholders, users, domain experts, developers, past experiences, and testers to help define the full scope of what the software should do.

Uploaded by

Manjunatha Ok
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
462 views5 pages

Course: Software Engineering Principles and Practices (Code: 20CS44P) Week-6: Requirement Engineering & Modelling Session No. 01

The document discusses requirement engineering and modeling in software engineering. It defines requirements as conditions or capabilities needed to solve problems through software or systems. Requirement engineering is important as it ensures the correct problem is solved and there is mutual understanding between customers and developers about what the software will do. There are different types of requirements including business, user, and software functional and non-functional requirements. Requirements can come from various sources like stakeholders, users, domain experts, developers, past experiences, and testers to help define the full scope of what the software should do.

Uploaded by

Manjunatha Ok
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

Department of Collegiate and Technical Education Diploma in CS&E

Course : Software Engineering Principles and Practices


(Code : 20CS44P)
Week-6 : Requirement Engineering & Modelling
Session No. 01
6.1.1 Overview
 The process of collecting the software requirement from the client then
understand, evaluate and document it is called as requirement engineering.
 Requirement engineering constructs a bridge for design and construction.
 The goal of requirement engineering is to develop and maintain sophisticated
and descriptive ‘System Requirements Specification’ document.
 Requirements engineering provides the appropriate mechanism for
understanding what the customer wants, analysing need, assessing feasibility,
negotiating a reasonable solution, specifying the solution unambiguously,
validating the specification, and managing the requirements as they are
transformed into an operational system

What Is Requirement?
 Requirement is a condition or capability possessed by the software or system
component in order to solve a real world problem. The problems can be to
automate a part of a system, to correct shortcomings of an existing system, to
control a device, and so on. 
 The requirements for a system are the descriptions of what the system should
do — the services that it provides and the constraints on its operation.
 These requirements reflect the needs of customers for a system that serves a
certain purpose such as controlling a device, placing an order, or finding
information.
 Requirements convey the expectations of users from the software product.
 The requirements can be obvious or hidden, known or unknown, expected or
unexpected from client’s point of view.

Computer Science & Engineering


Department of Collegiate and Technical Education Diploma in CS&E

6.1.2 Importance
 Designing and building an elegant computer program that solves the wrong
problem serves no one’s needs. That’s why it’s important to understand what
the customer wants before you begin to design and build a computer-based
system.
 The requirement engineering provides a vision of the final software i.e. what
the software would do? This creates a sense of mutual understanding between
the customer and the software developer.
 Requirement engineering also helps in defining the scope of the software i.e.
what will be the functionalities of the final software.
 It also helps in perceiving the cost of the final software.
 It also helps in perceiving the schedule up to which the software will be
delivered to the customer.

6.1.3 Requirement types

Computer Science & Engineering


Department of Collegiate and Technical Education Diploma in CS&E

6.1.3.1 Business Requirements


 Business requirements specify the software’s business demand. The business
requirement identifies why the software is required, who will be the end-users
of the software, how the software will benefit its end users.
 The business requirement does specify the technicality of the software i.e. how
it should be implemented it focuses only on what software must do for them.

6.1.3.2 Users Requirements


 User requirements are statements, in a natural language plus diagrams, of what
services the system is expected to provide to system users and the constraints
under which it must operate.
 User requirements reflect the specific needs or expectations of the software's
customers.

6.1.3.3 Software Requirements


The software requirements specify what the software must do and it define how the
software is expected to perform. Type of software requirement are as follow:
 Functional: The functional requirements describe what the software must
deliver and what it must not. How the software must respond to incorrect
inputs. Thus, the functional requirement describes the behaviour of the
software.
 Non-Functional: The non-functional requirements describe the non-
behavioural aspects of the system such as its scalability, reliability,
performance, security, its portability, reusability and flexibility.
 Domain Requirements: The domain requirement describes the realm, area,
group for which the software is to be developed. Such as for college, office,
military, hospital, students, teachers, patients etc.

Computer Science & Engineering


Department of Collegiate and Technical Education Diploma in CS&E

6.1.4 Sources Of Requirements

The requirements specifications of the software provides a base for developing the
system and this is one the most crucial steps in SDLC. Although the stakeholder is the
ultimate source of the requirements, you cannot depend on the specification stated by
a single source.
 Stakeholders/Buyers
They are the persons responsible for accepting and executing the software.
They can be individuals, organizations, trusts or even the government or
public of a country.
 User/Beneficiaries
These are the users of the product for which the product is intended.
 Operators
They are the persons who work on the software to make the services of the
software available to its beneficiaries or the end users.
 Domain Experts
They are professionals with experience and expertise of the domain in which
the software provides its services, viz. insurance, financials, banking,
communication, data transfer, networking, etc. Domain experts unwind the
Computer Science & Engineering
Department of Collegiate and Technical Education Diploma in CS&E

hidden or unseen probable requirements or risks involved in product


development.
 Developer:
The software engineering responsible for developing the software to make it
provide the expected services. They are responsible for software design,
prototype development, and technical feasibility. They work closely with the
end-users, buyers, and application experts.
 Automated
In the new generation of information technology and software development
paradigm, many automated and semi-automated tools are available that allow
for the affirmation and management of the need for building the system. such
software also provides input. System/software requirements.
 Past Experience/Case Studies
An organization working in the similar or same domain may provide its past
experience or even documented case studies. This helps have a clearer picture
of the requirements, which may otherwise be left hidden.
 Connected People/Machine/Environment
People associated with software or environmental factors and IT domain may
give a lot of provide information about constraints involved in development,
development, its and environment implications on software.
 Tester
Testers are a good source of information about the user’s behaviour or the
predictive behaviour of the system’s condition. continuous contact with real
users for their input. In such cases, examiners may use their experiences and
analytical skills to provide input.

Computer Science & Engineering

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy