SlideShare una empresa de Scribd logo
1 de 14
CONTENTS


          1        Brief introduction to Agile methodologies


          2        SCRUM Agile methodology


          3        XP, UP Agile methodology


          4        XP, UP or Scrum?


          5        Conclusion



Tuesday, September 25, 2012                                    Page: 2
AGILE METHODOLOGIES
     Agile is an iterative and incremental (evolutionary) approach to
      software development
     Helps teams respond to the unpredictability of building software
     Maximize the return on your software investment.
     Promotes adaptive planning, evolutionary development and delivery;
     It's a conceptual framework that promotes foreseen interactions
      throughout development cycle.
                   XP
                   SCRUM
                   AUP or UP
                   DSDM
                   Adaptive Software Development
                   Crystal
                   LSD
                   FDD



Tuesday, September 25, 2012                                         Page: 3
AGILE METHODOLOGIES
         Traditional methodology           Agile methodology
          Try to restrict changes          Try to embrace
                                           changes
          Try to create predictive      Try to be adaptive
          plans
          Structured in phases          Structured in features
          (requirement, design,         (such as Sprints)
          coding, test, deploy….)
          Hard to measure progress      Easier to measure
                                        progress
          Doing testing at the end of   Embrace continuous
          the project (It’s too late)   testing, integration and
                                        reviews
Tuesday, September 25, 2012                                        Page: 4
Real projects
      The Google AdWords development group applied Agile
       techniques piecemeal, successfully over a period of 6
       months…
      BT Group (2005): Change Unix-based phone-traffic
       monitoring system to Web-centric architecture
         Shift from traditional waterfall development
          techniques (three to nine months for a third-party
          developer to gather specifications) to agile
          methodology  The company's shift to 30-day
          software iteration cycles
         Outcome: At least four times as fast, meaning they
          could deliver the end product that much faster.


Tuesday, September 25, 2012                               Page: 5
AGILE METHODOLOGIES
     Agile methods tend to fall into two categories:
           Engineering (how to do it): eXtreme Programming
           Project Management (how to manage it): Scrum
     Operate in an incremental, iterative, adaptive
     manner




Tuesday, September 25, 2012                                   Page: 6
SCRUM Agile Methodology
     An iterative, incremental framework for software development
     Focus on project management values and practices rather than
      requirement, implementation
     Work is structured in small units of work called sprint
     Iterations of work that are typically 30-calendar days.
     End of each sprint, Team delivers a potentially shippable product increment
      to the customer.
     Each iteration, team works on highest priority requirement to develop feature
      which is highest in value to customer (client-driven adaptive planning)




Tuesday, September 25, 2012                                                   Page: 7
XP Agile Methodology

     Extreme Programming (or XP) is a set of values,
      principles and practices for rapidly developing
      high-quality software that provides the highest
      value for the customer in the fastest way
      possible
     It’s an “engineering” method in that it prescribes
      “HOW” to create the code unlike SCRUM that
      talks about “how to manage an agile project”




Tuesday, September 25, 2012                          Page: 8
XP Agile Methodology
    XP is extreme in the sense that it takes 12 well-known
     software development "best practices" to an extreme
         1. Planning Game (short iterations,1-3 weeks in duration, each iteration features are
             broken down into very small stories)
         2. Small Releases (min: once per iteration, max: 2-3 months )
         3. Metaphors (Names are chosen to be evocative of the system being created)
         4. Simple Design (The simplest design that suffices for the task at hand)
         5. Continuous Testing (Test-driven development: test case  test data)
         6. Refactoring (Codes are continuously reviewed and kept as clean as possible, get
             feedback from client and redesign)
         7. Pair Programming
         8. Team code ownership
         9. Continuous Integration (The system is built and tested end-to-end several times
             each day  Developers must continuously keep the system in a deployable state)
         10. Sustainable pace (Building software is a marathon, not a sprint.)
         11. Whole team together (team consists of developers, business analysts, QA, PM..)
         12. Coding standards


Tuesday, September 25, 2012                                                             Page: 9
XP Agile Methodology

     Cycle: XP teams work in a series of fixed
      iteration cycles (1-3 weeks).




Tuesday, September 25, 2012                       Page: 10
UP Agile Methodology

     Agile UP is an adaption of UP
     Phases = inception, elaboration, construction,
      and transition
     Phases divided into iterations
     Focus on prioritized high risk tasks for
      development




Tuesday, September 25, 2012                            Page: 11
XP or SCRUM?
   SCRUM                                      XP
   management methodology (driven by          engineering methodology (driven by
   management)                                developers)
   Self organizing teams                      Collaboration, communication
   30-calendar day iterations                 1-3 weeks iterations
   Used for large projects, flexible in       Small or medium projects, low on
   ceremony scale, multiple teams (7+-2)      ceremony scale (<=7 pp), delivery dates
                                              <=1 year
   Life cycle consists of 4 phases:           Life cycle consists of 5 phase:
   Planning, staging, development, release    Exploration, Planning, iteration to first
                                              release, productionizing, maintenance
   Nothing must be added during an            XP promotes no overtime, Not allow to
   iteration                                  sign up for more work in the coming
                                              iteration than the previous iteration.
   Daily integration and regression test      Unit tests and Acceptance tests
   Increase the productivity of the project   improvement in the quality of the code
   team                                       and test suites.
Tuesday, September 25, 2012                                                      Page: 12
CONCLUSION
     Scrum: more visibility, better business engagement,
      team collaboration, a clear process for prioritization, etc.
     Scrum suitable for projects where customer has priority
      of work to be completed and requirements keeps
      changing from time to time.
     Scrum + XP and UP is a good combination.




Tuesday, September 25, 2012                                    Page: 13
Agile Methodologies

Más contenido relacionado

La actualidad más candente

Five benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems developmentFive benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems development
IBM Rational software
 
Software Project management
Software Project managementSoftware Project management
Software Project management
sameer farooq
 
Li kai roll-out scrum in an intel organization
Li kai   roll-out scrum in an intel organizationLi kai   roll-out scrum in an intel organization
Li kai roll-out scrum in an intel organization
Odd-e
 

La actualidad más candente (20)

XP vs Lean vs FDD
XP vs Lean vs FDDXP vs Lean vs FDD
XP vs Lean vs FDD
 
4. ch 3-agile process
4. ch 3-agile process4. ch 3-agile process
4. ch 3-agile process
 
Agile model
Agile model Agile model
Agile model
 
DSDM
DSDMDSDM
DSDM
 
Scrum agile process
Scrum agile processScrum agile process
Scrum agile process
 
Agile management.pptx
Agile management.pptxAgile management.pptx
Agile management.pptx
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
Five benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems developmentFive benefits of agile practices in software intensive systems development
Five benefits of agile practices in software intensive systems development
 
Periodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesPeriodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and Practices
 
Tsp Overview
Tsp OverviewTsp Overview
Tsp Overview
 
HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101
 
Software Project management
Software Project managementSoftware Project management
Software Project management
 
Scrum and agile principles
Scrum and agile principles Scrum and agile principles
Scrum and agile principles
 
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
 
Agile product development
Agile product developmentAgile product development
Agile product development
 
Agile Manifesto & XP
Agile Manifesto & XPAgile Manifesto & XP
Agile Manifesto & XP
 
Agile process (Scrum Framework)
Agile process (Scrum Framework)Agile process (Scrum Framework)
Agile process (Scrum Framework)
 
Li kai roll-out scrum in an intel organization
Li kai   roll-out scrum in an intel organizationLi kai   roll-out scrum in an intel organization
Li kai roll-out scrum in an intel organization
 
Scrum
ScrumScrum
Scrum
 

Similar a Agile Methodologies

Unit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of softwareUnit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of software
zeelp3114
 

Similar a Agile Methodologies (20)

Software Development Methodologies and Team Management
Software Development Methodologies and Team ManagementSoftware Development Methodologies and Team Management
Software Development Methodologies and Team Management
 
Unit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of softwareUnit_1_Agile development.pdf about the script of software
Unit_1_Agile development.pdf about the script of software
 
Agile Methodology ppt
Agile Methodology pptAgile Methodology ppt
Agile Methodology ppt
 
Agile Methods Overview ]
Agile Methods Overview ]Agile Methods Overview ]
Agile Methods Overview ]
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Scrum and Agile SDLC 101
Scrum and Agile SDLC 101Scrum and Agile SDLC 101
Scrum and Agile SDLC 101
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Scrum
ScrumScrum
Scrum
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
PMI-ACP Lesson 01 Nugget 2 Agile Methodologies-i
PMI-ACP Lesson 01 Nugget 2 Agile Methodologies-iPMI-ACP Lesson 01 Nugget 2 Agile Methodologies-i
PMI-ACP Lesson 01 Nugget 2 Agile Methodologies-i
 
Key Agile Methodologies.docx
Key Agile Methodologies.docxKey Agile Methodologies.docx
Key Agile Methodologies.docx
 
Agile Software Development Methodologies
Agile Software Development MethodologiesAgile Software Development Methodologies
Agile Software Development Methodologies
 
Agile project management SCRUM
Agile project management SCRUMAgile project management SCRUM
Agile project management SCRUM
 
Methodologies 2: Scaling Agile
Methodologies 2: Scaling AgileMethodologies 2: Scaling Agile
Methodologies 2: Scaling Agile
 
A littlebook about agile
A littlebook about agileA littlebook about agile
A littlebook about agile
 
Ch04
Ch04Ch04
Ch04
 
Beyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your OrganizationBeyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your Organization
 
Scrum
Scrum Scrum
Scrum
 
Agile~overview
Agile~overviewAgile~overview
Agile~overview
 
Breaking Tradition: Agile Frameworks For The Modern Era of Collaborative Proj...
Breaking Tradition: Agile Frameworks For The Modern Era of Collaborative Proj...Breaking Tradition: Agile Frameworks For The Modern Era of Collaborative Proj...
Breaking Tradition: Agile Frameworks For The Modern Era of Collaborative Proj...
 

Más de Kenny Nguyen

Nghệ thuật lãnh đạo và động viên: Leadership and Motivation
Nghệ thuật lãnh đạo và động viên: Leadership and MotivationNghệ thuật lãnh đạo và động viên: Leadership and Motivation
Nghệ thuật lãnh đạo và động viên: Leadership and Motivation
Kenny Nguyen
 
Strategic management
Strategic managementStrategic management
Strategic management
Kenny Nguyen
 
Dealing with unethical behaviors in organizations
Dealing with unethical behaviors in organizationsDealing with unethical behaviors in organizations
Dealing with unethical behaviors in organizations
Kenny Nguyen
 
Cost and Sale concepts
Cost and Sale conceptsCost and Sale concepts
Cost and Sale concepts
Kenny Nguyen
 

Más de Kenny Nguyen (20)

Introduction to foreign exchange trading
Introduction to foreign exchange tradingIntroduction to foreign exchange trading
Introduction to foreign exchange trading
 
Nghệ thuật lãnh đạo và động viên: Leadership and Motivation
Nghệ thuật lãnh đạo và động viên: Leadership and MotivationNghệ thuật lãnh đạo và động viên: Leadership and Motivation
Nghệ thuật lãnh đạo và động viên: Leadership and Motivation
 
The concept of strategy: five Ps for strategy
The concept of strategy: five Ps for strategyThe concept of strategy: five Ps for strategy
The concept of strategy: five Ps for strategy
 
Business negotiation
Business negotiationBusiness negotiation
Business negotiation
 
The global financial crisis
The global financial crisisThe global financial crisis
The global financial crisis
 
Iphone programming: Core Data Tutorial for iOS
Iphone programming: Core Data Tutorial for iOSIphone programming: Core Data Tutorial for iOS
Iphone programming: Core Data Tutorial for iOS
 
Iphone programming: Objective c
Iphone programming: Objective cIphone programming: Objective c
Iphone programming: Objective c
 
Digital killed the book?
Digital killed the book?Digital killed the book?
Digital killed the book?
 
Fighting counterfeit motion pictures
Fighting counterfeit motion picturesFighting counterfeit motion pictures
Fighting counterfeit motion pictures
 
Interaction design beyond human computer interaction
Interaction design beyond human computer interactionInteraction design beyond human computer interaction
Interaction design beyond human computer interaction
 
Giáo trình Flash CS5 và Action Script 3.0
Giáo trình Flash CS5 và Action Script 3.0Giáo trình Flash CS5 và Action Script 3.0
Giáo trình Flash CS5 và Action Script 3.0
 
Stages of team development
Stages of team developmentStages of team development
Stages of team development
 
Step by step guide to sustainability planning
Step by step guide to sustainability planningStep by step guide to sustainability planning
Step by step guide to sustainability planning
 
Strategic management
Strategic managementStrategic management
Strategic management
 
Comparison of eBay.com and Alibaba.com
Comparison of eBay.com and Alibaba.comComparison of eBay.com and Alibaba.com
Comparison of eBay.com and Alibaba.com
 
The Jack who would be king
The Jack who would be kingThe Jack who would be king
The Jack who would be king
 
Exchange rates effect
Exchange rates effectExchange rates effect
Exchange rates effect
 
Economics for managers
Economics for managersEconomics for managers
Economics for managers
 
Dealing with unethical behaviors in organizations
Dealing with unethical behaviors in organizationsDealing with unethical behaviors in organizations
Dealing with unethical behaviors in organizations
 
Cost and Sale concepts
Cost and Sale conceptsCost and Sale concepts
Cost and Sale concepts
 

Último

怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
eeanqy
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
wpkuukw
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
nirzagarg
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
eqaqen
 
poliovirus-190801072449. pptx
poliovirus-190801072449.            pptxpoliovirus-190801072449.            pptx
poliovirus-190801072449. pptx
ssuser0ad194
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
wpkuukw
 
How to Build a Simple Shopify Website
How to Build a Simple Shopify WebsiteHow to Build a Simple Shopify Website
How to Build a Simple Shopify Website
mark11275
 
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
sriharipichandi
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
instagramfab782445
 
Minimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptxMinimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptx
balqisyamutia
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
eeanqy
 

Último (20)

Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipRaebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
 
Lecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptxLecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptx
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptx
 
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime PondicherryPondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
 
poliovirus-190801072449. pptx
poliovirus-190801072449.            pptxpoliovirus-190801072449.            pptx
poliovirus-190801072449. pptx
 
How to Turn a Picture Into a Line Drawing in Photoshop
How to Turn a Picture Into a Line Drawing in PhotoshopHow to Turn a Picture Into a Line Drawing in Photoshop
How to Turn a Picture Into a Line Drawing in Photoshop
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
 
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
 
How to Build a Simple Shopify Website
How to Build a Simple Shopify WebsiteHow to Build a Simple Shopify Website
How to Build a Simple Shopify Website
 
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
Anupama Kundoo Cost Effective detailed ppt with plans and elevations with det...
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptx
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
 
BLOCK CHAIN PROJECT block chain project
BLOCK CHAIN  PROJECT block chain projectBLOCK CHAIN  PROJECT block chain project
BLOCK CHAIN PROJECT block chain project
 
Minimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptxMinimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptx
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
 

Agile Methodologies

  • 1.
  • 2. CONTENTS 1 Brief introduction to Agile methodologies 2 SCRUM Agile methodology 3 XP, UP Agile methodology 4 XP, UP or Scrum? 5 Conclusion Tuesday, September 25, 2012 Page: 2
  • 3. AGILE METHODOLOGIES  Agile is an iterative and incremental (evolutionary) approach to software development  Helps teams respond to the unpredictability of building software  Maximize the return on your software investment.  Promotes adaptive planning, evolutionary development and delivery;  It's a conceptual framework that promotes foreseen interactions throughout development cycle.  XP  SCRUM  AUP or UP  DSDM  Adaptive Software Development  Crystal  LSD  FDD Tuesday, September 25, 2012 Page: 3
  • 4. AGILE METHODOLOGIES Traditional methodology Agile methodology Try to restrict changes Try to embrace changes Try to create predictive Try to be adaptive plans Structured in phases Structured in features (requirement, design, (such as Sprints) coding, test, deploy….) Hard to measure progress Easier to measure progress Doing testing at the end of Embrace continuous the project (It’s too late) testing, integration and reviews Tuesday, September 25, 2012 Page: 4
  • 5. Real projects  The Google AdWords development group applied Agile techniques piecemeal, successfully over a period of 6 months…  BT Group (2005): Change Unix-based phone-traffic monitoring system to Web-centric architecture  Shift from traditional waterfall development techniques (three to nine months for a third-party developer to gather specifications) to agile methodology  The company's shift to 30-day software iteration cycles  Outcome: At least four times as fast, meaning they could deliver the end product that much faster. Tuesday, September 25, 2012 Page: 5
  • 6. AGILE METHODOLOGIES  Agile methods tend to fall into two categories:  Engineering (how to do it): eXtreme Programming  Project Management (how to manage it): Scrum  Operate in an incremental, iterative, adaptive manner Tuesday, September 25, 2012 Page: 6
  • 7. SCRUM Agile Methodology  An iterative, incremental framework for software development  Focus on project management values and practices rather than requirement, implementation  Work is structured in small units of work called sprint  Iterations of work that are typically 30-calendar days.  End of each sprint, Team delivers a potentially shippable product increment to the customer.  Each iteration, team works on highest priority requirement to develop feature which is highest in value to customer (client-driven adaptive planning) Tuesday, September 25, 2012 Page: 7
  • 8. XP Agile Methodology  Extreme Programming (or XP) is a set of values, principles and practices for rapidly developing high-quality software that provides the highest value for the customer in the fastest way possible  It’s an “engineering” method in that it prescribes “HOW” to create the code unlike SCRUM that talks about “how to manage an agile project” Tuesday, September 25, 2012 Page: 8
  • 9. XP Agile Methodology  XP is extreme in the sense that it takes 12 well-known software development "best practices" to an extreme 1. Planning Game (short iterations,1-3 weeks in duration, each iteration features are broken down into very small stories) 2. Small Releases (min: once per iteration, max: 2-3 months ) 3. Metaphors (Names are chosen to be evocative of the system being created) 4. Simple Design (The simplest design that suffices for the task at hand) 5. Continuous Testing (Test-driven development: test case  test data) 6. Refactoring (Codes are continuously reviewed and kept as clean as possible, get feedback from client and redesign) 7. Pair Programming 8. Team code ownership 9. Continuous Integration (The system is built and tested end-to-end several times each day  Developers must continuously keep the system in a deployable state) 10. Sustainable pace (Building software is a marathon, not a sprint.) 11. Whole team together (team consists of developers, business analysts, QA, PM..) 12. Coding standards Tuesday, September 25, 2012 Page: 9
  • 10. XP Agile Methodology  Cycle: XP teams work in a series of fixed iteration cycles (1-3 weeks). Tuesday, September 25, 2012 Page: 10
  • 11. UP Agile Methodology  Agile UP is an adaption of UP  Phases = inception, elaboration, construction, and transition  Phases divided into iterations  Focus on prioritized high risk tasks for development Tuesday, September 25, 2012 Page: 11
  • 12. XP or SCRUM? SCRUM XP management methodology (driven by engineering methodology (driven by management) developers) Self organizing teams Collaboration, communication 30-calendar day iterations 1-3 weeks iterations Used for large projects, flexible in Small or medium projects, low on ceremony scale, multiple teams (7+-2) ceremony scale (<=7 pp), delivery dates <=1 year Life cycle consists of 4 phases: Life cycle consists of 5 phase: Planning, staging, development, release Exploration, Planning, iteration to first release, productionizing, maintenance Nothing must be added during an XP promotes no overtime, Not allow to iteration sign up for more work in the coming iteration than the previous iteration. Daily integration and regression test Unit tests and Acceptance tests Increase the productivity of the project improvement in the quality of the code team and test suites. Tuesday, September 25, 2012 Page: 12
  • 13. CONCLUSION  Scrum: more visibility, better business engagement, team collaboration, a clear process for prioritization, etc.  Scrum suitable for projects where customer has priority of work to be completed and requirements keeps changing from time to time.  Scrum + XP and UP is a good combination. Tuesday, September 25, 2012 Page: 13

Notas del editor

  1. Agile methodology is an approach to project management, used in software development. Agile methods maximize the return on your software investment. It helps teams respond to the unpredictability of building software through incremental, iterative work known as sprints. Agile methodology is iterative and incremental. In waterfall methodology, software development team only has one chance to get it right, where as in Agile methodology, every aspects of software development such as requirement, design, development etc is continually revisited throughout the life cycle of the project. FDD: Feature driven development LSD: Lean software development
  2. Having said that, none of the other Agile methods are as well defined, or as broad in scope as XP . Scrum, for example, is roughly equivalent to XP’s Planning game practice, with elements of Whole Team . While there are differences in the details, it is fair to say that Scrum is a subset of XP . Indeed, many Scrum teams augment their process by adding in many of the XP practices such as Acceptance Testing, Pair Programming, Continuous Integration, and especially Test Driven Development.   Of all the Agile methods, XP is the only method that provides deep and profound disciplines for the way developers do their daily work. Of those disciplines, Test Driven Development is the most revolutionary and impactful. http://www.infoworld.com/d/developer-world/bt-case-study-in-agile-programming-112
  3. Incremental - Build a system gradually - See the system grow - Demonstrating progress • Iterative - Multiple releases or check points during a project, each closer to the target - Iterations include requirements development and testing - Typical iterations are two weeks long - Plan as you go • Adaptive: Goals change based on lessons from prior iterations, feedback and business opportunities
  4. The Scrum start when the Product Backlog contains sufficient prioritized features for the first sprint In each sprint, team works on highest priority requirement to develop feature which is highest in value to customer. At the end of each sprint, team delivers a potentially shippable product increment to the customer. Product Backlog is broken down in to Sprint Backlogs Sprint Backlog: task breakout, is a list of tasks in 4-16 hours (based on business value and risk ) Tasks are broken down into pieces that require less than 2 days or 16 hours of work Items are chosen for Sprint Backlog that can be completed within 30days based on team size, level of productivity… Each sprint begin with Sprint planning meeting  Reviews and confirms estimate features to refine the Product backlog and Release backlog (next operational or product release) No other discussion is allowed outside the 3 questions Scrum framework is suitable for projects where customer has priority of work to be completed and requirements keeps changing from time to time.
  5. The Planning Game Development proceeds in very short iterations, typically 1-2 weeks in duration. Prior to each iteration features are broken down into very small stories. Stories are estimated by developers and then chosen by stakeholders based on their estimated cost and business value. The sum of story estimates planned for the current iteration cannot exceed the sum of estimates  completed  in the previous iteration.   Whole Team The team consists of developers, business analysts, QA, project managers, etc. The team works together in a lab space or open area where collaboration and communication are maximized.   Acceptance Tests Stories and features are defined by automated tests written by the business analysts, and QA. No story or  feature  can be said to be done until the suite of acceptance tests that define it are passing.   Small Releases Systems are released to production, or pre-production very frequently. An interval of 2-3 months is the maximum. The minimum can be once per iteration.   Continuous Integration The whole system is built and tested end-to-end several times each day. While new tests are made to pass, no previously passing tests are allowed to break. Developers must continuously keep the system in a deployable state.   Collective Ownership Code, and other work artifacts, are not owned by individuals. Any member of the team may work on any artifact at any time.   Coding Standard Code, and other work artifacts, look as if they were written by the team. Each team member follows the team standard for format and appearance of the artifacts.   Metaphor Names within code and other work artifacts are chosen to be evocative of the system being created.   Sustainable Pace Building  software  is a marathon, not a sprint. Team members must run at a rate they can sustain for the long haul. Overtime must be carefully controlled and limited. Tired people do not win.   Pair Programming Code and other work artifacts are produced by pairs of individuals working together. One member of the pair is responsible for the task at hand, and the other helps out. Pairs change frequently (every two hours or so) but responsibility stays with the owner.   Test Driven Development Developers are not allowed to write production code until they have written a failing unit test. They may not write more of a unit test than is sufficient to fail. They may not write more production code than is sufficient to pass the failing test. The unit tests are maintained and executed as part of the build process. No previously passing unit test is allowed to fail.   Refactoring Code, and other work artifacts, are continuously reviewed and kept as clean as possible. It is not sufficient that code works; it must also be clean.   Simple Design The simplest design that suffices for the task at hand, is the right design. More complex and general designs may become useful later, but not now. We do not wish to carry the weight of that complexity while it is not needed. Sufficient for the day are the complexities therein.
  6. User requirements come to the development team in what we call “ Stories ” A project velocity is used to determine if the iteration is over booked or not . • Total up the time estimates in ideal programming days of the tasks, this must not exceed the project velocity from the previous iteration. If the iteration has too much then the customer must choose user stories to be put off until a later iteration Beginning of iteration: the team gets together with the customer for a planning meeting. In that meeting, they go over the features the customer wants done in that iteration, breaking each feature down into individual engineering tasks. Individual developers then sign up for specific tasks, and estimate those tasks. No developer is allowed to sign up for more work in the coming iteration than he completed in the previous iteration. During the rest of the iteration, the team will implement the features they signed up for, pair programming on all production code At the end of the iteration (usually on a Friday), the programmers deliver a working system to the customer. The system may not be complete, but all functionality that is implemented works completely, without bugs. The customer accepts delivery, and the team goes home early. The next Monday everyone meets again to plan the next iteration, and the cycle repeats itself.
  7. In my experience, Scrum is the more likely starting point when the adoption of agile is driven by management. XP is the more likely starting point when the adoption of agile is driven by developers. In my view? Ideally you would do both. Or at least elements of both. And you would  start  with the one that addresses the issues causing you to adopt agile in the first place. regression test: test against test case data Unit test: developer write test functions Acceptance test: Perform to make sure if the work fulfill the requirements