SlideShare une entreprise Scribd logo
1  sur  41
P R E S E N T E D B Y :
S H W E T A G H A T E
T R U P T I D I W A N
P R A T I M A J A D H A V
S A P N A V A S A V E
M I T C O L L E G E O F
E N G I N E E R I N G , P U N E .
Unified Process, Agile process,
Process Assessment
Agenda
 Unified Process
 Agile Process
 Process Assessment
What is Process ???
 SEP i.e. Software Engineering Process
 Defines who, what, when and how of developing
software.
Software Engineering
Process
New or Changed
requirements
New or Changed
system
What is Unified Process ??
 Unified process (UP) is an architecture-centric, use-case
driven, iterative and incremental development process
that leverages unified modeling language and is
compliant with the system process engineering
metamodel.
 A popular iterative modern process model (framework)
derived from the work on the UML and associated
process.
Unified Process
 The leading object-oriented methodology for the
development of large-scale software
 Maps out when and how to use the various UML
techniques
 Develop high-risk elements in early iterations
 Deliver value to customer
Creating the Unified Process
Rational Unified Process 5.0
1998
Rational Objectory Process 4.1
1996-1997
Objectory Process 1.0-3.8
1987-1995
Ericsson Approach
Rational Approach
IBM Approach
Unified Process
1998
OO Approach
The Unified Process
 The Unified Process is an adaptable
methodology.
 The Unified Process is a modeling technique.
UML stands for unified modeling language.
• The object-oriented paradigm is iterative and
incremental in nature
Unified Process Phases
 Inception
 Establish the business case for the system, define risks, obtain
10% of the requirements, estimate next phase effort.
 Elaboration
 Develop an understanding of the problem domain and the
system architecture, risk significant portions may be
coded/tested, 80% major requirements identified.
 Construction
 System design, programming and testing. Building the
remaining system in short iterations.
 Transition
 Starts when beta testing is completed, Deploy the system in its
operating environment. Deliver releases for feedback and
deployment
The Phases/Workflows Of Unified Process
Phase is Business context of a step
Workflow is
Technical
context of a
step
The Phases/Workflows Of Unified Process
 NOTE:
Most of the
requirements
work or
workflow is
done in the
inception
phase.
 However
some is done
later.
The Phases/Workflows Of Unified Process
 NOTE:
Most of the
implementati
on work or
workflow is
done in
construction
 However
some is done
earlier and
some later.
Example roles in UP
 Stake Holder: customer, product manager, etc.
 Software Architect: established and maintains
architectural vision
 Process Engineer: leads definition and refinement
of Development Case
 Graphic Artist: assists in user interface design, etc.
Agile Process
Agenda
 Manifesto for Agile Software Development
 What is Agility?
 Agile Teams
 Agility and the Cost of Change
 An Agile Process
 The principles of agile methods
 Human Factors
 Agile Process Models
 Agile Modeling
 Conclusion
Manifesto for Agile Software Development
 “We are uncovering better ways of developing software by
doing it and helping others do it.
 Agile values:
1. Individuals and interactions- in agile development, self
organization & motivation are important
2. Working software- working software will be more useful and
welcome than just presenting documents to clients in
meetings
3. Customer collaboration-requirements cant be fully collected
at the beginning of the software development cycle, therefore
continuous customer involvement is important
4. Responding to change- agile development is focused on
quick responses to change and continuous development
Agility
 Effective response to change
 Effective communication among all stakeholders
 Drawing the customer into the team.
 Organizing a team so that it is in control of the
work performed
In order to yield rapid, incremental delivery of
software
Agile Teams
 Responsive to changes during project
development
 Recognize that project plans must be flexible
 Eliminates the separation between customers and
developers
Agility and the Cost of Change
 Conventional wisdom is that the cost of
change increases nonlinearly as a project
progresses. It is relatively easy to
accommodate a change when a team is
gathering requirements early in a project.
Agility and the Cost of Change
An Agile Process
 Is driven by customer descriptions of what is required
(scenarios). Some assumptions:
 Recognizes that plans are short-lived (some requirements will
persist, some will change. Customer priorities will change)
 Develops software iteratively with a heavy emphasis on
construction activities (design and construction are interleaved,
hard to say how much design is necessary before construction.
Design models are proven as they are created. )
 Analysis, design, construction and testing are not predictable.
 Thus has to Adapt as changes occur due to unpredictability
 Delivers multiple ‘software increments’, deliver an operational
prototype or portion of an OS to collect customer feedback for
adaption.
Human Factors
 The process molds to the needs of the people and team, not the
other way around
 key traits must exist among the people on an agile team :
 Competence. ( talent, skills, knowledge)
 Common focus. ( deliver a working software increment )
 Collaboration. ( peers and stakeholders)
 Decision-making ability. ( freedom to control its own destiny)
 Fuzzy problem-solving ability.(ambiguity and constant
changes, today problem may not be tomorrow’s problem)
 Mutual trust and respect.
 Self-organization. ( themselves for the work done, process for
its local environment, the work schedule)
Agile Process Models
 Extreme Programming (XP)
 Adaptive Software Development (ASD)
 Agile Modeling (AM)
Extreme programming
 The most widely used agile process.
 Defines 4 framework activities
Planning
Design
Coding
Testing
Extreme programming
24
refactoring
user stories
values
acceptance test
criteria
iteration plan
simple design
CRC cards
spike solutions
prototypes
pair
programming
unit test
continuous integration
acceptance
testing
software increment
project velocity computed
Release
Extreme programming
 XP Planning
 Begins with the creation of “user requirements”
 Agile team assesses it and assigns a
cost
 They are grouped to form a deliverable
increment
 A commitment is made on delivery date
 After the first increment “project velocity” is used to
help define subsequent delivery dates for other
increments
Extreme programming
 XP Design
Follows the KIS principle
For difficult design problems, suggests the
creation of “spike solutions”—a design
prototype
Encourages “refactoring”—an iterative
refinement of the internal program design
Extreme programming
 XP Coding
Recommends the construction of a unit test
for a store before coding commences.
Encourages “pair programming”.
 XP Testing
All unit tests are executed daily
“Acceptance tests” are defined by the
customer and executed to assess customer
visible functionality
Adaptive Software Development (ASD)
 Self-organization arises when independent agents
cooperate to create a solution to a problem that is
beyond the capability of any individual agent
 Adaptive cycle characteristics
 Mission-driven planning
 Component-based focus
 Uses “time-boxing”
 Explicit consideration of risks
 Emphasizes collaboration for requirements gathering
 Emphasizes “learning”
Three Phases of ASD
ad ap t ive cycle p lanning
uses m issio n st at em ent
pro jec t c o nst raint s
b asic requirem ent s
t im e-b o xed release p lan
Req uirem ent s g at hering
JA D
m ini-sp ecs
co m p o nent s im p lem ent ed / t est ed
f o cus g ro up s f o r f eed b ack
f o rm al t echnical review s
p o st m o rt em s
so f t w a re in cre m e n t
a d ju st m e n t s f o r su b se q u e n t cy cle s
Release
Three Phases of ASD
1. Speculation:
 Project is initiated and adaptive cycle planning is
conducted.
 Adaptive cycle planning uses project initiation
information.
 Based on the information obtained at the
completion of the first cycle, the plan is
reviewed and adjusted.
Three Phases of ASD
2. Collaborations
 Are used to multiply their talent and creative output
beyond absolute number (1+1>2).
 It encompasses communication and teamwork, but it
also emphasizes individualism.
Three Phases of ASD
3. Learning:
 As members of ASD team begin to develop the
components, the emphasis is on “learning”.
 Learning will help them to improve developers level of
real understanding.
 Three ways: focus groups, technical reviews and project
postmortems
Process Assessment
What is Process Assessment
 An objective model-independent method to
assess the capability of an organization to meet
the process goals
 About collecting information
 A way to demonstrate program effectiveness
Assessment Method
 Assessment Stages
 Key Players
 Initiation
 Preparation
 Assessment
 Analysis and Reporting
 Closure
Assessment Stages
Initiation
Preparation
Assessment
Analysis
and
Reporting
Closure
Initiation (stage 1)
Define the
inputs
• identify the assessment purpose
• select the assessment model
• define goals for the assessment
• identify the business drivers
• identify constraints
• document assumptions
• identify additional information gathering requirements
• identify feedback and output requirements
• complete the assessment brief
Sanction
the
business case
• costs and benefits
• decision to proceed
Select the
Resources
Outputs
• assessment purpose
• constraints
• assessment goals
• confidentiality agreements
• quality measures to be collected
Assessment (stage 3)
Gather
Information
• conduct interviews
• study documentation
• document findings
• consolidate the findings
• rate the goals
• rate the process
• feedback initial conclusions
• determine the Organizational Unit’s Capability Level
Reach
Consensus
• on ALL ratings!
Conduct
• according assessment plan
• adapt plan for changes and feedback
• data collection by interview or document
• data review for process ratings
• assessors agree on ratings before submitting
them to the Lead Assessor
Types
• measurement only (no analysis)
• Findings & Recommendations
• Findings & Action Planning
Analysis & Reporting (stage 4)
Analyse
Findings
Disseminate
Findings
Identify
Action Plan
issue
Final Report
• Strengths & Weaknesses
• Gap Analysis
• Identify Improvement
Opportunities
• semi-formal interactive
feedback session
• prioritise improvements
according impact & effort
against business drivers
• Cost/benefit Analysis
• Schedule of improvement
roll-out
• management findings &
recommendations
• summary assessment process
& key players
• results compared with targets
• detailed process findings
Closure (stage 5)
Post-Assessment
Review
• results of the analysis of the participants feedback forms
• the assessments’ achievements against its goals
• the overall level of confidence in the assessments results
• any problems the assessors experienced during the assessment
including problems with the use of the method
• the successes achieved
• the techniques used during the assessment
• the organizational unit and the Sponsor's response to the results
• Lead Assessor ensures that the Assessment Conformance Checklist
is complete and signed-off.
Unified process,agile process,process assesment ppt

Contenu connexe

Tendances

Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts pptRathna Priya
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering NotesNavjyotsinh Jadeja
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process FrameworkJAINAM KAPADIYA
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24koolkampus
 
Software Design and Modularity
Software Design and ModularitySoftware Design and Modularity
Software Design and ModularityDanyal Ahmad
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software designdespicable me
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Bilal Hassan
 
Unified process model
Unified process modelUnified process model
Unified process modelRyndaMaala
 
Soft Eng - Software Process
Soft  Eng - Software ProcessSoft  Eng - Software Process
Soft Eng - Software ProcessJomel Penalba
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminariesMoutasm Tamimi
 

Tendances (20)

Software Development Process
Software Development ProcessSoftware Development Process
Software Development Process
 
System testing
System testingSystem testing
System testing
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering Notes
 
Computer aided software engineering
Computer aided software engineeringComputer aided software engineering
Computer aided software engineering
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24
 
Software Design and Modularity
Software Design and ModularitySoftware Design and Modularity
Software Design and Modularity
 
Software quality
Software qualitySoftware quality
Software quality
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
 
Chapter 14
Chapter 14Chapter 14
Chapter 14
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
 
Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Unified process model
Unified process modelUnified process model
Unified process model
 
White box testing
White box testingWhite box testing
White box testing
 
Soft Eng - Software Process
Soft  Eng - Software ProcessSoft  Eng - Software Process
Soft Eng - Software Process
 
Software evolution and maintenance basic concepts and preliminaries
Software evolution and maintenance   basic concepts and preliminariesSoftware evolution and maintenance   basic concepts and preliminaries
Software evolution and maintenance basic concepts and preliminaries
 

Similaire à Unified process,agile process,process assesment ppt

An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.Masoud Kalali
 
Presentation - Rational Unified Process
Presentation - Rational Unified ProcessPresentation - Rational Unified Process
Presentation - Rational Unified ProcessSharad Srivastava
 
System Development
System  DevelopmentSystem  Development
System DevelopmentSharad Patel
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overviewsunilkumar_
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxKhcThKhnhHuyn1T20ACN
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineeringMuhammadTalha436
 
Agile software development
Agile software developmentAgile software development
Agile software developmentpradeeppatelpmp
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Studyijsrd.com
 
Unit 1 sepm the generic process model
Unit 1 sepm the generic process modelUnit 1 sepm the generic process model
Unit 1 sepm the generic process modelKanchanPatil34
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentThanh Nguyen
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Software development process basic
Software development process basicSoftware development process basic
Software development process basicAnurag Tomar
 

Similaire à Unified process,agile process,process assesment ppt (20)

Incremental model
Incremental modelIncremental model
Incremental model
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
Software models
Software modelsSoftware models
Software models
 
Presentation - Rational Unified Process
Presentation - Rational Unified ProcessPresentation - Rational Unified Process
Presentation - Rational Unified Process
 
System Development
System  DevelopmentSystem  Development
System Development
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptx
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 
Soft lifecycle
Soft lifecycleSoft lifecycle
Soft lifecycle
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Software Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative StudySoftware Development Life Cycle: Traditional and Agile- A Comparative Study
Software Development Life Cycle: Traditional and Agile- A Comparative Study
 
Unit 1 sepm the generic process model
Unit 1 sepm the generic process modelUnit 1 sepm the generic process model
Unit 1 sepm the generic process model
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
The unified process
The unified processThe unified process
The unified process
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software development process basic
Software development process basicSoftware development process basic
Software development process basic
 

Plus de Shweta Ghate

Memory technology and optimization in Advance Computer Architechture
Memory technology and optimization in Advance Computer ArchitechtureMemory technology and optimization in Advance Computer Architechture
Memory technology and optimization in Advance Computer ArchitechtureShweta Ghate
 
Data mining technique (decision tree)
Data mining technique (decision tree)Data mining technique (decision tree)
Data mining technique (decision tree)Shweta Ghate
 
Open source web GIS
Open source web GISOpen source web GIS
Open source web GISShweta Ghate
 
Introduction to 3G technology
Introduction to 3G technologyIntroduction to 3G technology
Introduction to 3G technologyShweta Ghate
 
computer virus and related legal issues
computer virus and related legal issuescomputer virus and related legal issues
computer virus and related legal issuesShweta Ghate
 
Domain logic patterns of Software Architecture
Domain logic patterns of Software ArchitectureDomain logic patterns of Software Architecture
Domain logic patterns of Software ArchitectureShweta Ghate
 

Plus de Shweta Ghate (6)

Memory technology and optimization in Advance Computer Architechture
Memory technology and optimization in Advance Computer ArchitechtureMemory technology and optimization in Advance Computer Architechture
Memory technology and optimization in Advance Computer Architechture
 
Data mining technique (decision tree)
Data mining technique (decision tree)Data mining technique (decision tree)
Data mining technique (decision tree)
 
Open source web GIS
Open source web GISOpen source web GIS
Open source web GIS
 
Introduction to 3G technology
Introduction to 3G technologyIntroduction to 3G technology
Introduction to 3G technology
 
computer virus and related legal issues
computer virus and related legal issuescomputer virus and related legal issues
computer virus and related legal issues
 
Domain logic patterns of Software Architecture
Domain logic patterns of Software ArchitectureDomain logic patterns of Software Architecture
Domain logic patterns of Software Architecture
 

Unified process,agile process,process assesment ppt

  • 1. P R E S E N T E D B Y : S H W E T A G H A T E T R U P T I D I W A N P R A T I M A J A D H A V S A P N A V A S A V E M I T C O L L E G E O F E N G I N E E R I N G , P U N E . Unified Process, Agile process, Process Assessment
  • 2. Agenda  Unified Process  Agile Process  Process Assessment
  • 3. What is Process ???  SEP i.e. Software Engineering Process  Defines who, what, when and how of developing software. Software Engineering Process New or Changed requirements New or Changed system
  • 4. What is Unified Process ??  Unified process (UP) is an architecture-centric, use-case driven, iterative and incremental development process that leverages unified modeling language and is compliant with the system process engineering metamodel.  A popular iterative modern process model (framework) derived from the work on the UML and associated process.
  • 5. Unified Process  The leading object-oriented methodology for the development of large-scale software  Maps out when and how to use the various UML techniques  Develop high-risk elements in early iterations  Deliver value to customer
  • 6. Creating the Unified Process Rational Unified Process 5.0 1998 Rational Objectory Process 4.1 1996-1997 Objectory Process 1.0-3.8 1987-1995 Ericsson Approach Rational Approach IBM Approach Unified Process 1998 OO Approach
  • 7. The Unified Process  The Unified Process is an adaptable methodology.  The Unified Process is a modeling technique. UML stands for unified modeling language. • The object-oriented paradigm is iterative and incremental in nature
  • 8. Unified Process Phases  Inception  Establish the business case for the system, define risks, obtain 10% of the requirements, estimate next phase effort.  Elaboration  Develop an understanding of the problem domain and the system architecture, risk significant portions may be coded/tested, 80% major requirements identified.  Construction  System design, programming and testing. Building the remaining system in short iterations.  Transition  Starts when beta testing is completed, Deploy the system in its operating environment. Deliver releases for feedback and deployment
  • 9. The Phases/Workflows Of Unified Process Phase is Business context of a step Workflow is Technical context of a step
  • 10. The Phases/Workflows Of Unified Process  NOTE: Most of the requirements work or workflow is done in the inception phase.  However some is done later.
  • 11. The Phases/Workflows Of Unified Process  NOTE: Most of the implementati on work or workflow is done in construction  However some is done earlier and some later.
  • 12. Example roles in UP  Stake Holder: customer, product manager, etc.  Software Architect: established and maintains architectural vision  Process Engineer: leads definition and refinement of Development Case  Graphic Artist: assists in user interface design, etc.
  • 14. Agenda  Manifesto for Agile Software Development  What is Agility?  Agile Teams  Agility and the Cost of Change  An Agile Process  The principles of agile methods  Human Factors  Agile Process Models  Agile Modeling  Conclusion
  • 15. Manifesto for Agile Software Development  “We are uncovering better ways of developing software by doing it and helping others do it.  Agile values: 1. Individuals and interactions- in agile development, self organization & motivation are important 2. Working software- working software will be more useful and welcome than just presenting documents to clients in meetings 3. Customer collaboration-requirements cant be fully collected at the beginning of the software development cycle, therefore continuous customer involvement is important 4. Responding to change- agile development is focused on quick responses to change and continuous development
  • 16. Agility  Effective response to change  Effective communication among all stakeholders  Drawing the customer into the team.  Organizing a team so that it is in control of the work performed In order to yield rapid, incremental delivery of software
  • 17. Agile Teams  Responsive to changes during project development  Recognize that project plans must be flexible  Eliminates the separation between customers and developers
  • 18. Agility and the Cost of Change  Conventional wisdom is that the cost of change increases nonlinearly as a project progresses. It is relatively easy to accommodate a change when a team is gathering requirements early in a project.
  • 19. Agility and the Cost of Change
  • 20. An Agile Process  Is driven by customer descriptions of what is required (scenarios). Some assumptions:  Recognizes that plans are short-lived (some requirements will persist, some will change. Customer priorities will change)  Develops software iteratively with a heavy emphasis on construction activities (design and construction are interleaved, hard to say how much design is necessary before construction. Design models are proven as they are created. )  Analysis, design, construction and testing are not predictable.  Thus has to Adapt as changes occur due to unpredictability  Delivers multiple ‘software increments’, deliver an operational prototype or portion of an OS to collect customer feedback for adaption.
  • 21. Human Factors  The process molds to the needs of the people and team, not the other way around  key traits must exist among the people on an agile team :  Competence. ( talent, skills, knowledge)  Common focus. ( deliver a working software increment )  Collaboration. ( peers and stakeholders)  Decision-making ability. ( freedom to control its own destiny)  Fuzzy problem-solving ability.(ambiguity and constant changes, today problem may not be tomorrow’s problem)  Mutual trust and respect.  Self-organization. ( themselves for the work done, process for its local environment, the work schedule)
  • 22. Agile Process Models  Extreme Programming (XP)  Adaptive Software Development (ASD)  Agile Modeling (AM)
  • 23. Extreme programming  The most widely used agile process.  Defines 4 framework activities Planning Design Coding Testing
  • 24. Extreme programming 24 refactoring user stories values acceptance test criteria iteration plan simple design CRC cards spike solutions prototypes pair programming unit test continuous integration acceptance testing software increment project velocity computed Release
  • 25. Extreme programming  XP Planning  Begins with the creation of “user requirements”  Agile team assesses it and assigns a cost  They are grouped to form a deliverable increment  A commitment is made on delivery date  After the first increment “project velocity” is used to help define subsequent delivery dates for other increments
  • 26. Extreme programming  XP Design Follows the KIS principle For difficult design problems, suggests the creation of “spike solutions”—a design prototype Encourages “refactoring”—an iterative refinement of the internal program design
  • 27. Extreme programming  XP Coding Recommends the construction of a unit test for a store before coding commences. Encourages “pair programming”.  XP Testing All unit tests are executed daily “Acceptance tests” are defined by the customer and executed to assess customer visible functionality
  • 28. Adaptive Software Development (ASD)  Self-organization arises when independent agents cooperate to create a solution to a problem that is beyond the capability of any individual agent  Adaptive cycle characteristics  Mission-driven planning  Component-based focus  Uses “time-boxing”  Explicit consideration of risks  Emphasizes collaboration for requirements gathering  Emphasizes “learning”
  • 29. Three Phases of ASD ad ap t ive cycle p lanning uses m issio n st at em ent pro jec t c o nst raint s b asic requirem ent s t im e-b o xed release p lan Req uirem ent s g at hering JA D m ini-sp ecs co m p o nent s im p lem ent ed / t est ed f o cus g ro up s f o r f eed b ack f o rm al t echnical review s p o st m o rt em s so f t w a re in cre m e n t a d ju st m e n t s f o r su b se q u e n t cy cle s Release
  • 30. Three Phases of ASD 1. Speculation:  Project is initiated and adaptive cycle planning is conducted.  Adaptive cycle planning uses project initiation information.  Based on the information obtained at the completion of the first cycle, the plan is reviewed and adjusted.
  • 31. Three Phases of ASD 2. Collaborations  Are used to multiply their talent and creative output beyond absolute number (1+1>2).  It encompasses communication and teamwork, but it also emphasizes individualism.
  • 32. Three Phases of ASD 3. Learning:  As members of ASD team begin to develop the components, the emphasis is on “learning”.  Learning will help them to improve developers level of real understanding.  Three ways: focus groups, technical reviews and project postmortems
  • 34. What is Process Assessment  An objective model-independent method to assess the capability of an organization to meet the process goals  About collecting information  A way to demonstrate program effectiveness
  • 35. Assessment Method  Assessment Stages  Key Players  Initiation  Preparation  Assessment  Analysis and Reporting  Closure
  • 37. Initiation (stage 1) Define the inputs • identify the assessment purpose • select the assessment model • define goals for the assessment • identify the business drivers • identify constraints • document assumptions • identify additional information gathering requirements • identify feedback and output requirements • complete the assessment brief Sanction the business case • costs and benefits • decision to proceed Select the Resources Outputs • assessment purpose • constraints • assessment goals • confidentiality agreements • quality measures to be collected
  • 38. Assessment (stage 3) Gather Information • conduct interviews • study documentation • document findings • consolidate the findings • rate the goals • rate the process • feedback initial conclusions • determine the Organizational Unit’s Capability Level Reach Consensus • on ALL ratings! Conduct • according assessment plan • adapt plan for changes and feedback • data collection by interview or document • data review for process ratings • assessors agree on ratings before submitting them to the Lead Assessor Types • measurement only (no analysis) • Findings & Recommendations • Findings & Action Planning
  • 39. Analysis & Reporting (stage 4) Analyse Findings Disseminate Findings Identify Action Plan issue Final Report • Strengths & Weaknesses • Gap Analysis • Identify Improvement Opportunities • semi-formal interactive feedback session • prioritise improvements according impact & effort against business drivers • Cost/benefit Analysis • Schedule of improvement roll-out • management findings & recommendations • summary assessment process & key players • results compared with targets • detailed process findings
  • 40. Closure (stage 5) Post-Assessment Review • results of the analysis of the participants feedback forms • the assessments’ achievements against its goals • the overall level of confidence in the assessments results • any problems the assessors experienced during the assessment including problems with the use of the method • the successes achieved • the techniques used during the assessment • the organizational unit and the Sponsor's response to the results • Lead Assessor ensures that the Assessment Conformance Checklist is complete and signed-off.