You are on page 1of 8

unt-2 SRE

e C m e n t EngineeringIs the pioeess of detinng, documentng andl manlaning the


e e n t s lt is a process of galhenme and detinng ser ice provided by the system.
u r e e n i s Fnyineenng Pocess consists of the tollow ing man activilies:

Rcquirements elicitation And Analysis


Requirements specitication
Requirements verification and valldation
Requirements management
Requirements Elicitation And Analysis:
I felated to the various ways used to gain knowledge about the project doiman and
cqirements. The various sources of domain knowledge include custOmers, business
n a l s , the eisting sofiware of same tvpe, standards and other stakeholders ol the
project
t ne
techniques used tor requirements elicitation include interviews, brainstOrming, lask
nal sis. Delph1 technique. prototvping. ete. Flieitation does not produce fornal nodels of
nc tequirements understood. Instead. it widens the domain knowledge of the analysl and
thushelps m providing nput to the next
stage.
Analysis ol
requirements starts w ith rcquirement elicitation. The
Identity inconsistencies. defects, onission, etc. We describe requirements
are analyzcd to

Telationships and also resolve contlicts itf any. requirements in terms of

Problems of Elicitation and


Analy sis

Getting all, and only. the right people involved.


Stakeholders ofien don't know what they want
Stakeholders express requirements in their terms.
Stakcholders may have conflicting
requirements.
Requirement change during the analysis process.
Organizational and political factors may influence system requirements.

Requirements specification:
This activity is used to produce formal software requirement models. All the
requirements
including the functional as well as the non-funetional
requirements and the consraints are
specified by these models in totality. During specification, more knowledge about the
problem may be required which can again trigger the elicitation process.
The models used at this
stage include FR
diagrams, data tlow diagrams(DFDS), function
decomposition diagrams(FDDs). data dictionaries, cle.
Requirements verification and validation:
Verification: It refers to the set of tasks that ensures that thc
a specific function. software correctly implements
Validation: It refers to a different set of tasks that ensures that the software that has been
built is traceable to customer
requirements.
TequCnCnls
Ihe
ale not vlidated, COnthe
uccCySIVe iequect deinition uld
laCs Ieullin nalol of moditicaon
Te man d ework
jpopagate to
sleps for
tls rncess
The meud
iequCens sloud be comlenl witli all
eqenents should confiet wilh cach otlier ihe olher Tcquir CIciticno 1wo
heiequnemens hould b omplele m every
The cnc.
Revicws, buddy requirements
clieck»,
should be pracheally achievable
makn lest caes, clc. are some ol he ncthods uscd lor
Requirements management: this.
Kequnement manapement is the
nulagreeng on the 1equirenent andprocess ol analy/ng. docnening,
trackmg.
sakeholders, This slage lakes cane ol controlng the comnuncation to selevantprioni/1ng
cDSUrcd hat the SRS ihe changung nature ol
is
mlilable
as
TCquiemenls specilicd by the cnd
requrenents. I1 should be
possible a to incorporale
as s0
changes n
SOlwareas per users al later slapes too. Beng able to mod1ly the
hporlnl pant oliequirements 1 systematic and controlled manner
a
the S an
extremely
requucnents engncenn process.
Requrenients Analysis
Requirenment aalysis
and
is
serutmise the gatheredsignilicant and essential activity alter
cheitation. We analyze, reline,
his
activity reviews all requirements to make consistent and
Alter the
completiom
requirements
of the
and may
provide graphicalunambiguous
a requiremcnts.
view of the entire
may mprove signilicantly. llee, we analysis, it
expected that the is system.
ponts conlusion and to
of nmay also use the
interaction with
of the
project understandability
understand which the customer to clarity
The various
requirements are more inmportant uhan others.
steps of
requirement analysis are shown in fig:

Steps of Requirements Analysis


Draw the Context
diagram

Develop Prototypes
(Optional)

Model the
requirements

Finalise the
requirements
wwsledqerm

In a
requirementS
document
these
slep is to
and the next
tinalize anaty7ed
requrements,

preseribed format.

Process
Elicitation and Analysis
Requirement
Definition and

Requirement Specification
Validation

Domain Prioritization

Process Understanding
entry

Conflict
Requirements resolution
Collection

Classification

Requirement Prioritization

Requirement prioritization is used for determining which requirements of a software product


should be ineluded in a ertain release. Requirements are also prioritized to minimize risk
during devclopment so that the most important or high risk requirements are implemented
first
Factors That Influence the Requirement Prioritization
. Benefit - This is the benefit that the company will gain if a specifie need is met first
and foremost. The beneit of implementing a certain demand in terms of capability.
quality. priICe. time, and supplies being used in the most efficient manner or achieving
corporaie objectives.
2 Penalty -The disadvantage or consequence offailing to comply with a requirement
is known as a penalty. Not priorilising key needs might have a ncgative impact on the
project and the final product. As a result. the penalty that project teams and
slakeholders must pay is a eritical deciding element in requirement prioritisation. Poor
clicnt satisfaction, waste, or over-cxpenditure of
projecet resources, as wcll as product
usability. can all be penalties.
Dran the contevt diagram: 1he context dugran is a sinple model that detines the
DOndarieS and nteraces of the proposed sslenms with the exlenal world. It identitics the
entles outsiude the proposed svstem that inleract with the system The context diagram of
studeni result
man.gement s stenm is piven belw

Administrator
Subject
information Marks entry
Student entry operator
information
entry Marks entry

Student result
management
system

Student performance
reports generated
Student infomation
reports generated Marksheet
generated

ii) Development of a Prototype (optional): One effective way lo find out what the
customer wants is to construct a prototype. something that looks and preferably acts as partof
the system they say they want.

We can use their fcedbach to nmodily the prototype until the customer is salislicd
continuously. Hence. the prototype helps the elient to visualize the proposcd system and
increase tlhe understanding of the requirements. When developers and users are not sure about
some of the clemenis. a prototype may help both the partices to take a final decision.

Some projects are developed for the general market. In such cases, the protolype slhould be
shown to some representative sample of the population of potential purchasers. Even though
a person who tries out a prototype may not buy
the linal syslem, but their feedback may allow
make the more attractive to others.
us to product
low cost. IIence it will always have
The prototype should be built quick ly and at a relatively
limitations and would not be acceptable in the final system. This is an optional activity.

various graphical
(iii) Model the requirenents: process usually consists of
This
functions, dala entilies, exlernal entities, and the relationships between
representalions of the
to tind incorrect, inconsistent, missing. and supertluous
them. The graphical view may help
models include the Data Flow diagram. Entity-Relationship diagram,
requiremcnts. Such
diagrams, cte.
Data Dictionaries. State-transition

Ater will have a better


modeling the requirements. we
(iv) Finalise the requirements:
belhav ior. The inconsistencies and ambiguities have been
understanding of the systen
of data amongst various modules has been analyzed.
identified and corrected. The flow
Now we
hetaton and activities have provided beller nsight into the system.
analyze
3fC
Su 3Risk he risk is whcther or not exe tei salue her
the need w i1 ychf the
ffi

ariely o1 TCasons why 1cqurcment


m.ty n o t be mel 111cid11iy prtthle b
the reqiifement rejy arjtajlitiCv. d7
understanding the requiTement. completne
s

applying the necd. ich one

4Dependencics d e p e n d e n c e Telaljunshp hetween tw nscerd1i


Cannot w ithout tlhe 1her A1cqi1ifecTHICTI
be conpleted or inplenmchied p opeily requirements prioriti s a t i n
is required hefore begnning 11
dependency map 1hhc tie>' imp'
prioitsingrequireIments.
il to
Time Sensitivity When comes
aru urgcnt cnugh that
the
mii Some rcquircmcnts
COnsidoration is usually thetime Iruc Jor projccis and g r d ,
1hhat

must be implemented before others. This i> c>pecially particular requiT CTDCT.
meeting
with seasonal demands. In such
situations.
must dcal
by a certain date or time is critical. i k . c l i h A d ot the
is thc
in prioritising rcquiremcnts
SRblity- A component that a r e not stablc o r whor
e o n s t a n t and static. Requirements
rcquirenent renmaining to m i n i m i s e recurrcne.
a r e given a lower priority
dctinition changes trequently
rework. and time and resource waste.
ln order for a busincss or its stakcholdeT> to fulf
Regulatory/Policy Compliance
-

be met. Polcy compliarnce


certain requirements must
Tegulatory o r policy compliance. and other coporat
laws. trade regulations.
refers to an organisation's adherence to
policy requirements in its day-to-day operations.

LitOfRequirement PrioritizationTechniques
Ranking
each one a different numerical
When you ordinal scale to order criteria. you assign
use an
mosi significant
number 1 can be allocated to the
aluc bascd on its relevance. The with n
n can be assigned to
the least important requirement,
requirement. while the nuinber several
Because it might be dificul to synchronize
being the total number of requirements. of demand should bc. this method works best
stakcholders' vicwpoints on what the priority
can alleviate this
witha stakeholder: nevertheless. taking an average
single
when dealing
problem to some extent.

Numerical Assignments (Grouping)


which
This strategy is built on categorizing multiple priority groups. cach of
nceds into
can be div ided into
something relevant to stakeholders. For example, requirements
represents indicate the importance of
moderate. and optional. In order to
three categories: eritical.
stakeholders can classify them as compulsory. extremely
impotant. moderately
requirements.
docs not matter.
important, not important, or

The MoScoW Method

SHOULD
instead ot numbers: \UST have.
This system employs four priority categories in a
have. COULD have. and WON"T
have. Stakeholders can er aluate requirements
the following
The abbrev 1ation stands for
collaborative manner usmg this technique.

MUST(Mandatory)

SHOULD (Of high priority)


OUDPetoned eeessat ut not
WOULD(an be npostpned
ed
Stakeholder decisaons and
and suggested lor
suge luture exeeuton)

reqremet pupriority are categorized


Bubbles Surt Techniques Cquirement
on
as shown abOVe.

ou take
twO
you
discover needs and
IKpeat this
that one com thenm to cach otlher to
Compare need prioritize them using bubble
sort. lr
otied prncess until
list of t i e
:
ake precedence over
the eract last need the other. you can swap them. You
has been alequately handled.
requiremenMs.
Hundred Dollar Method
The ed result is a

ietlhod
the most be used can
essential
divide anmong eriterii
era. Fach
auvtme several
stakcholders necd to
othetical democraucay
100 the stakeholder given lly
dollars to Sngle
requneme 100, which theyvu
is
ments. As
resuld, hypotl a
S

e single demand
a

n t determined by the distributing the pov


is
the a
stakeholder has the
or option of allocating all
can

na the points more


evenly.
requirements are ranked anouant of money devoted to it. Finally.,
The priority
of a
ns aceording to the number of
the total iS tahea,
and
siralegy shold only points earnca.
the same be utilized when
set of vou hve
more lunds to
their requirements
favorite
to avoid
respondents
small number ol a
criteria to priorilize
much has been requirement.
allotted and how intluencing the
IHowever. it can be diflicult indings by allocating
much is
remaining to dispose of usingto this
keep track of ho
method.
Use CaseDiagram
dclir
developmental. nmoe
The Unilicd Modeling Language (UMI) is a general-purpose. standard Way
that is intended to provide
a

language n the licld of soltware engineering


visualize the design of a systlem. actors
number of
performed by a

Thesystem is described as a of use


c a s e s that are
number
environment of the system
Actors constitute the entitics in the

what takes places within the system


.Usecases describe some part ol h e system

a spccilic way of using the system by performing


A Use Case is

functionality
Actors system
we need to first identity
to he pertormed
in the system,
use c a s e s
In o r d e r to identify
users

u s e r s are referrcd to as actors.


The system
of the system.
Actors model the prospective 'users"

An actor is a user type or category.


occurrence of that type.
actor acts as an
When an actor does something, the
with the intended system
a person or another system interacting
An actor may represent

Primary and Secondary Actor known as Primary actors.

directly (or in their daily work)


arc
Actors who use the system

with one or m o r e of the main tasks of the system


actors a r e associated
Primary first start
use cases, we
structure. ThuS when identilying
actors gov ern the system
Primary
with the primary actors.
the system are called secondary
Actors who are concerned
with supervising and maintaining
actors
actors, on
and hence are somewhat independent. Secondary
initiate a use case
Primary actors their own.
do not interact with the systenm
on
used by the system but they
the other hand, are

Use Cases
identificd the next step is to
definc the functionality of the systenm.
After the actors have been
use cascs.
This is done by specifying
Each actor will performa number of use cases
Actors are a major tool in finding use cases.

in the system.
initiated by an actor and specilies the
Each use case constitutes a complete course of events
interaction that takes placc between the actor and the systemn

performed by an actor and the system


A use case is a special sequence of related transactions
in dialogue.
The
collective use cases
Use Case should
pec specify
i f y all the existing ways of using the system.
Use case Relationships- Include
include
exist
behaviour of the is a
directed relationship
. . between
tIonship between two use cases which
is used to show
that

base) use case. included use case (the addition) is two


dse
inserted into the behaviour of the
including (the

The
include
To
relationship could be used:
simplify large
drge use
case
To by splitting it into several use cases,
extract common
parts of the
large use case ulV E Somebehaviours
cases.
A of two o
cases t be could have behaviours which might be detached into distinct smaller use
included some
* aback into the
c k into the base use case using the UML include relationship.
base use case u s s
The
purpose of this action is modularization of behaviours, making them more manageable.
Use Case
Relationships- Extend
in usually
ntar d relationship that specifies how and when the behaviour defined
entary (optional) extending use case can be inserted into the behaviour derined
extended use case.
A a e d use case is meaningful on its own, it is independent of the extending use case.

EXending use case typically defines optional behaviour that is not necessarily meaningful by itse

h e extension takes place at one or more extension points defined in the extended use case

EXtend relationship is shown as a dashed line with an open arrowhead directed from the extending
use case to the extended (base) use case

You might also like