SlideShare a Scribd company logo
1 of 45
1
Requirements Engineering for Agile
Methods
2
Introduction
• Agile methods are a family of software development processes
• Their aim is to deliver products faster, with high quality, and satisfy
customer needs through the application of the principles of lean
production to software development
3
Introduction
• Agile methods have become popular during the last few
years
• Lean production has been conceived during the ’50s in
Toyota. It involves several practices that are now part of
most manufacturing processes, such as just-in-time
development, total quality management, and continuous
process improvement
4
Introduction
• The principle of lean production is the constant identification and
removal of waste, that is, anything that does not add value for the
customer to the final product
5
Introduction
• Agile methods focus on
• Delivering value for the customer
• Ensuring that the customer understand such value and be satisfied by the
project
6
Introduction
• Agile methods pose a lot of emphasis in producing and delivering to
the customer only those features that are useful
• Producing anything that is not required is considered a mistake
7
Introduction
• Adding a feature that is not needed not only consumes effort without
adding customer value but also creates extra code, which may contain
errors and make code longer and more complex to maintain, to
correct and improve
8
Introduction
• The waste includes general architectures that are used only partially
or reusable components with functionalities that are likely to be
never used
9
Introduction
• To achieve such elimination of waste, agile methods claim to be
• Adaptive rather than predictive
• People-oriented rather than process-oriented
10
Introduction
• A close collaboration between the development team and the
customer is a must, so that
• Requirements are fully identified and correctly understood
• Final products reflects what the customer needs, no more no less
11
Agile Methods
• eXtreme Programming
• Scrum
• Dynamic Systems Development Method
• Adaptive Software Development
• The Crystal Family
12
Agile Manifesto
• Individuals and Interactions over Process and Tools
• Customer Collaboration over Contracts
• Working Software over Documentation
• Responding to Change over Planning
13
Common Practices and Behaviors
• Adaptability
• Incremental Development
• Frequent Releases
• Requirements Prioritization before every iteration
• High Customer Involvement
14
RE in Agile Methods
• In agile methods, the whole development team is involved in
requirements elicitation and management, while in traditional
approaches often only a subset of the development team is involved
15
RE in Agile Methods
• This approach is feasible only if the size of the problem is limited, as
only a small development team can interact directly with the
customer
• If the problem is bigger, the team can use other techniques for
eliciting and managing requirements
16
RE in Agile Methods
• The understanding of requirements variability has a strong impact on
the ability of agile methods to be “lean’
17
Focus of Agile Methods in RE
• The Customer
• Waste in Requirements
• Requirements Evolution
• Non-functional Requirements
18
Customer in RE of Agile Methods
• Customers/stakeholders assume a paramount role in
requirements engineering in agile methods
• The interaction between the development team and
stakeholders is complex due to the different perceptions of
the problem that the stakeholders have
19
Customer in RE of Agile Methods
• In agile methods, the problem of multiple stakeholders is
solved reducing their number to one, who represent all
stakeholders in the project
• The customer should be a domain expert and able to make
important decisions such as accepting the product, prioritize
requirements, etc.
20
Customer-on-Site Requirements
• Availability
• The customer has to be always available to answer questions coming from the
development team. Any delay in the answer delays the development of the
product
21
Customer-on-Site Requirements
• Complete knowledge
• The customer is the representative for all the stakeholders. Therefore, he is
able to answer all questions, since he is the domain expert and knows how
the application should work and input/output data required. Again, this is
possible if the size of the project is limited
22
Customer-on-Site Requirements
• Decision power
• The customer is able to make final decisions and commitments. Changes in
requirements, acceptance of the features implemented, etc., can be decided
directly by the customer, allowing a fast decision making process
23
Waste in Requirements
• Identification and reduction of waste from requirements assume a
paramount role to avoid the creation of waste later in the
development process
• In lean practices, the reduction of waste is extremely important
because waste always generates more waste
24
Waste in Requirements
• Waste in requirements includes both wrong and useless
requirements
• All the waste generated is a cost for the customer both
directly and indirectly
• Such costs are likely to generate further waste inside the
customer organization due to the reduced amount of money
available to its core business and reduced revenues
25
Impact of Requirements Waste on Development
Process
• More source code to write and higher cost
• Increased complexity of the source code
• Delayed delivery of the final version of the application with all
functionalities
• More complex and costly maintenance
26
Impact of Requirements Waste on Development
Process
• More resources required by the application, including:
memory usage, processing power, network usage, etc
• Increased complexity of the application from the point of
view of the customer (e.g., more complex user interface,
more effort to learn how to use the application, etc)
27
Impact of Requirements Waste on Development
Process
• Savings produced by the application in the production process of the
customer are delayed
28
Techniques to Focus on Interaction with Customer
• The whole development team collects requirements from
the customer
• Usage of documents to share knowledge is reduced to a minimum
• Requirements are collected using a common language
• Requirements are collected using the language of the customer,
not any formal language
29
Techniques to Focus on Interaction with Customer
• Direct interaction between the development team and the
customer
• Reduces both the number of documents required and the
probability of misunderstanding due to unnecessary
communication layers
• Requirements splitting
• If the development team considers a requirement too complex,
this technique helps the customer to split it in simpler ones
30
Waste Reduction Techniques
• In order to reduce the waste created by the over specification of
requirements, following techniques are used
• Requirements prioritization
• Incremental releases
31
Prioritization Activities
• The development team estimates the time required to
implement each functionality. If the effort required is too
high, the requirement is split into simpler ones that can be
implemented with less effort
• The customer specifies business priorities for each
functionality
32
Prioritization Activities
• According to the business priorities, the development team assign a
risk factor to the functionalities
• The customer and the development team identify the functionalities
to implement in the iteration
33
Requirements Evolution
• Agile methods assume that is very hard to elicit all the
requirements from the user upfront, at the beginning of a
development project
• They also assume that such requirements evolve in time as
the customer may change its mind or the overall technical
and socio-economical environment may evolve
34
Requirements Evolution
• Agile companies are aware that changes are inevitable and they
include the management of variability into the development process
35
Requirements Evolution
• Requirements are not well known at the beginning of the project
• Requirements change
• Making changes is not expensive
36
Requirements Evolution
• Agile methods assume that the cost of introducing changes in a
product is nearly constant over the time, but this hypothesis is not
true in every context
37
Requirements Evolution
• Usually, the cost of implementing changes grows
exponentially over the time
• On the other hand, if development phases are grouped
together in very short iterations and binding decisions are
taken as late as possible, the growing of the cost is limited
38
Requirements Evolution
• In order to manage requirements evolution, agile methods
use variable scope-variable price contract. This means that
the features really implemented into the system and its cost
evolve as well
• Requirements are negotiated throughout the project
between the customer the development team
39
Managing Variability
• Decoupling requirements
• Requirements elicitation and prioritization
40
Managing Variability
• Decoupling requirements
• Requirements have to be as independent as possible in order to clearly
identify what to implement and make the order of their implementation
irrelevant
41
Managing Variability
• Requirements elicitation and prioritization
• At the beginning of every iteration, there is a requirements
collection and prioritization activity. During that, new
requirements are identified and prioritized. This approach helps to
identify the most important features inside the ongoing project.
42
Managing Variability
• Features are implemented mainly according to their prioritization, not
their functional dependence
43
Non-Functional Requirements
• Agile methods do not provide any widely accepted technique
for eliciting and managing non-functional requirements
• Such requirements are collected implicitly during the
requirements collection activity. The need of specifying non-
functional requirements is less important than in other
context due to the continuous interaction with the customer
44
Roles and Responsibilities
• Customer
• Developers
• Managers
45
Tools for Requirements Management in Agile
Methods
• Paper, pencil, and pin boards
• UML modeling tools
• Requirements negotiation tools
• Instant messaging tools
• Project management tools

More Related Content

What's hot

Software design principles
Software design principlesSoftware design principles
Software design principlesRitesh Singh
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Sudarshan Dhondaley
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project ManagementReetesh Gupta
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Er. Shiva K. Shrestha
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineeringRa'Fat Al-Msie'deen
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tacticsPreeti Mishra
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design pptfarazimlak
 
Agile software development
Agile software developmentAgile software development
Agile software developmentRajesh Piryani
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Developmentdcsunu
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 

What's hot (20)

Software design principles
Software design principlesSoftware design principles
Software design principles
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2
 
Introduction to Software Project Management
Introduction to Software Project ManagementIntroduction to Software Project Management
Introduction to Software Project Management
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Requirements Validation
Requirements ValidationRequirements Validation
Requirements Validation
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design ppt
 
Extreme Programming ppt
Extreme Programming pptExtreme Programming ppt
Extreme Programming ppt
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Requirements Engineering
Requirements EngineeringRequirements Engineering
Requirements Engineering
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Feature Driven Development
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Agile Methodology ppt
Agile Methodology pptAgile Methodology ppt
Agile Methodology ppt
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Software design
Software designSoftware design
Software design
 

Similar to Requirements engineering for agile methods

Agile Method requirement engineering.ppt
Agile Method requirement engineering.pptAgile Method requirement engineering.ppt
Agile Method requirement engineering.pptubaidullah75790
 
Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementationTerry Bunio
 
CSCM Chapter 10 lean and agile
CSCM Chapter 10 lean and agileCSCM Chapter 10 lean and agile
CSCM Chapter 10 lean and agileEst
 
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...AgileNetwork
 
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.pptSoftware_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.pptzainab278016
 
Microsoft Dynamics AX Implementation Stabilization Case Studies
Microsoft Dynamics AX Implementation Stabilization Case StudiesMicrosoft Dynamics AX Implementation Stabilization Case Studies
Microsoft Dynamics AX Implementation Stabilization Case Studiesmeritweb
 
Different approaches for different scopes: How to tackle a medium-sized Dr...
Different approaches for different scopes: How to tackle a medium-sized Dr...Different approaches for different scopes: How to tackle a medium-sized Dr...
Different approaches for different scopes: How to tackle a medium-sized Dr...Symetris
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimationssuserb7c8b8
 
Software Development Life Cycle - SDLC
Software Development Life Cycle - SDLCSoftware Development Life Cycle - SDLC
Software Development Life Cycle - SDLCShwetha-BA
 
Eliminate Bottlenecks in Software Development & Delivery
Eliminate Bottlenecks in Software Development & DeliveryEliminate Bottlenecks in Software Development & Delivery
Eliminate Bottlenecks in Software Development & DeliveryMicro Focus
 
lean construction and integrated project delivery
lean construction and integrated project delivery lean construction and integrated project delivery
lean construction and integrated project delivery Mahendra Bhuva
 
product development process chapter 11
product development process chapter 11product development process chapter 11
product development process chapter 11atufa abrar
 
Development methodologies
Development methodologiesDevelopment methodologies
Development methodologiesmissstevenson01
 
2 project management essentials
2   project management essentials2   project management essentials
2 project management essentialsShahid Riaz
 
INAAU Project Management for Telecommunications Professionals
INAAU Project Management for Telecommunications ProfessionalsINAAU Project Management for Telecommunications Professionals
INAAU Project Management for Telecommunications ProfessionalsRory McKenna
 
Software Development Methodologies Pros, Cons, & Use Cases.pdf
Software Development Methodologies Pros, Cons, & Use Cases.pdfSoftware Development Methodologies Pros, Cons, & Use Cases.pdf
Software Development Methodologies Pros, Cons, & Use Cases.pdfPolyxer Systems
 

Similar to Requirements engineering for agile methods (20)

Agile Method requirement engineering.ppt
Agile Method requirement engineering.pptAgile Method requirement engineering.ppt
Agile Method requirement engineering.ppt
 
Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementation
 
CSCM Chapter 10 lean and agile
CSCM Chapter 10 lean and agileCSCM Chapter 10 lean and agile
CSCM Chapter 10 lean and agile
 
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
 
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.pptSoftware_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
Software_Requirement_Engineering_-_CS708_Power_Point_Slides__lecture-07.ppt
 
Microsoft Dynamics AX Implementation Stabilization Case Studies
Microsoft Dynamics AX Implementation Stabilization Case StudiesMicrosoft Dynamics AX Implementation Stabilization Case Studies
Microsoft Dynamics AX Implementation Stabilization Case Studies
 
Agile 101
Agile 101Agile 101
Agile 101
 
Different approaches for different scopes: How to tackle a medium-sized Dr...
Different approaches for different scopes: How to tackle a medium-sized Dr...Different approaches for different scopes: How to tackle a medium-sized Dr...
Different approaches for different scopes: How to tackle a medium-sized Dr...
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Sdec10 lean AMS
Sdec10 lean AMSSdec10 lean AMS
Sdec10 lean AMS
 
Project Life Cycle and Effort Estimation
Project Life Cycle andEffort EstimationProject Life Cycle andEffort Estimation
Project Life Cycle and Effort Estimation
 
Software Development Life Cycle - SDLC
Software Development Life Cycle - SDLCSoftware Development Life Cycle - SDLC
Software Development Life Cycle - SDLC
 
Eliminate Bottlenecks in Software Development & Delivery
Eliminate Bottlenecks in Software Development & DeliveryEliminate Bottlenecks in Software Development & Delivery
Eliminate Bottlenecks in Software Development & Delivery
 
lean construction and integrated project delivery
lean construction and integrated project delivery lean construction and integrated project delivery
lean construction and integrated project delivery
 
Module-02.pptx
Module-02.pptxModule-02.pptx
Module-02.pptx
 
product development process chapter 11
product development process chapter 11product development process chapter 11
product development process chapter 11
 
Development methodologies
Development methodologiesDevelopment methodologies
Development methodologies
 
2 project management essentials
2   project management essentials2   project management essentials
2 project management essentials
 
INAAU Project Management for Telecommunications Professionals
INAAU Project Management for Telecommunications ProfessionalsINAAU Project Management for Telecommunications Professionals
INAAU Project Management for Telecommunications Professionals
 
Software Development Methodologies Pros, Cons, & Use Cases.pdf
Software Development Methodologies Pros, Cons, & Use Cases.pdfSoftware Development Methodologies Pros, Cons, & Use Cases.pdf
Software Development Methodologies Pros, Cons, & Use Cases.pdf
 

More from Syed Zaid Irshad

More from Syed Zaid Irshad (20)

Operating System.pdf
Operating System.pdfOperating System.pdf
Operating System.pdf
 
DBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_SolutionDBMS_Lab_Manual_&_Solution
DBMS_Lab_Manual_&_Solution
 
Data Structure and Algorithms.pptx
Data Structure and Algorithms.pptxData Structure and Algorithms.pptx
Data Structure and Algorithms.pptx
 
Design and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptxDesign and Analysis of Algorithms.pptx
Design and Analysis of Algorithms.pptx
 
Professional Issues in Computing
Professional Issues in ComputingProfessional Issues in Computing
Professional Issues in Computing
 
Reduce course notes class xi
Reduce course notes class xiReduce course notes class xi
Reduce course notes class xi
 
Reduce course notes class xii
Reduce course notes class xiiReduce course notes class xii
Reduce course notes class xii
 
Introduction to Database
Introduction to DatabaseIntroduction to Database
Introduction to Database
 
C Language
C LanguageC Language
C Language
 
Flowchart
FlowchartFlowchart
Flowchart
 
Algorithm Pseudo
Algorithm PseudoAlgorithm Pseudo
Algorithm Pseudo
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
ICS 2nd Year Book Introduction
ICS 2nd Year Book IntroductionICS 2nd Year Book Introduction
ICS 2nd Year Book Introduction
 
Security, Copyright and the Law
Security, Copyright and the LawSecurity, Copyright and the Law
Security, Copyright and the Law
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 
Data Communication
Data CommunicationData Communication
Data Communication
 
Information Networks
Information NetworksInformation Networks
Information Networks
 
Basic Concept of Information Technology
Basic Concept of Information TechnologyBasic Concept of Information Technology
Basic Concept of Information Technology
 
Introduction to ICS 1st Year Book
Introduction to ICS 1st Year BookIntroduction to ICS 1st Year Book
Introduction to ICS 1st Year Book
 
Using the set operators
Using the set operatorsUsing the set operators
Using the set operators
 

Recently uploaded

Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Call Girls Mumbai
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueBhangaleSonal
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...Amil baba
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdfKamal Acharya
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesMayuraD1
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxmaisarahman1
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayEpec Engineered Technologies
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"mphochane1998
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdfAldoGarca30
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadhamedmustafa094
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapRishantSharmaFr
 
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEselvakumar948
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 

Recently uploaded (20)

Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 

Requirements engineering for agile methods

  • 2. 2 Introduction • Agile methods are a family of software development processes • Their aim is to deliver products faster, with high quality, and satisfy customer needs through the application of the principles of lean production to software development
  • 3. 3 Introduction • Agile methods have become popular during the last few years • Lean production has been conceived during the ’50s in Toyota. It involves several practices that are now part of most manufacturing processes, such as just-in-time development, total quality management, and continuous process improvement
  • 4. 4 Introduction • The principle of lean production is the constant identification and removal of waste, that is, anything that does not add value for the customer to the final product
  • 5. 5 Introduction • Agile methods focus on • Delivering value for the customer • Ensuring that the customer understand such value and be satisfied by the project
  • 6. 6 Introduction • Agile methods pose a lot of emphasis in producing and delivering to the customer only those features that are useful • Producing anything that is not required is considered a mistake
  • 7. 7 Introduction • Adding a feature that is not needed not only consumes effort without adding customer value but also creates extra code, which may contain errors and make code longer and more complex to maintain, to correct and improve
  • 8. 8 Introduction • The waste includes general architectures that are used only partially or reusable components with functionalities that are likely to be never used
  • 9. 9 Introduction • To achieve such elimination of waste, agile methods claim to be • Adaptive rather than predictive • People-oriented rather than process-oriented
  • 10. 10 Introduction • A close collaboration between the development team and the customer is a must, so that • Requirements are fully identified and correctly understood • Final products reflects what the customer needs, no more no less
  • 11. 11 Agile Methods • eXtreme Programming • Scrum • Dynamic Systems Development Method • Adaptive Software Development • The Crystal Family
  • 12. 12 Agile Manifesto • Individuals and Interactions over Process and Tools • Customer Collaboration over Contracts • Working Software over Documentation • Responding to Change over Planning
  • 13. 13 Common Practices and Behaviors • Adaptability • Incremental Development • Frequent Releases • Requirements Prioritization before every iteration • High Customer Involvement
  • 14. 14 RE in Agile Methods • In agile methods, the whole development team is involved in requirements elicitation and management, while in traditional approaches often only a subset of the development team is involved
  • 15. 15 RE in Agile Methods • This approach is feasible only if the size of the problem is limited, as only a small development team can interact directly with the customer • If the problem is bigger, the team can use other techniques for eliciting and managing requirements
  • 16. 16 RE in Agile Methods • The understanding of requirements variability has a strong impact on the ability of agile methods to be “lean’
  • 17. 17 Focus of Agile Methods in RE • The Customer • Waste in Requirements • Requirements Evolution • Non-functional Requirements
  • 18. 18 Customer in RE of Agile Methods • Customers/stakeholders assume a paramount role in requirements engineering in agile methods • The interaction between the development team and stakeholders is complex due to the different perceptions of the problem that the stakeholders have
  • 19. 19 Customer in RE of Agile Methods • In agile methods, the problem of multiple stakeholders is solved reducing their number to one, who represent all stakeholders in the project • The customer should be a domain expert and able to make important decisions such as accepting the product, prioritize requirements, etc.
  • 20. 20 Customer-on-Site Requirements • Availability • The customer has to be always available to answer questions coming from the development team. Any delay in the answer delays the development of the product
  • 21. 21 Customer-on-Site Requirements • Complete knowledge • The customer is the representative for all the stakeholders. Therefore, he is able to answer all questions, since he is the domain expert and knows how the application should work and input/output data required. Again, this is possible if the size of the project is limited
  • 22. 22 Customer-on-Site Requirements • Decision power • The customer is able to make final decisions and commitments. Changes in requirements, acceptance of the features implemented, etc., can be decided directly by the customer, allowing a fast decision making process
  • 23. 23 Waste in Requirements • Identification and reduction of waste from requirements assume a paramount role to avoid the creation of waste later in the development process • In lean practices, the reduction of waste is extremely important because waste always generates more waste
  • 24. 24 Waste in Requirements • Waste in requirements includes both wrong and useless requirements • All the waste generated is a cost for the customer both directly and indirectly • Such costs are likely to generate further waste inside the customer organization due to the reduced amount of money available to its core business and reduced revenues
  • 25. 25 Impact of Requirements Waste on Development Process • More source code to write and higher cost • Increased complexity of the source code • Delayed delivery of the final version of the application with all functionalities • More complex and costly maintenance
  • 26. 26 Impact of Requirements Waste on Development Process • More resources required by the application, including: memory usage, processing power, network usage, etc • Increased complexity of the application from the point of view of the customer (e.g., more complex user interface, more effort to learn how to use the application, etc)
  • 27. 27 Impact of Requirements Waste on Development Process • Savings produced by the application in the production process of the customer are delayed
  • 28. 28 Techniques to Focus on Interaction with Customer • The whole development team collects requirements from the customer • Usage of documents to share knowledge is reduced to a minimum • Requirements are collected using a common language • Requirements are collected using the language of the customer, not any formal language
  • 29. 29 Techniques to Focus on Interaction with Customer • Direct interaction between the development team and the customer • Reduces both the number of documents required and the probability of misunderstanding due to unnecessary communication layers • Requirements splitting • If the development team considers a requirement too complex, this technique helps the customer to split it in simpler ones
  • 30. 30 Waste Reduction Techniques • In order to reduce the waste created by the over specification of requirements, following techniques are used • Requirements prioritization • Incremental releases
  • 31. 31 Prioritization Activities • The development team estimates the time required to implement each functionality. If the effort required is too high, the requirement is split into simpler ones that can be implemented with less effort • The customer specifies business priorities for each functionality
  • 32. 32 Prioritization Activities • According to the business priorities, the development team assign a risk factor to the functionalities • The customer and the development team identify the functionalities to implement in the iteration
  • 33. 33 Requirements Evolution • Agile methods assume that is very hard to elicit all the requirements from the user upfront, at the beginning of a development project • They also assume that such requirements evolve in time as the customer may change its mind or the overall technical and socio-economical environment may evolve
  • 34. 34 Requirements Evolution • Agile companies are aware that changes are inevitable and they include the management of variability into the development process
  • 35. 35 Requirements Evolution • Requirements are not well known at the beginning of the project • Requirements change • Making changes is not expensive
  • 36. 36 Requirements Evolution • Agile methods assume that the cost of introducing changes in a product is nearly constant over the time, but this hypothesis is not true in every context
  • 37. 37 Requirements Evolution • Usually, the cost of implementing changes grows exponentially over the time • On the other hand, if development phases are grouped together in very short iterations and binding decisions are taken as late as possible, the growing of the cost is limited
  • 38. 38 Requirements Evolution • In order to manage requirements evolution, agile methods use variable scope-variable price contract. This means that the features really implemented into the system and its cost evolve as well • Requirements are negotiated throughout the project between the customer the development team
  • 39. 39 Managing Variability • Decoupling requirements • Requirements elicitation and prioritization
  • 40. 40 Managing Variability • Decoupling requirements • Requirements have to be as independent as possible in order to clearly identify what to implement and make the order of their implementation irrelevant
  • 41. 41 Managing Variability • Requirements elicitation and prioritization • At the beginning of every iteration, there is a requirements collection and prioritization activity. During that, new requirements are identified and prioritized. This approach helps to identify the most important features inside the ongoing project.
  • 42. 42 Managing Variability • Features are implemented mainly according to their prioritization, not their functional dependence
  • 43. 43 Non-Functional Requirements • Agile methods do not provide any widely accepted technique for eliciting and managing non-functional requirements • Such requirements are collected implicitly during the requirements collection activity. The need of specifying non- functional requirements is less important than in other context due to the continuous interaction with the customer
  • 44. 44 Roles and Responsibilities • Customer • Developers • Managers
  • 45. 45 Tools for Requirements Management in Agile Methods • Paper, pencil, and pin boards • UML modeling tools • Requirements negotiation tools • Instant messaging tools • Project management tools