SlideShare une entreprise Scribd logo
1  sur  10
Télécharger pour lire hors ligne
Agile Software Development in the Large
1




     Agile Software Development
             in the Large



                     QCon San Francisco 2007
                          Jutta Eckstein




Agile Software Development in the Large
2


                       What Does “Large“ Mean?


    • Large in ...
       •   scope
       •   time
       •   people
       •   money
       •   risks
    • We focus on „Large Teams“
       • which implies everything else
    • Large is relative
       • 1, 2, 10, 100, 2000 people
                                                 ©2004-2007 by IT-communication.com




                                                                                      1
Agile Software Development in the Large
3


                            „Large“ and Agile Methods


    • XP
       • typical team size < 12
    • Scrum
       • Scrum of Scrums
    • Crystal
       • different colors for different team sizes:
           • clear: for teams < 10
           • orange: for teams < 40
           • red, blue, ... (not defined yet)
    • FDD
       • teams are assembled for designing a feature
                                                                   ©2004-2007 by IT-communication.com




Agile Software Development in the Large
4


                              The Agile Value System

    Agile development is defined by the value system:
       Individuals and interactions
               over processes and tools
       Working software
               over comprehensive documentation
       Customer collaboration
               over contract negotiation
       Responding to change
               over following a plan


    That is, while there is value in the items on the right, we
      value the items on the left more.
                                                  Source: http://agilemanifesto.org
                                                                   ©2004-2007 by IT-communication.com




                                                                                                        2
Agile Software Development in the Large
5


                    Agile Value System is based on Principles

    •   Early and continuous delivery of valuable software
    •   Welcome changing requirements
    •   Deliver working software frequently
    •   Business people and developers work together
    •   Trust motivated individuals
    •   Face-to-face conversation
    •   Working software is the primary measure of progress
    •   Promote sustainable development
    •   Technical excellence and good design
    •   Simplicity is essential
    •   Self-organizing teams
    •   Team reflection and adjustment
                                                                ©2004-2007 by IT-communication.com




Agile Software Development in the Large
6


                       Deliver Working Software Frequently

    • No need to prolong development cycles
        • To steer in the right direction you need frequent
          feedback
        • Short cycles to reduce all risks
    • Two-week iterations have been proven
        • Balance risk reduction with feature
          accomplishment
        • Ensure delivery at the end of the iteration
    • Same heartbeat across all sites
        • Holidays can require some adaptation




                                                                ©2004-2007 by IT-communication.com




                                                                                                     3
Agile Software Development in the Large
7


                          Delivery of Valuable Software

    • Plan for accomplishing a valuable feature
       • Often unusual for large teams
          • They are used to develop and plan against components or activities.
       • Accomplishment means integration, test and documentation
          •   Delivery


    • Structure the teams along features
       • For ensuring the business value and the customer‘s advantage
       • Feature teams
          • Comprehend all necessary roles and all required know-how




                                                                       ©2004-2007 by IT-communication.com




Agile Software Development in the Large
8


                              Customer Involvement


    Defined single customer is rare, more typical are:
    • Large invisible customer base
       • Typical for standard software
    • Community of customers
       • Often not homogenous, but competitive
       • No accepted representative

    Therefore:
    • „Customer on-site office“
       • Specifies and performs acceptance tests
    • Customer surrogate
       • Product Owner

                                                                       ©2004-2007 by IT-communication.com




                                                                                                            4
Agile Software Development in the Large
9


                               Welcome Change


     Plan driven versus planning driven
     • There is no such thing as a final plan at the
       beginning of the project
     • Feedback has a direct impact on the plan

          „A plan is nothing;
          planning is everything.“
                                  Dwight D. Eisenhower



                                                         ©2004-2007 by IT-communication.com




Agile Software Development in the Large
10


                      Promote Sustainable Development


     • Amount of work must match amount of time
       • Realistic planning
       • Consider vacation and real time
     • Reviews and code inspection
       • External
       • Internal (by developers and scripts)
          •   Review team
          •   Continuously: pair programming




                                                         ©2004-2007 by IT-communication.com




                                                                                              5
Agile Software Development in the Large
11


                        Trust Motivated Individuals


     Trust is based on:
       •   Communication
       •   Transparency
       •   Honesty
       •   Empowerment for decisions
       •   Touch

     Trust regards all:
       • Developers
       • Customers
       • Managers

                                                      ©2004-2007 by IT-communication.com




Agile Software Development in the Large
12


                        Face-to-Face Conversation


     • Face-to-face communication is always preferred
     • Frequent Synchronization is a must
       •   to have a common understanding
       •   to deal with roles
       •   to deal with changes
       •   to deal with problems
       •   to get feedback
     • Think about:
       • People exchange
       • Communication facilitator
       • Different communication channels
                                                      ©2004-2007 by IT-communication.com




                                                                                           6
Agile Software Development in the Large
13


                                Simplicity is Essential

     • Conceptual Integrity
        • „Simplicity comes from conceptual integrity“
                                            [David Parnas, XP2002]
        • A system architect is the main step towards conceptual integrity


     • Architectural Lead pulls the strings
        • Communicates the vision
        • Single point for
            • Key ideas
            • Technical responsibility assignments
            • Technical decisions
        • A servant with courage and experience


                                                                   ©2004-2007 by IT-communication.com




Agile Software Development in the Large
14


                  Continuous Attention to Technical Excellence


     • A good (and simple) design is never easy
        • And: Make it right the first time never works
        • The best architecture evolves
     • Tests ensure the existing functionality when
       enhancing and changing the code
        • Provide the safety net for refactoring
        • Synchronized with development
        • Automatically repeatable
     • Don‘t try to finalize the architecture before
       growing the team
        • Feature teams will formulate the requirements

                                                                   ©2004-2007 by IT-communication.com




                                                                                                        7
Agile Software Development in the Large
15


                        Working Software requires Integration


     • Changes will be integrated as often as possible
        • Makes progress visible and measurable
        • Conflicts are easier to solve, the more often integration
          happens
     • Each integration results in a running system
        • Provides immediate feedback
     • Integration needs support
        • Plan at least 10% of development effort for
          integration/build


                                                                ©2004-2007 by IT-communication.com




Agile Software Development in the Large
16


                       Regular Team Reflection and Adjustment

     • Iteration Review
       • Revisit goals for the past iteration
       • Present deliveries – working software
       • Acceptance / Rejection
     • Retrospective
       • Reflect on:
          • Things that worked well
          • Things that need to be improved
          • Things that are still difficult
       • Define an action plan on the top 3
       • Staged retrospective
          • In subteams
          • With team representatives

                                                                ©2004-2007 by IT-communication.com




                                                                                                     8
Agile Software Development in the Large
17


                            Self-Organizing Teams


     • People and teams are different

     • Let teams decide
       • Each team defines its own process
       • Retrospectives help to find the best process for this team

     • Don‘t over specify and overrule
       • Use a starting line and adjust from there
          • E.g. the experience of the project members is a good start

     • Remember:
       • “Individuals and interactions over processes and tools”
                                                                 ©2004-2007 by IT-communication.com




Agile Software Development in the Large
18


                               Lessons Learned

     • Agile Manifesto provides a guideline for scaling
     • Feature teams and product owner(s) ensure the business
       value
     • Risk reduction by short feedback cycles

     Charles Darwin:



                                                „It is not the strongest
                                           of the species that survive,
                                               nor the most intelligent,
                             but the ones most responsive to change.“
                                                                 ©2004-2007 by IT-communication.com




                                                                                                      9
Agile Software Development in the Large
19


                             Many Thanks!


     Contact information:

     Jutta Eckstein

     je@it-communication.com
     www.it-communication.com




                                            ©2004-2007 by IT-communication.com




                                                                                 10

Contenu connexe

Tendances

Agile presentation ONA12
Agile presentation ONA12Agile presentation ONA12
Agile presentation ONA12
vpowers
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition
Eric Ries
 

Tendances (19)

Agile and Secure
Agile and SecureAgile and Secure
Agile and Secure
 
Scrum
ScrumScrum
Scrum
 
Lean Principles
Lean PrinciplesLean Principles
Lean Principles
 
Business value of Agile : A People10 Showcase
Business value of Agile : A People10 ShowcaseBusiness value of Agile : A People10 Showcase
Business value of Agile : A People10 Showcase
 
Accelerating Requirements with Process-Centric Prototyping
Accelerating Requirements with Process-Centric PrototypingAccelerating Requirements with Process-Centric Prototyping
Accelerating Requirements with Process-Centric Prototyping
 
Agile Maintenance
Agile MaintenanceAgile Maintenance
Agile Maintenance
 
Gartner ADDI 2018: Pivotal & Service NSW
Gartner ADDI 2018: Pivotal & Service NSWGartner ADDI 2018: Pivotal & Service NSW
Gartner ADDI 2018: Pivotal & Service NSW
 
Towards a Push-Button Release
Towards a Push-Button ReleaseTowards a Push-Button Release
Towards a Push-Button Release
 
Agile presentation ONA12
Agile presentation ONA12Agile presentation ONA12
Agile presentation ONA12
 
Managing Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG SeattleManaging Software Debt - Quality Debt Focus for QASIG Seattle
Managing Software Debt - Quality Debt Focus for QASIG Seattle
 
Offshore Agile Maintenance
Offshore Agile MaintenanceOffshore Agile Maintenance
Offshore Agile Maintenance
 
Building a Compelling Business Case for Continuous Delivery
Building a Compelling Business Case for Continuous DeliveryBuilding a Compelling Business Case for Continuous Delivery
Building a Compelling Business Case for Continuous Delivery
 
CTLR 2010 Issue 7 Waterfall Contract
CTLR 2010 Issue 7 Waterfall ContractCTLR 2010 Issue 7 Waterfall Contract
CTLR 2010 Issue 7 Waterfall Contract
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition
 
The Software Debt Bubble: Is It About to Burst
The Software Debt Bubble: Is It About to BurstThe Software Debt Bubble: Is It About to Burst
The Software Debt Bubble: Is It About to Burst
 
Testing in an Agile Context 2011
Testing in an Agile Context 2011Testing in an Agile Context 2011
Testing in an Agile Context 2011
 
How to be an agile programmer.
How to be an agile programmer.How to be an agile programmer.
How to be an agile programmer.
 
Agile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainAgile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun Again
 
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy WebinarPutting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
Putting the Pro in Process Design with Donna Knapp - an ITSM Academy Webinar
 

En vedette

Second Life How It Works And How It Doesnt
Second Life How It Works And How It DoesntSecond Life How It Works And How It Doesnt
Second Life How It Works And How It Doesnt
ConSanFrancisco123
 
Linked In Lessons Learned And Growth And Scalability
Linked In Lessons Learned And Growth And ScalabilityLinked In Lessons Learned And Growth And Scalability
Linked In Lessons Learned And Growth And Scalability
ConSanFrancisco123
 
ApresentaçãO2jkjkj
ApresentaçãO2jkjkjApresentaçãO2jkjkj
ApresentaçãO2jkjkj
jez.freires
 
Introduction Challenges In Agile And How To Overcome Them
Introduction Challenges In Agile And How To Overcome ThemIntroduction Challenges In Agile And How To Overcome Them
Introduction Challenges In Agile And How To Overcome Them
ConSanFrancisco123
 
Business Natural Languages Development In Ruby
Business Natural Languages Development In RubyBusiness Natural Languages Development In Ruby
Business Natural Languages Development In Ruby
ConSanFrancisco123
 

En vedette (7)

Second Life How It Works And How It Doesnt
Second Life How It Works And How It DoesntSecond Life How It Works And How It Doesnt
Second Life How It Works And How It Doesnt
 
Linked In Lessons Learned And Growth And Scalability
Linked In Lessons Learned And Growth And ScalabilityLinked In Lessons Learned And Growth And Scalability
Linked In Lessons Learned And Growth And Scalability
 
Building Blueprint With Gwt
Building Blueprint With GwtBuilding Blueprint With Gwt
Building Blueprint With Gwt
 
ApresentaçãO2jkjkj
ApresentaçãO2jkjkjApresentaçãO2jkjkj
ApresentaçãO2jkjkj
 
Introduction Challenges In Agile And How To Overcome Them
Introduction Challenges In Agile And How To Overcome ThemIntroduction Challenges In Agile And How To Overcome Them
Introduction Challenges In Agile And How To Overcome Them
 
Security Cas And Open Id
Security Cas And Open IdSecurity Cas And Open Id
Security Cas And Open Id
 
Business Natural Languages Development In Ruby
Business Natural Languages Development In RubyBusiness Natural Languages Development In Ruby
Business Natural Languages Development In Ruby
 

Similaire à Agile Software Development In The Large

Aspeo Corporate Presentation
Aspeo Corporate PresentationAspeo Corporate Presentation
Aspeo Corporate Presentation
ratieh
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
Richard Cheng
 
The quality attribute of upgradability
The quality attribute of upgradabilityThe quality attribute of upgradability
The quality attribute of upgradability
Len Bass
 
Visual studio 2010 alm keynote sgp
Visual studio 2010 alm keynote sgpVisual studio 2010 alm keynote sgp
Visual studio 2010 alm keynote sgp
Spiffy
 

Similaire à Agile Software Development In The Large (20)

Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
Aspeo Corporate Presentation
Aspeo Corporate PresentationAspeo Corporate Presentation
Aspeo Corporate Presentation
 
Agile Development Methodologies
Agile Development MethodologiesAgile Development Methodologies
Agile Development Methodologies
 
Heart of agile by Pierre Hervouet
Heart of agile by Pierre HervouetHeart of agile by Pierre Hervouet
Heart of agile by Pierre Hervouet
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 
The quality attribute of upgradability
The quality attribute of upgradabilityThe quality attribute of upgradability
The quality attribute of upgradability
 
Introductionto Agile Executive Overview Gpi Asia Rev2
Introductionto Agile Executive Overview Gpi Asia Rev2Introductionto Agile Executive Overview Gpi Asia Rev2
Introductionto Agile Executive Overview Gpi Asia Rev2
 
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?
 
The Stream Process™ for Defining Projects
The Stream Process™ for Defining ProjectsThe Stream Process™ for Defining Projects
The Stream Process™ for Defining Projects
 
From the sandbox to production
From the sandbox to productionFrom the sandbox to production
From the sandbox to production
 
From Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym FedorovFrom Sandbox to Production by Vadym Fedorov
From Sandbox to Production by Vadym Fedorov
 
Introducing Agile Methodologies
Introducing Agile MethodologiesIntroducing Agile Methodologies
Introducing Agile Methodologies
 
Oop 1
Oop 1Oop 1
Oop 1
 
How Do You Build Software? Software Engineering Practices of an Agile Developer
How Do You Build Software? Software Engineering Practices of an Agile DeveloperHow Do You Build Software? Software Engineering Practices of an Agile Developer
How Do You Build Software? Software Engineering Practices of an Agile Developer
 
When is Light Right?
When is Light Right?When is Light Right?
When is Light Right?
 
Accelerate Your Time to a Successful Deployment with DevOps
Accelerate Your Time to a Successful Deployment with DevOpsAccelerate Your Time to a Successful Deployment with DevOps
Accelerate Your Time to a Successful Deployment with DevOps
 
Essential Tips for Modern Requirements Management
Essential Tips for Modern Requirements Management Essential Tips for Modern Requirements Management
Essential Tips for Modern Requirements Management
 
Precis Book Agile mgmt software engineering david j andreson summary viramdas...
Precis Book Agile mgmt software engineering david j andreson summary viramdas...Precis Book Agile mgmt software engineering david j andreson summary viramdas...
Precis Book Agile mgmt software engineering david j andreson summary viramdas...
 
Visual studio 2010 alm keynote sgp
Visual studio 2010 alm keynote sgpVisual studio 2010 alm keynote sgp
Visual studio 2010 alm keynote sgp
 

Plus de ConSanFrancisco123

Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The Market
ConSanFrancisco123
 
Yahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The CloudYahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The Cloud
ConSanFrancisco123
 
Yellowpagescom Behind The Curtain
Yellowpagescom Behind The CurtainYellowpagescom Behind The Curtain
Yellowpagescom Behind The Curtain
ConSanFrancisco123
 
Teamwork Is An Individual Skill How To Build Any Team Any Time
Teamwork Is An Individual Skill How To Build Any Team Any TimeTeamwork Is An Individual Skill How To Build Any Team Any Time
Teamwork Is An Individual Skill How To Build Any Team Any Time
ConSanFrancisco123
 
Agility Possibilities At A Personal Level
Agility Possibilities At A Personal LevelAgility Possibilities At A Personal Level
Agility Possibilities At A Personal Level
ConSanFrancisco123
 
Res Tful Enterprise Development
Res Tful Enterprise DevelopmentRes Tful Enterprise Development
Res Tful Enterprise Development
ConSanFrancisco123
 
Behind The Scenes At My Spacecom
Behind The Scenes At My SpacecomBehind The Scenes At My Spacecom
Behind The Scenes At My Spacecom
ConSanFrancisco123
 
Making Threat Modeling Useful To Software Development
Making Threat Modeling Useful To Software DevelopmentMaking Threat Modeling Useful To Software Development
Making Threat Modeling Useful To Software Development
ConSanFrancisco123
 
Secure Programming With Static Analysis
Secure Programming With Static AnalysisSecure Programming With Static Analysis
Secure Programming With Static Analysis
ConSanFrancisco123
 
Orbitz World Wide An Architectures Response To Growth And Change
Orbitz World Wide An Architectures Response To Growth And ChangeOrbitz World Wide An Architectures Response To Growth And Change
Orbitz World Wide An Architectures Response To Growth And Change
ConSanFrancisco123
 
Introduction Architectures Youve Always Wondered About
Introduction Architectures Youve Always Wondered AboutIntroduction Architectures Youve Always Wondered About
Introduction Architectures Youve Always Wondered About
ConSanFrancisco123
 
Yahoo Communities Architecture Unlikely Bedfellows
Yahoo Communities Architecture Unlikely BedfellowsYahoo Communities Architecture Unlikely Bedfellows
Yahoo Communities Architecture Unlikely Bedfellows
ConSanFrancisco123
 
Designing Res Tful Rails Applications
Designing Res Tful Rails ApplicationsDesigning Res Tful Rails Applications
Designing Res Tful Rails Applications
ConSanFrancisco123
 
No More Hops Towards A Linearly Scalable Application Infrastructure
No More Hops Towards A Linearly Scalable Application InfrastructureNo More Hops Towards A Linearly Scalable Application Infrastructure
No More Hops Towards A Linearly Scalable Application Infrastructure
ConSanFrancisco123
 
Clustered Architecture Patterns Delivering Scalability And Availability
Clustered Architecture Patterns Delivering Scalability And AvailabilityClustered Architecture Patterns Delivering Scalability And Availability
Clustered Architecture Patterns Delivering Scalability And Availability
ConSanFrancisco123
 

Plus de ConSanFrancisco123 (20)

Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The Market
 
Yahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The CloudYahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The Cloud
 
Ruby V Ms A Comparison
Ruby V Ms A ComparisonRuby V Ms A Comparison
Ruby V Ms A Comparison
 
Yellowpagescom Behind The Curtain
Yellowpagescom Behind The CurtainYellowpagescom Behind The Curtain
Yellowpagescom Behind The Curtain
 
Teamwork Is An Individual Skill How To Build Any Team Any Time
Teamwork Is An Individual Skill How To Build Any Team Any TimeTeamwork Is An Individual Skill How To Build Any Team Any Time
Teamwork Is An Individual Skill How To Build Any Team Any Time
 
Agility Possibilities At A Personal Level
Agility Possibilities At A Personal LevelAgility Possibilities At A Personal Level
Agility Possibilities At A Personal Level
 
Res Tful Enterprise Development
Res Tful Enterprise DevelopmentRes Tful Enterprise Development
Res Tful Enterprise Development
 
Gallio Crafting A Toolchain
Gallio Crafting A ToolchainGallio Crafting A Toolchain
Gallio Crafting A Toolchain
 
10 Ways To Improve Your Code
10 Ways To Improve Your Code10 Ways To Improve Your Code
10 Ways To Improve Your Code
 
Http Status Report
Http Status ReportHttp Status Report
Http Status Report
 
Behind The Scenes At My Spacecom
Behind The Scenes At My SpacecomBehind The Scenes At My Spacecom
Behind The Scenes At My Spacecom
 
Soa And Web Services Security
Soa And Web Services SecuritySoa And Web Services Security
Soa And Web Services Security
 
Making Threat Modeling Useful To Software Development
Making Threat Modeling Useful To Software DevelopmentMaking Threat Modeling Useful To Software Development
Making Threat Modeling Useful To Software Development
 
Secure Programming With Static Analysis
Secure Programming With Static AnalysisSecure Programming With Static Analysis
Secure Programming With Static Analysis
 
Orbitz World Wide An Architectures Response To Growth And Change
Orbitz World Wide An Architectures Response To Growth And ChangeOrbitz World Wide An Architectures Response To Growth And Change
Orbitz World Wide An Architectures Response To Growth And Change
 
Introduction Architectures Youve Always Wondered About
Introduction Architectures Youve Always Wondered AboutIntroduction Architectures Youve Always Wondered About
Introduction Architectures Youve Always Wondered About
 
Yahoo Communities Architecture Unlikely Bedfellows
Yahoo Communities Architecture Unlikely BedfellowsYahoo Communities Architecture Unlikely Bedfellows
Yahoo Communities Architecture Unlikely Bedfellows
 
Designing Res Tful Rails Applications
Designing Res Tful Rails ApplicationsDesigning Res Tful Rails Applications
Designing Res Tful Rails Applications
 
No More Hops Towards A Linearly Scalable Application Infrastructure
No More Hops Towards A Linearly Scalable Application InfrastructureNo More Hops Towards A Linearly Scalable Application Infrastructure
No More Hops Towards A Linearly Scalable Application Infrastructure
 
Clustered Architecture Patterns Delivering Scalability And Availability
Clustered Architecture Patterns Delivering Scalability And AvailabilityClustered Architecture Patterns Delivering Scalability And Availability
Clustered Architecture Patterns Delivering Scalability And Availability
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Agile Software Development In The Large

  • 1. Agile Software Development in the Large 1 Agile Software Development in the Large QCon San Francisco 2007 Jutta Eckstein Agile Software Development in the Large 2 What Does “Large“ Mean? • Large in ... • scope • time • people • money • risks • We focus on „Large Teams“ • which implies everything else • Large is relative • 1, 2, 10, 100, 2000 people ©2004-2007 by IT-communication.com 1
  • 2. Agile Software Development in the Large 3 „Large“ and Agile Methods • XP • typical team size < 12 • Scrum • Scrum of Scrums • Crystal • different colors for different team sizes: • clear: for teams < 10 • orange: for teams < 40 • red, blue, ... (not defined yet) • FDD • teams are assembled for designing a feature ©2004-2007 by IT-communication.com Agile Software Development in the Large 4 The Agile Value System Agile development is defined by the value system: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. Source: http://agilemanifesto.org ©2004-2007 by IT-communication.com 2
  • 3. Agile Software Development in the Large 5 Agile Value System is based on Principles • Early and continuous delivery of valuable software • Welcome changing requirements • Deliver working software frequently • Business people and developers work together • Trust motivated individuals • Face-to-face conversation • Working software is the primary measure of progress • Promote sustainable development • Technical excellence and good design • Simplicity is essential • Self-organizing teams • Team reflection and adjustment ©2004-2007 by IT-communication.com Agile Software Development in the Large 6 Deliver Working Software Frequently • No need to prolong development cycles • To steer in the right direction you need frequent feedback • Short cycles to reduce all risks • Two-week iterations have been proven • Balance risk reduction with feature accomplishment • Ensure delivery at the end of the iteration • Same heartbeat across all sites • Holidays can require some adaptation ©2004-2007 by IT-communication.com 3
  • 4. Agile Software Development in the Large 7 Delivery of Valuable Software • Plan for accomplishing a valuable feature • Often unusual for large teams • They are used to develop and plan against components or activities. • Accomplishment means integration, test and documentation • Delivery • Structure the teams along features • For ensuring the business value and the customer‘s advantage • Feature teams • Comprehend all necessary roles and all required know-how ©2004-2007 by IT-communication.com Agile Software Development in the Large 8 Customer Involvement Defined single customer is rare, more typical are: • Large invisible customer base • Typical for standard software • Community of customers • Often not homogenous, but competitive • No accepted representative Therefore: • „Customer on-site office“ • Specifies and performs acceptance tests • Customer surrogate • Product Owner ©2004-2007 by IT-communication.com 4
  • 5. Agile Software Development in the Large 9 Welcome Change Plan driven versus planning driven • There is no such thing as a final plan at the beginning of the project • Feedback has a direct impact on the plan „A plan is nothing; planning is everything.“ Dwight D. Eisenhower ©2004-2007 by IT-communication.com Agile Software Development in the Large 10 Promote Sustainable Development • Amount of work must match amount of time • Realistic planning • Consider vacation and real time • Reviews and code inspection • External • Internal (by developers and scripts) • Review team • Continuously: pair programming ©2004-2007 by IT-communication.com 5
  • 6. Agile Software Development in the Large 11 Trust Motivated Individuals Trust is based on: • Communication • Transparency • Honesty • Empowerment for decisions • Touch Trust regards all: • Developers • Customers • Managers ©2004-2007 by IT-communication.com Agile Software Development in the Large 12 Face-to-Face Conversation • Face-to-face communication is always preferred • Frequent Synchronization is a must • to have a common understanding • to deal with roles • to deal with changes • to deal with problems • to get feedback • Think about: • People exchange • Communication facilitator • Different communication channels ©2004-2007 by IT-communication.com 6
  • 7. Agile Software Development in the Large 13 Simplicity is Essential • Conceptual Integrity • „Simplicity comes from conceptual integrity“ [David Parnas, XP2002] • A system architect is the main step towards conceptual integrity • Architectural Lead pulls the strings • Communicates the vision • Single point for • Key ideas • Technical responsibility assignments • Technical decisions • A servant with courage and experience ©2004-2007 by IT-communication.com Agile Software Development in the Large 14 Continuous Attention to Technical Excellence • A good (and simple) design is never easy • And: Make it right the first time never works • The best architecture evolves • Tests ensure the existing functionality when enhancing and changing the code • Provide the safety net for refactoring • Synchronized with development • Automatically repeatable • Don‘t try to finalize the architecture before growing the team • Feature teams will formulate the requirements ©2004-2007 by IT-communication.com 7
  • 8. Agile Software Development in the Large 15 Working Software requires Integration • Changes will be integrated as often as possible • Makes progress visible and measurable • Conflicts are easier to solve, the more often integration happens • Each integration results in a running system • Provides immediate feedback • Integration needs support • Plan at least 10% of development effort for integration/build ©2004-2007 by IT-communication.com Agile Software Development in the Large 16 Regular Team Reflection and Adjustment • Iteration Review • Revisit goals for the past iteration • Present deliveries – working software • Acceptance / Rejection • Retrospective • Reflect on: • Things that worked well • Things that need to be improved • Things that are still difficult • Define an action plan on the top 3 • Staged retrospective • In subteams • With team representatives ©2004-2007 by IT-communication.com 8
  • 9. Agile Software Development in the Large 17 Self-Organizing Teams • People and teams are different • Let teams decide • Each team defines its own process • Retrospectives help to find the best process for this team • Don‘t over specify and overrule • Use a starting line and adjust from there • E.g. the experience of the project members is a good start • Remember: • “Individuals and interactions over processes and tools” ©2004-2007 by IT-communication.com Agile Software Development in the Large 18 Lessons Learned • Agile Manifesto provides a guideline for scaling • Feature teams and product owner(s) ensure the business value • Risk reduction by short feedback cycles Charles Darwin: „It is not the strongest of the species that survive, nor the most intelligent, but the ones most responsive to change.“ ©2004-2007 by IT-communication.com 9
  • 10. Agile Software Development in the Large 19 Many Thanks! Contact information: Jutta Eckstein je@it-communication.com www.it-communication.com ©2004-2007 by IT-communication.com 10