SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
Agile Development

  November 3rd, 2011

   Justin F. Brunelle
Purpose
• Introduction to Agile methodologies
  – Who what where when why
• Introduction to SCRUM
  – Implementation of Agile in Sprints
Surprise!
• Most programmers already implement agile
  engineering!
  – Rapid Prototyping
  – Cyclic development cycles
  – Stakeholder feedback
  – Ever-growing queue of requirements
Waterfall
   •     Traditional Development
   •     Incremental
   •     Linear
   •     What happens if
         you fail at
         Verification?



http://en.wikipedia.org/wiki/File:Waterfall_model_%281%29.svg
Daily Trivia
• First presentation on Waterfall Model?
• MITRE!
  – Development of SAGE (Semi-Automated Ground
    Environment)
     • Messages to bomber aircraft
  – 1950s
Goal of Agile Development
• Continuous delivery of working software
  – Iterative
  – User feedback driven
• Iterations produce releasable product
• Goal is not speed!
Agile Approach
• Adaptive, empirical process
   – Small repeating cycles
   – Short-term planning with constant feedback, inspection and adaptation
• Fail-early lifecycle
   – Iterative development
     brings most of the risk
     and difficult work
     forward to the early
     part of a project
Agile Manifesto
•   Our highest priority is to satisfy the customer      Working software is the primary measure of
    through early and continuous delivery of              progress.
    valuable software.
•   Welcome changing requirements, even late in          Agile processes promote sustainable development.
    development. Agile processes harness change for       The sponsors, developers, and users should be
    the customer's competitive advantage.
                                                          able to maintain a constant pace indefinitely.
•   Deliver working software frequently, from a
    couple of weeks to a couple of months, with a
                                                         Continuous attention to technical excellence
    preference to the shorter timescale.
•   Business people and developers must work              and good design enhances agility.
    together daily throughout the project.
                                                         Simplicity--the art of maximizing the amount
•   Build projects around motivated individuals.
    Give them the environment and support they            of work not done--is essential.
    need, and trust them to get the job done.
                                                         The best architectures, requirements, and designs
•   The most efficient and effective method of
    conveying information to and within a                 emerge from self-organizing teams.
    development team is face-to-face conversation.
                                                         At regular intervals, the team reflects on how to
                                                          become more effective, then tunes and adjusts its
                                                          behavior accordingly.
User Role in Agile
             Plan                                                                                  Plan
                                                  Plan                                                                                 Plan


    Assess             Design                                                      Assess                    Design
                                  Assess                    Design

                                                                      Release                                          Assess                    Design




     Test           Code                                                                    Test          Code
                                           Test          Code                                                                   Test          Code




                                                                                                                                                          Shippable
                                                                     Plan                                                                                  Product


                                Assess                                          Design
                                                                                                                      The User is involved in all
                                                                                                                       aspects of the iteration –
                                                                                                                      this helps ensure true user
                                                                                                                         driven development
                                                  Test                      Code



9
What is “Done”?
• At the end of every iteration, the only work
  that is declared “Done” is work that has gone
  through the proper engineering activities and
  could be used by Clients
  – Requirements
  – Code
  – Testing (unit, integration, user)
  – Stakeholder feedback
SCRUM
•   Type of Agile
•   Self-organizing teams
•   Product Backlog
•   Sprints
•   Releases/Retrospective
•   Rinse and repeat
SCRUM

Storyboarding




                                                             User



                Feedback Incorporated Into Product Backlog
Who SCRUMS?
• Defined roles
  – Product Owner
  – Scrum Master
  – Scrum Team
• No “Bus Person”
Product Owner

• Define the features of the product
• Decide on release date and content
• Be responsible for the success of the product
• Prioritize features according to market value
• Adjust features and priority every iteration, as
  needed
• Accept or reject work results
The ScrumMaster

• Represents management to the project
• Responsible for enacting Scrum values and
  practices
• Removes impediments
• Ensure that the team is fully functional and
  productive
• Enable close cooperation across all roles and
  functions
• Shield the team from external interferences
The Team

• Typically 5-9 people
• Cross-functional:
  – Programmers, testers, user experience designers, etc.
     • Everyone knows a little about a lot
• Teams are self-organizing
  – Ideally, no titles but rarely a possibility
Storyboarding
• Creation of user stories
  – Populates the backlog
  – Multiple backlog entries per story
• Methods
  – Whiteboard
  – Photoshop
  – Layout “Straw-men”
  – Verbal Process
Backlog
• The requirements expressed as user stories
  – [COUGH – CRC Cards – COUGH]
• A list of all desired work
• Prioritized by the product owner
• Reprioritized at the start of each sprint

• “I want the product to do X”
SCRUM Sprints
• Scrum projects make progress in a series of
  “sprints”
• 2–4 weeks
• “Byte”-sized chunk of the project is
  designed, coded, and tested during the sprint
  – Normally:
     • Subset of backlog
     • 2-3 stories
Sprint Review Process
• Review Process:
  – Demo Software
     • Entire team (remember the “Bus Person”)
  – Get Feedback
  – Update Backlog
     • Reprioritize
     • Entries not taken out until next sprint
Sprint Retrospective
• Retrospective (15-30 min. mtg):
  – What went well?
  – What went wrong?
  – What will we do different?
“SCRUMmary”
•   Incremental
•   Iterative
•   Fail early
•   User involvement
Will it work for You?
• Shouldn’t be a “Big Bang”
    – Phased implementation
•   Identify Roles
•   Create backlog
•   Determine sprint length
•   RUN!

Más contenido relacionado

La actualidad más candente

Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing IntroductionHai Tran Son
 
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 developmentIBM Rational software
 
Prince2 and agile happy bedfellows
Prince2 and agile happy bedfellowsPrince2 and agile happy bedfellows
Prince2 and agile happy bedfellowsallenm01
 
Integrating SCRUM with classical Project Management
Integrating SCRUM with classical Project ManagementIntegrating SCRUM with classical Project Management
Integrating SCRUM with classical Project ManagementJens Hoffmann
 
Process model rup
Process model rupProcess model rup
Process model rupAryan Ajmer
 
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...Strongstep - Innovation in software quality
 
Software Production Layout_Se lect7 btech
Software Production Layout_Se lect7 btechSoftware Production Layout_Se lect7 btech
Software Production Layout_Se lect7 btechIIITA
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingMr SMAK
 
Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.SlideTeam.net
 
Lecture3.se.pptx
Lecture3.se.pptxLecture3.se.pptx
Lecture3.se.pptxAmna Ch
 
Agile & Open Unified Processes
Agile & Open Unified ProcessesAgile & Open Unified Processes
Agile & Open Unified Processesdcsunu
 
Comparing the scrum definition to its practice
Comparing the scrum definition to its practiceComparing the scrum definition to its practice
Comparing the scrum definition to its practiceAndre Odendaal
 
Rational unified process
Rational unified processRational unified process
Rational unified processnaveed428
 

La actualidad más candente (20)

Adopting Agile
Adopting  AgileAdopting  Agile
Adopting Agile
 
Agile Testing Introduction
Agile Testing IntroductionAgile Testing Introduction
Agile Testing Introduction
 
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
 
Cu32604607
Cu32604607Cu32604607
Cu32604607
 
Prince2 and agile happy bedfellows
Prince2 and agile happy bedfellowsPrince2 and agile happy bedfellows
Prince2 and agile happy bedfellows
 
Integrating SCRUM with classical Project Management
Integrating SCRUM with classical Project ManagementIntegrating SCRUM with classical Project Management
Integrating SCRUM with classical Project Management
 
Process model rup
Process model rupProcess model rup
Process model rup
 
Manual Software testing - software development life cycle
Manual Software testing - software development life cycleManual Software testing - software development life cycle
Manual Software testing - software development life cycle
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...
[Agile Portugal 2012] TSP/PSP and Agile-SCRUM: Similarities & Differences Stu...
 
Software Production Layout_Se lect7 btech
Software Production Layout_Se lect7 btechSoftware Production Layout_Se lect7 btech
Software Production Layout_Se lect7 btech
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.Scrum process powerpoint ppt slides.
Scrum process powerpoint ppt slides.
 
Lecture3.se.pptx
Lecture3.se.pptxLecture3.se.pptx
Lecture3.se.pptx
 
RUP model
RUP modelRUP model
RUP model
 
Agile & Open Unified Processes
Agile & Open Unified ProcessesAgile & Open Unified Processes
Agile & Open Unified Processes
 
Cobol agile
Cobol agileCobol agile
Cobol agile
 
Comparing the scrum definition to its practice
Comparing the scrum definition to its practiceComparing the scrum definition to its practice
Comparing the scrum definition to its practice
 
Rational unified process
Rational unified processRational unified process
Rational unified process
 

Similar a Agile Engineering - ODU ACM

Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Think For A Change
 
Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Cognizant
 
How to Integrate UX and Agile
How to Integrate UX and AgileHow to Integrate UX and Agile
How to Integrate UX and AgileUserZoom
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzAhmadSajjad34
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development ProcessSoftware Park Thailand
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overviewsunilkumar_
 
Agile2013 sustainable change
Agile2013 sustainable changeAgile2013 sustainable change
Agile2013 sustainable changeDennis Stevens
 
Agile Overview Session
Agile Overview SessionAgile Overview Session
Agile Overview SessionBahaa Farouk
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAAiman Hud
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life CycleAashima Wadhwa
 
Agile software development
Agile software developmentAgile software development
Agile software developmentSiddharth Sharma
 

Similar a Agile Engineering - ODU ACM (20)

Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...
 
Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02
 
Scrum training
Scrum trainingScrum training
Scrum training
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
 
How to Integrate UX and Agile
How to Integrate UX and AgileHow to Integrate UX and Agile
How to Integrate UX and Agile
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
 
Agile mODEL
Agile mODELAgile mODEL
Agile mODEL
 
Agile
AgileAgile
Agile
 
Software testing
Software testingSoftware testing
Software testing
 
what-is-devops.ppt
what-is-devops.pptwhat-is-devops.ppt
what-is-devops.ppt
 
Scrum agile process
Scrum agile processScrum agile process
Scrum agile process
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Agile2013 sustainable change
Agile2013 sustainable changeAgile2013 sustainable change
Agile2013 sustainable change
 
Agile Overview Session
Agile Overview SessionAgile Overview Session
Agile Overview Session
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
module I.pptx
module I.pptxmodule I.pptx
module I.pptx
 
Metodologia scrum actualizada qa
Metodologia scrum actualizada qaMetodologia scrum actualizada qa
Metodologia scrum actualizada qa
 

Más de Justin Brunelle

Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...
Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...
Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...Justin Brunelle
 
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...Justin Brunelle
 
Not All Mementos Are Created Equal: Measuring The Impact Of Missing Mementos
Not All Mementos Are Created Equal: Measuring The Impact Of Missing MementosNot All Mementos Are Created Equal: Measuring The Impact Of Missing Mementos
Not All Mementos Are Created Equal: Measuring The Impact Of Missing MementosJustin Brunelle
 
How I spend my summer vacations
How I spend my summer vacationsHow I spend my summer vacations
How I spend my summer vacationsJustin Brunelle
 
An Evaluation of Caching Policies for Memento TimeMaps
An Evaluation of Caching Policies for Memento TimeMapsAn Evaluation of Caching Policies for Memento TimeMaps
An Evaluation of Caching Policies for Memento TimeMapsJustin Brunelle
 
Filling in the Blanks: Capturing Dynamically Generated Content
Filling in the Blanks: Capturing Dynamically Generated ContentFilling in the Blanks: Capturing Dynamically Generated Content
Filling in the Blanks: Capturing Dynamically Generated ContentJustin Brunelle
 
Day in the Life of a Computer Scientist
Day in the Life of a Computer ScientistDay in the Life of a Computer Scientist
Day in the Life of a Computer ScientistJustin Brunelle
 
Digital Preservation - ODU
Digital Preservation - ODUDigital Preservation - ODU
Digital Preservation - ODUJustin Brunelle
 
Digital Preservation at ODU
Digital Preservation at ODUDigital Preservation at ODU
Digital Preservation at ODUJustin Brunelle
 

Más de Justin Brunelle (10)

Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...
Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...
Scripts in a Frame: A Two-Tiered Crawling Approach to Archiving Deferred Repr...
 
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...
iPRES2015: Archiving Deferred Representations Using a Two-Tiered Crawling App...
 
Not All Mementos Are Created Equal: Measuring The Impact Of Missing Mementos
Not All Mementos Are Created Equal: Measuring The Impact Of Missing MementosNot All Mementos Are Created Equal: Measuring The Impact Of Missing Mementos
Not All Mementos Are Created Equal: Measuring The Impact Of Missing Mementos
 
How I spend my summer vacations
How I spend my summer vacationsHow I spend my summer vacations
How I spend my summer vacations
 
An Evaluation of Caching Policies for Memento TimeMaps
An Evaluation of Caching Policies for Memento TimeMapsAn Evaluation of Caching Policies for Memento TimeMaps
An Evaluation of Caching Policies for Memento TimeMaps
 
Filling in the Blanks: Capturing Dynamically Generated Content
Filling in the Blanks: Capturing Dynamically Generated ContentFilling in the Blanks: Capturing Dynamically Generated Content
Filling in the Blanks: Capturing Dynamically Generated Content
 
Day in the Life of a Computer Scientist
Day in the Life of a Computer ScientistDay in the Life of a Computer Scientist
Day in the Life of a Computer Scientist
 
Records expo
Records expoRecords expo
Records expo
 
Digital Preservation - ODU
Digital Preservation - ODUDigital Preservation - ODU
Digital Preservation - ODU
 
Digital Preservation at ODU
Digital Preservation at ODUDigital Preservation at ODU
Digital Preservation at ODU
 

Último

Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeCzechDreamin
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxJennifer Lim
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfChristopherTHyatt
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...CzechDreamin
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekCzechDreamin
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomCzechDreamin
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKUXDXConf
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...FIDO Alliance
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessUXDXConf
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101vincent683379
 

Último (20)

Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 

Agile Engineering - ODU ACM

  • 1. Agile Development November 3rd, 2011 Justin F. Brunelle
  • 2. Purpose • Introduction to Agile methodologies – Who what where when why • Introduction to SCRUM – Implementation of Agile in Sprints
  • 3. Surprise! • Most programmers already implement agile engineering! – Rapid Prototyping – Cyclic development cycles – Stakeholder feedback – Ever-growing queue of requirements
  • 4. Waterfall • Traditional Development • Incremental • Linear • What happens if you fail at Verification? http://en.wikipedia.org/wiki/File:Waterfall_model_%281%29.svg
  • 5. Daily Trivia • First presentation on Waterfall Model? • MITRE! – Development of SAGE (Semi-Automated Ground Environment) • Messages to bomber aircraft – 1950s
  • 6. Goal of Agile Development • Continuous delivery of working software – Iterative – User feedback driven • Iterations produce releasable product • Goal is not speed!
  • 7. Agile Approach • Adaptive, empirical process – Small repeating cycles – Short-term planning with constant feedback, inspection and adaptation • Fail-early lifecycle – Iterative development brings most of the risk and difficult work forward to the early part of a project
  • 8. Agile Manifesto • Our highest priority is to satisfy the customer  Working software is the primary measure of through early and continuous delivery of progress. valuable software. • Welcome changing requirements, even late in  Agile processes promote sustainable development. development. Agile processes harness change for The sponsors, developers, and users should be the customer's competitive advantage. able to maintain a constant pace indefinitely. • Deliver working software frequently, from a couple of weeks to a couple of months, with a  Continuous attention to technical excellence preference to the shorter timescale. • Business people and developers must work and good design enhances agility. together daily throughout the project.  Simplicity--the art of maximizing the amount • Build projects around motivated individuals. Give them the environment and support they of work not done--is essential. need, and trust them to get the job done.  The best architectures, requirements, and designs • The most efficient and effective method of conveying information to and within a emerge from self-organizing teams. development team is face-to-face conversation.  At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 9. User Role in Agile Plan Plan Plan Plan Assess Design Assess Design Assess Design Release Assess Design Test Code Test Code Test Code Test Code Shippable Plan Product Assess Design The User is involved in all aspects of the iteration – this helps ensure true user driven development Test Code 9
  • 10. What is “Done”? • At the end of every iteration, the only work that is declared “Done” is work that has gone through the proper engineering activities and could be used by Clients – Requirements – Code – Testing (unit, integration, user) – Stakeholder feedback
  • 11. SCRUM • Type of Agile • Self-organizing teams • Product Backlog • Sprints • Releases/Retrospective • Rinse and repeat
  • 12. SCRUM Storyboarding User Feedback Incorporated Into Product Backlog
  • 13. Who SCRUMS? • Defined roles – Product Owner – Scrum Master – Scrum Team • No “Bus Person”
  • 14. Product Owner • Define the features of the product • Decide on release date and content • Be responsible for the success of the product • Prioritize features according to market value • Adjust features and priority every iteration, as needed • Accept or reject work results
  • 15. The ScrumMaster • Represents management to the project • Responsible for enacting Scrum values and practices • Removes impediments • Ensure that the team is fully functional and productive • Enable close cooperation across all roles and functions • Shield the team from external interferences
  • 16. The Team • Typically 5-9 people • Cross-functional: – Programmers, testers, user experience designers, etc. • Everyone knows a little about a lot • Teams are self-organizing – Ideally, no titles but rarely a possibility
  • 17. Storyboarding • Creation of user stories – Populates the backlog – Multiple backlog entries per story • Methods – Whiteboard – Photoshop – Layout “Straw-men” – Verbal Process
  • 18. Backlog • The requirements expressed as user stories – [COUGH – CRC Cards – COUGH] • A list of all desired work • Prioritized by the product owner • Reprioritized at the start of each sprint • “I want the product to do X”
  • 19. SCRUM Sprints • Scrum projects make progress in a series of “sprints” • 2–4 weeks • “Byte”-sized chunk of the project is designed, coded, and tested during the sprint – Normally: • Subset of backlog • 2-3 stories
  • 20. Sprint Review Process • Review Process: – Demo Software • Entire team (remember the “Bus Person”) – Get Feedback – Update Backlog • Reprioritize • Entries not taken out until next sprint
  • 21. Sprint Retrospective • Retrospective (15-30 min. mtg): – What went well? – What went wrong? – What will we do different?
  • 22. “SCRUMmary” • Incremental • Iterative • Fail early • User involvement
  • 23. Will it work for You? • Shouldn’t be a “Big Bang” – Phased implementation • Identify Roles • Create backlog • Determine sprint length • RUN!