0% found this document useful (0 votes)
36 views15 pages

Chapter 1

Uploaded by

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

Chapter 1

Uploaded by

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

SOFTWARE REQUIREMENS

ENGINEERING

JIMMA UNIVERSITY

JIMMA INSTITUTE OF TECHNOLOGY

FACULTY OF COMPUTING AND INFORMATICS

CHAPTER ONE

INTRODUCTION TO REQUIREMENTS ENGINEERING


Topics we will cover
2

 What is requirements engineering?

 what are requirements?

 The requirements engineer

 Requirements engineer roles

 Roles of the customer in requirement engineering


What is Requirement Engineering

 Requirements engineering is the process of defining,

documenting and maintaining requirements in the


engineering design process.
 Requirements engineering is the branch of software

engineering concerned with the real-world goals for,


functions of, and constraints on software systems.
 Generally, requirements engineering is a process of

determining what is to be produced in a software


system.
The Focus Requirements Engineering

 It focuses on:
 Assessing if the system is useful to the business
(feasibility study),
 Discovering requirements (elicitation and analysis),

 Converting these requirements into some standard


format (specification), and
 Checking that the requirements define the system that
the customer wants (validation).
 In practice, requirements engineering isn’t sequential
process, it’s an iterative process in which activities are
interleaved.
What is a Requirement?
5
 Requirements are descriptions of how a software product
should perform.
 The widely cited IEEE 610.12- 1990 standard defines a
requirement as:

1. A condition or capability needed by a user to solve a


problem or achieve an objective

2. A condition or capability that must be met or possessed by a


system or system component to satisfy a contract, standard,
specification, or other formally imposed documents.
Software Requirements

 Therefore, requirements include not only user needs but


also those arising from general organizational, government
and industry standards.
 Clearly, a requirement is a collection of needs arising from
the user and various other stakeholders(general
organization, community, government bodies and industry
standards), all of which must be met.
 The primary measure of success of a software system
is the degree to which it meets the purpose for
which it was intended.
Software requirements
7

 Software requirements may be:

 Abstract statements of services


 Part of the bid of contract
 The contract itself
 Part of the technical document, which describes a
product
Defining Requirements

 Software development starts with defining and gathering


business requirements.
 The best way of defining software requirements is just
asking the following questions.
 Who are the users, developers, and stockholders?

 What does the system do?

 What are the main features?

 Why is the system needed?

 When do the users need/or want the solution?

 How will the system work?

 How many users will there be?


Why do requirements matter?
9

Because:
Requirements are crucial to every project.
Every project succeeds or fails on the quality of its
requirements.
Requirements set the scope of all subsequent work and tell
the project team what the users want.
 Without good requirements, projects fail, are late, come in
over budget, or produce systems that are never used..
Requirement issues should be fixed early, before design.
requirements errors tend to be deeply embedded in the
design and are difficult to remedy afterwards.
What do you think are the challenges
to requirement engineering?

Discussion
Challenges to Requirements

 There are a number of inherent difficulties in RE process.

 Stakeholders may be numerous and distributed.


 Stakeholder's goals may vary and conflicting.
 So Many “Requirements”
 So many sources of requirements(stakeholders,
documents, Existing Systems, Application Domain )
Requirements Engineer

 A person who is concerned with establishing and


managing requirements.
 To tackle the challenges the requirements engineer
should have competency in the following areas:
 Requirements engineering
 Critical reasoning
 Innovation
 Attention to Detail
 Communication
 Interpersonal
Requirements Engineer Roles

 Requirements engineers are responsible for the analysis,

documentation, coordination and management of


requirements regarding new software projects.
 Improving system quality by identifying issues and
common patterns, and developing standard operating
procedures.
 Enhancing applications by identifying opportunities for
improvement, making recommendations and designing
and implementing systems.
Roles of the Customer in Requirement
Engineering
 Anyone who derives direct or indirect benefit from a
product/software is a customer.
 Customers :

 Helping the requirements engineer understand what they need.


 Helping the requirements engineer understand what they don’t
want.
 Providing domain knowledge when necessary and possible.
 Sticking to all agreements
Any Question?

You might also like