SlideShare a Scribd company logo
1 of 42
Agile Software Development
          making programming fun again
How Projects Really Work




Software engineering done right.
How the customer explained it




Software engineering done right.
How the project leader understood it




Software engineering done right.
How the analyst designed it




Software engineering done right.
How the programmer wrote it




Software engineering done right.
How the business consultant described it




Software engineering done right.
How the project was documented




Software engineering done right.
How much the project cost




Software engineering done right.
What the customer really needed




Software engineering done right.
“CHAOS Report” by Standish Group




Software engineering done right.
Challenged Projects - Reasons
 
      Lack of User Input           
                                       Technology
 
      Incomplete                       Incompetence
      Requirements &               
                                       Lack of Resources
      Specifications               
                                       Unrealistic Expectations
 
      Changing Requirements        
                                       Unclear Objectives
      & Specifications             
                                       Unrealistic Time Frames
 
      Lack of Executive            
                                       New Technology
      Support




Software engineering done right.
Failed Projects - Reasons
 
      Incomplete                   
                                       Changing Requirements
      Requirements                     & Specifications
 
      Lack of User                 
                                       Lack of Planning
      Involvement                  
                                       Didn't Need It Any
 
      Lack of Resources                Longer
 
      Unrealistic Expectations     
                                       Lack of IT Management
 
      Lack of Executive            
                                       Technology Illiteracy
      Support




Software engineering done right.
Successful Projects - Reasons
 
      User involvement             
                                       Project manager
 
      Executive management             expertise
      support                      
                                       Financial management
 
      Clear business               
                                       Skilled resources
      objectives                   
                                       Formal methodology
 
      Optimizing scope             
                                       Standard tools and
 
      Agile process                    methodology




Software engineering done right.
What's wrong with “Waterfall”?




Software engineering done right.
What's wrong with “Waterfall”?

 
         Mistakes are hard to find in early stages
 
         Expensive to fix mistakes in later stages
 
         Customers don't know what they want from the
         beginning
 
         Developers don't know how long a project will take
         from the beginning
 
         Business needs change




Software engineering done right.
Effects of “Waterfall”
 
        Death March projects
         ‒
               Mis-estimated schedules lead to successive overtime
         ‒
               Delays in one stage cause delays in succeeding stages
 
        Conflict between customers and developers
         ‒
               Customers don't get the software that they want
         ‒
               Developers don't get clear requirements
 
        Process and tool obsession
         ‒
               People focus on creating artifacts but lose sight of the
               goal of working software
         ‒
               Processes replace natural communication


Software engineering done right.
The Agile Manifesto

 We are uncovering better ways of developing software by doing it and helping
     others do it. Through this work we have come to value:
 •      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.




Software engineering done right.
Selected Practices

 
        Iterative Development
 
        User Stories
 
        Test-Driven Development
 
        One Team
 
        Self-Managed Teams
 
        Sustainable Pace




Software engineering done right.
Iterative Development

 
        Software development as an evolutionary process




Software engineering done right.
Iterative Development

 
        All steps of SDLC are done at each iteration




Software engineering done right.
Iterative Development

 
        Working software produced at each iteration
       –     No such thing as “X% complete”, only done and not
             done




Software engineering done right.
Iterative Development

 
        Benefits
         ‒       Customers can evaluate what they want and adjust
                 requirements
         ‒       Developers get better estimates of future tasks
         ‒       Better communication between customer and
                 developers and among developers
                        
                                   Talk is about something concrete, not abstract
         ‒       Just enough artifacts are created to produce working
                 software
                        
                                   Less waste



Software engineering done right.
User Stories

 Traditional requirements: “The system shall... the
   system shall...”




Software engineering done right.
User Stories

 As a < user role >
 In order to < business goal >
 I want to < behavior >

 
        Focus on business goals
       - Requirements have context
 
        Story-telling is the most natural way of
        communication


Software engineering done right.
Test-Driven Development
       Bugs are harder to find
        and fix when found later
       Modifying code tends to
        introduce bugs
       - Difficult to know if one has
         introduced bugs without
         tests
       Manual tests are
        expensive to repeat and
        provide limited
        information

Software engineering done right.
Test-Driven Development

 
        Programmers should write automated tests as they
        code
       - Write test before implementation
 
        Provides immediate feedback if their code works
 
        Builds suite of automated tests that can be run each
        time code is modified
 
        Makes it safe to modify existing code
 
        Frameworks: JUnit, NUnit, hundreds of others...



Software engineering done right.
Software engineering done right.
TDD Benefits

 
        Code is safe to modify
 
        Tests are excellent documentation
       - Programmers hate writing documentation, but they like to
         code
 
        Design improves
       - Programmers think of their code's behavior before coding
       - Programmers see their code from a second-person's
         point-of-view
                        •     Is my code readable? Easy to use?
       - Components become decoupled to facilitate testing

Software engineering done right.
One Team

 
        Everyone is considered
        part of one team,
        including the customer
 
        Developers, testers,
        business analysts,
        project managers, web
        designers, etc, work in
        the same place,
                   place
        usually on the same
        table


Software engineering done right.
Software engineering done right.
One Team

 
         Faster communication
             –      Issues resolved faster
 
         Natural communication
             –      Face-to-face, ad hoc and continuous throughout the
                    day
 
         Less misunderstanding and antagonism between
         functional groups




Software engineering done right.
Self-Managed Teams

 When teams manage themselves...
 
     Higher motivation
 
     More creative solutions
 
     Faster resolution of issues
 
     Drive for continuous improvement




Software engineering done right.
Self-Managed Teams

 Practices/Tools
 
     Daily Stand-Up Meetings
 
     Retrospectives
 
     Big Visible Charts,
     Whiteboards
 
     Direct access to
     customers




Software engineering done right.
Sustainable Pace

 
        Overtime leads to
        lower productivity
 
        Lowers morale




Software engineering done right.
Sustainable Pace

 
        Team should measure “velocity” at each iteration
 
        Keep work load within velocity
 
        If iteration load was underestimated, ask customer
        to decide which features to move to future iterations




Software engineering done right.
Other Practices...
 
            Planning
 
            Tracking
 
            Continuous Integration
 
            Pair Programming
 
            Refactoring
 
            Planning Boards
 
            Burn-Down Charts
 
            Collective Code Ownership
 
            Coding Standards
 Many more...
Software engineering done right.
Agile at Orange & Bronze

 •        Been doing Agile since its foundation in 2005
             –      Before it became mainstream
 •        We've tried different methodologies and practices
             –      XP, Scrum, Kanban
             –      Not all practices work in all conditions
 •        The first to offer training in Agile methodologies and
          practices
             –      Scrum, TDD, Agile Business Analysis, Agile QA, etc
             –      Trainers are seasoned practictioners


Software engineering done right.
Open Workspaces




Software engineering done right.
Project Automation




Software engineering done right.
Collaborative Design




Software engineering done right.
Agile Training




Software engineering done right.

More Related Content

What's hot

The Business Analysts Role in Agile Software Development
The Business Analysts Role in Agile Software DevelopmentThe Business Analysts Role in Agile Software Development
The Business Analysts Role in Agile Software Developmentallan kelly
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureWee Witthawaskul
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveWee Witthawaskul
 
Solution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovSolution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovJavaDayUA
 
Software Modernization
Software ModernizationSoftware Modernization
Software ModernizationJavier Canovas
 
Why EPM Live? EPM Live Overview and Demo
Why EPM Live? EPM Live Overview and DemoWhy EPM Live? EPM Live Overview and Demo
Why EPM Live? EPM Live Overview and DemoEPM Live
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Ajay Danait
 
Moah Mini Upa2009
Moah Mini Upa2009Moah Mini Upa2009
Moah Mini Upa2009ayemoah
 
Agile Business Intelligence
Agile Business IntelligenceAgile Business Intelligence
Agile Business IntelligenceEvan Leybourn
 
Essential Elements Of Distributed Agile
Essential Elements Of Distributed AgileEssential Elements Of Distributed Agile
Essential Elements Of Distributed AgileVernon Stinebaker
 
Agile Maintenance
Agile MaintenanceAgile Maintenance
Agile MaintenanceNaresh Jain
 
Agile Overview As V1.2
Agile Overview As V1.2Agile Overview As V1.2
Agile Overview As V1.2Anjan Roy
 
Softexpert Proje ve Portfolio Yonetimi
Softexpert Proje ve Portfolio YonetimiSoftexpert Proje ve Portfolio Yonetimi
Softexpert Proje ve Portfolio YonetimiHydron Consulting Grup
 
ERP Implementation Methodology
ERP Implementation MethodologyERP Implementation Methodology
ERP Implementation MethodologyThanh Nguyen
 
Agile Business Intelligence - course notes
Agile Business Intelligence - course notesAgile Business Intelligence - course notes
Agile Business Intelligence - course notesEvan Leybourn
 

What's hot (20)

The Business Analysts Role in Agile Software Development
The Business Analysts Role in Agile Software DevelopmentThe Business Analysts Role in Agile Software Development
The Business Analysts Role in Agile Software Development
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Agile development
Agile developmentAgile development
Agile development
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
Kevin bryan coduru
Kevin bryan coduruKevin bryan coduru
Kevin bryan coduru
 
Bdd Introduction
Bdd IntroductionBdd Introduction
Bdd Introduction
 
Solution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovSolution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman Shramkov
 
Software Modernization
Software ModernizationSoftware Modernization
Software Modernization
 
Why EPM Live? EPM Live Overview and Demo
Why EPM Live? EPM Live Overview and DemoWhy EPM Live? EPM Live Overview and Demo
Why EPM Live? EPM Live Overview and Demo
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)
 
Moah Mini Upa2009
Moah Mini Upa2009Moah Mini Upa2009
Moah Mini Upa2009
 
A littlebook about agile
A littlebook about agileA littlebook about agile
A littlebook about agile
 
Agile Business Intelligence
Agile Business IntelligenceAgile Business Intelligence
Agile Business Intelligence
 
Essential Elements Of Distributed Agile
Essential Elements Of Distributed AgileEssential Elements Of Distributed Agile
Essential Elements Of Distributed Agile
 
Cu32604607
Cu32604607Cu32604607
Cu32604607
 
Agile Maintenance
Agile MaintenanceAgile Maintenance
Agile Maintenance
 
Agile Overview As V1.2
Agile Overview As V1.2Agile Overview As V1.2
Agile Overview As V1.2
 
Softexpert Proje ve Portfolio Yonetimi
Softexpert Proje ve Portfolio YonetimiSoftexpert Proje ve Portfolio Yonetimi
Softexpert Proje ve Portfolio Yonetimi
 
ERP Implementation Methodology
ERP Implementation MethodologyERP Implementation Methodology
ERP Implementation Methodology
 
Agile Business Intelligence - course notes
Agile Business Intelligence - course notesAgile Business Intelligence - course notes
Agile Business Intelligence - course notes
 

Viewers also liked (11)

Are you Agile enough?
Are you Agile enough?Are you Agile enough?
Are you Agile enough?
 
Technology trends and the skills you should learn
Technology trends and the skills you should learnTechnology trends and the skills you should learn
Technology trends and the skills you should learn
 
Why Most IT Projects Fail
Why Most IT Projects FailWhy Most IT Projects Fail
Why Most IT Projects Fail
 
Google Apps for Business with Archiving & Discovery
Google Apps for Business with Archiving & Discovery Google Apps for Business with Archiving & Discovery
Google Apps for Business with Archiving & Discovery
 
What is agile
What is agileWhat is agile
What is agile
 
Agile Executive Forum: Welcoming Remarks
Agile Executive  Forum: Welcoming RemarksAgile Executive  Forum: Welcoming Remarks
Agile Executive Forum: Welcoming Remarks
 
Agile Executive Forum: Agile Development Practices at Sabre
Agile Executive  Forum: Agile Development Practices at SabreAgile Executive  Forum: Agile Development Practices at Sabre
Agile Executive Forum: Agile Development Practices at Sabre
 
Lesser Known Opportunities in Technology
Lesser Known Opportunities in TechnologyLesser Known Opportunities in Technology
Lesser Known Opportunities in Technology
 
Agile Executive Forum: Agile and Outsourcing
Agile Executive Forum: Agile and OutsourcingAgile Executive Forum: Agile and Outsourcing
Agile Executive Forum: Agile and Outsourcing
 
Featuring JDK 7 Nio 2
Featuring JDK 7 Nio 2Featuring JDK 7 Nio 2
Featuring JDK 7 Nio 2
 
Agile Executive Forum: O&B Adoption Story
Agile Executive Forum: O&B Adoption StoryAgile Executive Forum: O&B Adoption Story
Agile Executive Forum: O&B Adoption Story
 

Similar to Agile Software Development - Making Programming Fun Again

Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Agile Injection, Varberg
Agile Injection, VarbergAgile Injection, Varberg
Agile Injection, VarbergFredrik Wendt
 
Modern Apps and App Lifecycle
Modern Apps and App LifecycleModern Apps and App Lifecycle
Modern Apps and App LifecycleMarc Hoppers
 
Ims Primavera
Ims PrimaveraIms Primavera
Ims Primaveracleary21
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTSMicrosoft Iceland
 
From Waterfall to Agile - from predictive to adaptive methods
From Waterfall to Agile - from predictive to adaptive methodsFrom Waterfall to Agile - from predictive to adaptive methods
From Waterfall to Agile - from predictive to adaptive methodsBjörn Jónsson
 
Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMDebora Di Piano
 
Planning for Fixed Price Agile projects. Second step_Problem investigation.
Planning for Fixed Price Agile projects. Second step_Problem investigation.Planning for Fixed Price Agile projects. Second step_Problem investigation.
Planning for Fixed Price Agile projects. Second step_Problem investigation.Транслируем.бел
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btechIIITA
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btechIIITA
 
SOFTWARE PROJECT MANAGEMENT TOOL PPT
SOFTWARE PROJECT MANAGEMENT TOOL PPTSOFTWARE PROJECT MANAGEMENT TOOL PPT
SOFTWARE PROJECT MANAGEMENT TOOL PPTSai Charan
 
Chapter 1 1 - intro ppt
Chapter 1   1 - intro pptChapter 1   1 - intro ppt
Chapter 1 1 - intro pptNancyBeaulah_R
 
BDD presentation
BDD presentationBDD presentation
BDD presentationtemebele
 
WorkEngine Overview
WorkEngine OverviewWorkEngine Overview
WorkEngine OverviewEPM Live
 
Heart of agile by Pierre Hervouet
Heart of agile by Pierre HervouetHeart of agile by Pierre Hervouet
Heart of agile by Pierre HervouetAgile ME
 

Similar to Agile Software Development - Making Programming Fun Again (20)

Agile software development
Agile software development Agile software development
Agile software development
 
Agile
AgileAgile
Agile
 
Agile Engineering Practices
Agile Engineering PracticesAgile Engineering Practices
Agile Engineering Practices
 
Poor Man's Kanban
Poor Man's KanbanPoor Man's Kanban
Poor Man's Kanban
 
Agile Injection, Varberg
Agile Injection, VarbergAgile Injection, Varberg
Agile Injection, Varberg
 
Modern Apps and App Lifecycle
Modern Apps and App LifecycleModern Apps and App Lifecycle
Modern Apps and App Lifecycle
 
Ims Primavera
Ims PrimaveraIms Primavera
Ims Primavera
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTS
 
From Waterfall to Agile - from predictive to adaptive methods
From Waterfall to Agile - from predictive to adaptive methodsFrom Waterfall to Agile - from predictive to adaptive methods
From Waterfall to Agile - from predictive to adaptive methods
 
Lanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALMLanzamiento Visual Studio 2012 - Modern ALM
Lanzamiento Visual Studio 2012 - Modern ALM
 
Planning for Fixed Price Agile projects. Second step_Problem investigation.
Planning for Fixed Price Agile projects. Second step_Problem investigation.Planning for Fixed Price Agile projects. Second step_Problem investigation.
Planning for Fixed Price Agile projects. Second step_Problem investigation.
 
Agile 101
Agile 101 Agile 101
Agile 101
 
SE chapter 4
SE chapter 4SE chapter 4
SE chapter 4
 
Se lect12 btech
Se lect12 btechSe lect12 btech
Se lect12 btech
 
Se lect13 btech
Se lect13 btechSe lect13 btech
Se lect13 btech
 
SOFTWARE PROJECT MANAGEMENT TOOL PPT
SOFTWARE PROJECT MANAGEMENT TOOL PPTSOFTWARE PROJECT MANAGEMENT TOOL PPT
SOFTWARE PROJECT MANAGEMENT TOOL PPT
 
Chapter 1 1 - intro ppt
Chapter 1   1 - intro pptChapter 1   1 - intro ppt
Chapter 1 1 - intro ppt
 
BDD presentation
BDD presentationBDD presentation
BDD presentation
 
WorkEngine Overview
WorkEngine OverviewWorkEngine Overview
WorkEngine Overview
 
Heart of agile by Pierre Hervouet
Heart of agile by Pierre HervouetHeart of agile by Pierre Hervouet
Heart of agile by Pierre Hervouet
 

Recently uploaded

Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
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...Drew Madelung
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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...Martijn de Jong
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
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 DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Recently uploaded (20)

Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
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...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

Agile Software Development - Making Programming Fun Again

  • 1. Agile Software Development making programming fun again
  • 2. How Projects Really Work Software engineering done right.
  • 3. How the customer explained it Software engineering done right.
  • 4. How the project leader understood it Software engineering done right.
  • 5. How the analyst designed it Software engineering done right.
  • 6. How the programmer wrote it Software engineering done right.
  • 7. How the business consultant described it Software engineering done right.
  • 8. How the project was documented Software engineering done right.
  • 9. How much the project cost Software engineering done right.
  • 10. What the customer really needed Software engineering done right.
  • 11. “CHAOS Report” by Standish Group Software engineering done right.
  • 12. Challenged Projects - Reasons  Lack of User Input  Technology  Incomplete Incompetence Requirements &  Lack of Resources Specifications  Unrealistic Expectations  Changing Requirements  Unclear Objectives & Specifications  Unrealistic Time Frames  Lack of Executive  New Technology Support Software engineering done right.
  • 13. Failed Projects - Reasons  Incomplete  Changing Requirements Requirements & Specifications  Lack of User  Lack of Planning Involvement  Didn't Need It Any  Lack of Resources Longer  Unrealistic Expectations  Lack of IT Management  Lack of Executive  Technology Illiteracy Support Software engineering done right.
  • 14. Successful Projects - Reasons  User involvement  Project manager  Executive management expertise support  Financial management  Clear business  Skilled resources objectives  Formal methodology  Optimizing scope  Standard tools and  Agile process methodology Software engineering done right.
  • 15. What's wrong with “Waterfall”? Software engineering done right.
  • 16. What's wrong with “Waterfall”?  Mistakes are hard to find in early stages  Expensive to fix mistakes in later stages  Customers don't know what they want from the beginning  Developers don't know how long a project will take from the beginning  Business needs change Software engineering done right.
  • 17. Effects of “Waterfall”  Death March projects ‒ Mis-estimated schedules lead to successive overtime ‒ Delays in one stage cause delays in succeeding stages  Conflict between customers and developers ‒ Customers don't get the software that they want ‒ Developers don't get clear requirements  Process and tool obsession ‒ People focus on creating artifacts but lose sight of the goal of working software ‒ Processes replace natural communication Software engineering done right.
  • 18. The Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: • 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. Software engineering done right.
  • 19. Selected Practices  Iterative Development  User Stories  Test-Driven Development  One Team  Self-Managed Teams  Sustainable Pace Software engineering done right.
  • 20. Iterative Development  Software development as an evolutionary process Software engineering done right.
  • 21. Iterative Development  All steps of SDLC are done at each iteration Software engineering done right.
  • 22. Iterative Development  Working software produced at each iteration – No such thing as “X% complete”, only done and not done Software engineering done right.
  • 23. Iterative Development  Benefits ‒ Customers can evaluate what they want and adjust requirements ‒ Developers get better estimates of future tasks ‒ Better communication between customer and developers and among developers  Talk is about something concrete, not abstract ‒ Just enough artifacts are created to produce working software  Less waste Software engineering done right.
  • 24. User Stories Traditional requirements: “The system shall... the system shall...” Software engineering done right.
  • 25. User Stories As a < user role > In order to < business goal > I want to < behavior >  Focus on business goals - Requirements have context  Story-telling is the most natural way of communication Software engineering done right.
  • 26. Test-Driven Development  Bugs are harder to find and fix when found later  Modifying code tends to introduce bugs - Difficult to know if one has introduced bugs without tests  Manual tests are expensive to repeat and provide limited information Software engineering done right.
  • 27. Test-Driven Development  Programmers should write automated tests as they code - Write test before implementation  Provides immediate feedback if their code works  Builds suite of automated tests that can be run each time code is modified  Makes it safe to modify existing code  Frameworks: JUnit, NUnit, hundreds of others... Software engineering done right.
  • 29. TDD Benefits  Code is safe to modify  Tests are excellent documentation - Programmers hate writing documentation, but they like to code  Design improves - Programmers think of their code's behavior before coding - Programmers see their code from a second-person's point-of-view • Is my code readable? Easy to use? - Components become decoupled to facilitate testing Software engineering done right.
  • 30. One Team  Everyone is considered part of one team, including the customer  Developers, testers, business analysts, project managers, web designers, etc, work in the same place, place usually on the same table Software engineering done right.
  • 32. One Team  Faster communication – Issues resolved faster  Natural communication – Face-to-face, ad hoc and continuous throughout the day  Less misunderstanding and antagonism between functional groups Software engineering done right.
  • 33. Self-Managed Teams When teams manage themselves...  Higher motivation  More creative solutions  Faster resolution of issues  Drive for continuous improvement Software engineering done right.
  • 34. Self-Managed Teams Practices/Tools  Daily Stand-Up Meetings  Retrospectives  Big Visible Charts, Whiteboards  Direct access to customers Software engineering done right.
  • 35. Sustainable Pace  Overtime leads to lower productivity  Lowers morale Software engineering done right.
  • 36. Sustainable Pace  Team should measure “velocity” at each iteration  Keep work load within velocity  If iteration load was underestimated, ask customer to decide which features to move to future iterations Software engineering done right.
  • 37. Other Practices...  Planning  Tracking  Continuous Integration  Pair Programming  Refactoring  Planning Boards  Burn-Down Charts  Collective Code Ownership  Coding Standards Many more... Software engineering done right.
  • 38. Agile at Orange & Bronze • Been doing Agile since its foundation in 2005 – Before it became mainstream • We've tried different methodologies and practices – XP, Scrum, Kanban – Not all practices work in all conditions • The first to offer training in Agile methodologies and practices – Scrum, TDD, Agile Business Analysis, Agile QA, etc – Trainers are seasoned practictioners Software engineering done right.