week 3 requirements engineering processes
DESCRIPTION
Requirements Engineering. Week 3 Requirements Engineering Processes. Dr. Eman Al- Maghary. Requirements Engineering Processes. Processes organized set of activities which transforms inputs to outputs vehicle to communicate details of human activities - PowerPoint PPT PresentationTRANSCRIPT
1
Week 3
Requirements Engineering Processes
Dr. Eman Al-MagharyDr. Eman Al-Maghary
Requirements EngineeringRequirements Engineering
2
Requirements Engineering ProcessesProcesses
organized set of activities which transforms inputs to outputs
vehicle to communicate details of human activities
activities in a process may be enacted differently depending on the background of the people involved and the circumstances
3
Design Processes (Cont.)
Processes which involve Creativity Interactions between a wide range of
different people Engineering judgment Background knowledge and experience
Inputs to the processes are not usually precisely defined
Many possible outputs may be defined to satisfy the inputs
4
Design Processes (Cont.)
ExamplesProcess of writing a bookProcess of organizing a conferenceProcess of designing a processor chip
Requirements engineering process is a design process
5
Requirements Engineering Process Inputs
1. Existing system information: Information about the functionality of the systems to be replaced or other systems which interact with the system being specified (* see example)
2. Stakeholder needs: Description of what stakeholders need from the system to support their work.**
3. Organizational standards: Standards used in an organization regarding system development, practice, quality management, etc..***
4. Regulations: external regulations such as health and safety regulations that apply to the system, or copy rights, data protection…****
5. Domain information : General information about the application domain of the system*****
6
Requirements Engineering Process Output
1. Agrred Requirements2. System specification3. System models
6
7
Requirements Engineering Process Variability
RE processes range from very unstructured processes to systematic processes
Factors influencing variability Technical maturity: The technologies and methods
vary from one organization to another. Disciplinary involvement: Types of engineers and
managerial involved in RE from one organization to another.
Organizational culture: as the culture varies so is the RE process
Application domain: Different types of applications require different types of RE processes
8
Process ModelsA process model is a simplified description of a
processTypes of models
Coarse-grain activity models Sequencing mode Software life cycle model
Fine-grain activity models: more detailed process models
Role-action models: Show the role of different people involved in the process and the actions they take
Entity-relation models: Show process inputs, outputs and intermediate results
9
ERM for the RE process
9
Feasibilitystudy
Requirementselicitation and
analysisRequirementsspecification
Requirementsvalidation
Feasibilityreport
Systemmodels
User and systemrequirements
Requirementsdocument
10
Requirements Engineering Process - Coarse-grain Activity Model
Activities Requirements elicitation Requirements analysis and negotiation Requirements documentation Requirements validation
11
Requirements Engineering Process - Spiral Model
Different activities in requirements engineering are repeated until a decision is made to accept SRS
12
Requirements Engineering Process Actors
People involved in carrying out the processRole-action diagrams show actors associated
with different process activities
13
Human, Social and Organizational Factors - Stakeholders
May or may not have technical backgroundsHave other jobs and may not give priority to
requirements engineeringUsually have different goals - may not take
into account goals of other stakeholdersMay try to influence requirements to
maintain or increase political influence
14
Human, Social and Organizational Factors – Stakeholders (Cont.)
Stakeholders software engineers: Responsible for system
development system end-users: Responsible for using the system
after delivery
managers of system end-usersProject manager: responsible of planning and
estimating the prototype project external regulators who check to make sure system
meets legal requirements domain experts: Responsible for providing
information about the application domain and problems specific to that domain which is to be resolved
15
Requirements Engineering Process Support
Computer-Aided Software Engineering (CASE) tools support software design configuration management testing
CASE tools developed around the more understood portions of the lifecycle (not requirements engineering)
16
Requirements Engineering Process Support (Cont.)
Modeling and validation tools used to specify the systemSADT, IDEF, PSL/PSA, etc.
Management tools manage a database of requirements RTM, CMVS
17
Process ImprovementObjectives
Quality improvement Schedule reduction Resource reduction
18
Process Improvement (Cont.)
Planning questionsWhat are the problems with current process?What are the improvement goals?How can we introduce process improvements
to achieve these goals?How should improvements be controlled and
managed?
19
Process Improvement (Cont.)
Common requirements engineering process problemsLack of stakeholder involvementBusiness needs are not consideredLack of requirements managementLack of defined responsibilitiesStakeholder communication problems
20
Process MaturityThe extent to which an organization
has defined its processes actively controls these processesprovides systematic human and computer-
based support for themAn organization with defined processes is
more mature than one with informal processes
21
Process Maturity (Cont.)
Software Engineering Institute (SEI) Capability Maturity Model (CMM) five levels of maturityInitial - undisciplined (star personality)Repeatable - project oriented controlDefined - organization oriented controlManaged - measurements of both process
and product qualityOptimizing - continuous process
improvement strategy
22
Requirements Engineering Process Maturity Model
Three Levels (on next slidesLevel 1 - InitialLevel 2 - RepeatableLevel 3 - Defined
23
Requirements Engineering Process Maturity Model (Cont.)
Level 1 - Initial no defined process requirements engineering
process, it is left to individualsrequirements problems exist
excessive requirements volatility unsatisfied stakeholders large rework costs poor quality requirements documents over budget, missed schedule
24
Level 2 - Repeatable Organizations have basic cost and schedule
management procedure predictions in the same application areadefined standards for requirements documentsdefined policies/procedures for requirements
management some advanced requirements engineering toolsmore likely to have quality documents on time
Requirements Engineering Process Maturity Model (Cont.)
25
Level 3 - Defined Defined requirements engineering process
model based on good practices and techniquesActive process improvement program in placeMake objective assessments of the value of
new methods and techniques“ Have software process for both management
and engineering activities documented, standardized and integrated into software process for the organization”
Requirements Engineering Process Maturity Model (Cont.)