SlideShare a Scribd company logo
Get Ready for
Agile Methods!
How to manage constant and
rapid change in IT projects

Dr Dimitris Dranidis
Presentation outline
 Traditional methodologies
   Problems
 Agile methods
   Extreme Programming
   SCRUM
 Conclusions



  Get Ready for Agile Methods * D Dranidis * CITY College   2
Driving forces…
 “Deliver quickly.
   Change quickly.
    Change often.
These three driving forces compel us to
 rethink traditional software engineering
 practices.”

 -- Jim Highsmith
   Get Ready for Agile Methods * D Dranidis * CITY College   3
Traditional
methodologies
Classic
“Waterfall” development model




  Get Ready for Agile Methods * D Dranidis * CITY College   5
Characteristics of the
Waterfall development model
 Heavy documentation
   Every phase delivers a
   complete document
 Late product delivery
   Big-bang approach
   No code is written before the Coding phase
 Late feedback – low customer involvement
   Customer is involved at the beginning and at the
   end of the project.


  Get Ready for Agile Methods * D Dranidis * CITY College   6
The problems
 Business environment changes at
 increasing pace.
 Unpredictability of requirements
 Traditional methodologies fail to satisfy
 environment changes due to:
   Resistance to change
     Change increases cost
   Conformance to an initial plan
  Get Ready for Agile Methods * D Dranidis * CITY College   7
Cost of change
 Late discovery of
    design defects
 Changing
 requirements
 Result:
    costly over-runs
    and, often,
    project
    cancellation.

 Waterfall tries to avoid change by freezing requirements
 (contracts)
  Get Ready for Agile Methods * D Dranidis * CITY College   8
Risk
 In a waterfall process, you don’t know if you
 have a problem until late in the lifecycle.

                                          Risk is very high
                                          until you see some
                                          results




  Get Ready for Agile Methods * D Dranidis * CITY College      9
Customer feedback was late!




  Get Ready for Agile Methods * D Dranidis * CITY College   10
Following plans when feedback is
absent
                  With feedback




                   Without feedback


  Get Ready for Agile Methods * D Dranidis * CITY College   11
How can we deal with…?
 Continuous change?
   Change is inevitable!


 Unpredictable requirements?

 High risks?


  Get Ready for Agile Methods * D Dranidis * CITY College   12
Agile methods
Agile methods
 Agile = flexible, adaptable

 Embrace change!
   Try to reduce cost of change

 Focus on
   customer satisfaction (and feedback)
      rather than conformance to a plan
   Early product delivery



  Get Ready for Agile Methods * D Dranidis * CITY College   14
Agile methods value more…
 Individuals and interactions
           over processes and tools
 Working software
           over comprehensive documentation
 Customer collaboration
           over contract negotiation
 Responding to change
           over following a plan


  Get Ready for Agile Methods * D Dranidis * CITY College   15
Common characteristic of all agile methods:

Iterative process
  Development is broken
  down in short iterations
  Every iteration
     repeats a “small Waterfall”
     Delivers some functionality
        Incremental approach
  Iterations are time-boxed:
     No extensions of deadlines

  There is a product even if
  the project is cancelled


    Get Ready for Agile Methods * D Dranidis * CITY College   16
SCRUM
SCRUM
Software development process for small teams
(max 9) and small projects (few months)

Very simple, only very few principles and rules
  Emphasis on agile project management practices


Toyota uses it since the early 1990s


 Get Ready for Agile Methods * D Dranidis * CITY College   18
SCRUM process overview
                                           Iterative
                                           Incremental
                                           Time-boxed




 Get Ready for Agile Methods * D Dranidis * CITY College   19
Initial planning phase
 Establish vision,
 budget
 Initial Product
 Backlog
   List of identified,
   prioritized features
   Prepared by the
   customer



  Get Ready for Agile Methods * D Dranidis * CITY College   20
Sprints - iterations
 15-30 day iterations

 Sprint planning

 Sprint
 Daily Scrum meetings

 Sprint review

  Get Ready for Agile Methods * D Dranidis * CITY College   21
Sprint planning
 Spring backlog
   List of features to be
   implemented in the
   current Sprint
   The most important
   features from the
   Product Backlog
   Expanded to list of
   tasks by team


  Get Ready for Agile Methods * D Dranidis * CITY College   22
SCRUM - Sprints
 The team is left alone and produces the best
 software possible

 No changes are allowed during a sprint
   Anything can change before and after

 Daily SCRUM meetings




  Get Ready for Agile Methods * D Dranidis * CITY College   23
Daily SCRUM meetings
 15 – 30 minutes stand-up
 meetings
 at the same place at the same
 time every work day
 Questions to be answered by
 each team member:
   What have you done since the last scrum meeting?
   What obstacles stand in the way?
   What do you plan on doing between now and the next scrum
   meeting?

 Management’s role:
   remove any obstacles and to supply all necessary resources.
  Get Ready for Agile Methods * D Dranidis * CITY College        24
Sprint review
 At the end of a sprint:
   Meeting with all stakeholders
   Product demonstration
   Anything can be changed
   Continue?




  Get Ready for Agile Methods * D Dranidis * CITY College   25
SCRUM closure phase
 Completes product
 development
   Operational deployment
   Documentation




  Get Ready for Agile Methods * D Dranidis * CITY College   26
SCRUM Roles:
     Product owner (Customer)
 Responsible for creating and
 prioritizing the Product Backlog

 Chooses goals for the next
 Sprint

 Reviews the system after the
 Sprint

  Get Ready for Agile Methods * D Dranidis * CITY College   27
SCRUM Roles:
     Scrum Team (developers)
 Expand the Sprint Backlog to
 Tasks

 Work on the Sprint Backlog
 tasks

 Develop the system

 Daily meetings


  Get Ready for Agile Methods * D Dranidis * CITY College   28
SCRUM Roles:
     Scrum Master (Project Manager)
 Ensures Scrum practices
 are followed

 Mediator between
 management and team

 Removes obstacles

 Conducts Sprint review


  Get Ready for Agile Methods * D Dranidis * CITY College   29
SCRUM Logs:
     Product Backlog
  Kept by the Product
  owner (Customer)
  List of identified,
  prioritized tasks
  Drives team activity
  Updated and prioritized
  before each sprint
  Checked in each meeting

  Get Ready for Agile Methods * D Dranidis * CITY College   30
SCRUM Logs:
     Product Backlog




  Get Ready for Agile Methods * D Dranidis * CITY College   31
SCRUM Logs:
     Sprint Backlog
 List of tasks to be
 completed by the Scrum
 Team in the current
 Sprint.

 Tasks in the range of 4-
 16 hours
 Estimates are updated
 daily!
   Total estimated time
   calculated


  Get Ready for Agile Methods * D Dranidis * CITY College   32
SCRUM Logs:
     Sprint Burn-down graph
 Remaining                                  Actual Ideal
 estimated
 time to
 complete
 all tasks




  Get Ready for Agile Methods * D Dranidis * CITY College   33
SCRUM Practices:
Project management ..
 Self-directed teams
    No guidance from management or Scrum Master
 Don’t add to iteration
    Nothing changes during a sprint
 Scrum Master firewall
    Team is not interrupted by anyone
    Scrum Master removes obstacles
 Decision in one hour
    Decisions for removing blocks are taken immediately
    Bad decisions are better than no decisions
 Blocks removed in one day
   Get Ready for Agile Methods * D Dranidis * CITY College   34
SCRUM Practices:
Project management ..
 Chickens and Pigs
    In a SCRUM meeting only the SCRUM Team may talk (the
    pigs)
    Everybody else (the chickens) can attend silently




   Get Ready for Agile Methods * D Dranidis * CITY College   35
Other SCRUM practices
 Small teams
   Ideally 7 members
   Larger projects can be multiple teams
 Common room
 Daily Build




  Get Ready for Agile Methods * D Dranidis * CITY College   36
SCRUM…. the name?
 A scrum is a team
 pack in Rugby
 Everybody in the pack
 acts together with
 everyone else to
 move the ball down
 the field



  Get Ready for Agile Methods * D Dranidis * CITY College   37
XP
Extreme
Programming
Four Variables ...
 Control variables of software development
   Cost
      Available budget
   Time
      Project duration
   Quality
      Product quality
   Scope
      Product features


  Get Ready for Agile Methods * D Dranidis * CITY College   39
Four Variables ...
 It is impossible to control all four
 variables

 Customers can choose to control
 any 3 of the variables
 Developers pick the resultant value
 of the 4th variable



  Get Ready for Agile Methods * D Dranidis * CITY College   40
Four Variables ...
 All variables should be visible to customer

 Scope is the best variable to control
   Fix cost, time and quality
   Adjust scope correspondingly
      If there is no time to complete the whole
      project remove some functionality
      (customer chooses)

  Get Ready for Agile Methods * D Dranidis * CITY College   41
XP Practices
 XP is based on the
 extreme application of
 12 practices that
 support each other.




  Get Ready for Agile Methods * D Dranidis * CITY College   42
12 XP Practices




  Get Ready for Agile Methods * D Dranidis * CITY College   43
XP Practices:
Planning Game .....
 Pieces: user stories

 Requirements on index cards

 Written by the customer




   Get Ready for Agile Methods * D Dranidis * CITY College   44
XP Practices:
Planning Game .....
 Players: customer & developer
 Customer
    decides priorities
    (Business value)
 Developer
    estimates effort


 Value and Risk first!


   Get Ready for Agile Methods * D Dranidis * CITY College   45
XP Practices:
Planning Game .....
 Iteration planning (before each iteration)
    Time-boxed: 2-3 weeks long
    Customer selects “user stories” fitting current
    iteration
    Developers break user stories in tasks




   Get Ready for Agile Methods * D Dranidis * CITY College   46
XP Practices:
Planning Game .....
 Inside the iteration
    No new “user stories” are added

    Completeness is measured in terms of
    completed “user stories”




   Get Ready for Agile Methods * D Dranidis * CITY College   47
XP Practices:
Planning Game …..
 End of iteration
    Iteration ends at the pre-specified date
       Even if not all user stories were
       implemented

    Estimations are evaluated and readjusted for
    next iterations



   Get Ready for Agile Methods * D Dranidis * CITY College   48
XP Practices:
Frequent Releases
 A release cycle is usually up to
 3 months

 A release cycle consists of
 iterations up to 3 weeks

 In each iteration the selected
 user stories are implemented

 Each user story is split in
 programming tasks of 1-3 days

 small and frequent releases
 provide frequent feedback from
 the customer

   Get Ready for Agile Methods * D Dranidis * CITY College   49
XP Practices:
Pair programming ..
 Two programmers sit
 together in front of a
 workstation
    one enters code
    one reviews the code and
    thinks
 “Pair programming is a dialog
 between two people trying to
 simultaneously program and
 understand how to program
 better”, Kent Beck
 Continuous quality
 inspection!
   Get Ready for Agile Methods * D Dranidis * CITY College   50
XP Practices:
Pair programming ..
 Pairs change continuously (few times in a day)
    every programmer knows all the aspects of the
    system
    a programmer can be easily replaced in the middle of
    the project
 Ensures continuous code inspection

 Costs 10-15% more than stand-alone
 programming but….
    Code is simpler (fewer LOC) with less defects (15%)

   Get Ready for Agile Methods * D Dranidis * CITY College   51
XP Practices:
On-site customer
 The customer must always be available to
    answer questions
    resolve ambiguities
    set priorities
    review the product

 Customer is considered part of the team
 Continuous feedback!

   Get Ready for Agile Methods * D Dranidis * CITY College   52
Conclusions
Requirements for the success of
agile methods
 Collaborative environment
 People-centered organizations
 Small to medium sized teams
   (avg. 9 persons)
 Common open workplace
 Commitment
   Customer commitment
   Management commitment
   Developers commitment



  Get Ready for Agile Methods * D Dranidis * CITY College   54
Wrap-up
 Agile methodologies in a fast changing
 world!
   Embrace change!
 The people factor
   Trust your team!
 User involvement
   Involve the customer!
 Useful practices even in a traditional
 development process
  Get Ready for Agile Methods * D Dranidis * CITY College   55
Thank you!

                        “It is not the strongest of the
                         species that survives, nor
                         the most intelligent that
                         survives. It is the one that is
                         the most adaptable to
                         change.”
                                        Charles Darwin

 Get Ready for Agile Methods * D Dranidis * CITY College   56
About me…
 Senior Lecturer
 Computer Science Dept
 CITY College, International Faculty of the University of Sheffield

 Programme director of the
    MSc in Software Engineering & Telecommunications

 Leader of the "Software Engineering & Service-Oriented
 Technologies" research group, research interests:
    service-oriented computing, model-based testing, object-oriented
    analysis and design, formal methods, software engineering education,
    agile software development methodologies, and artificial intelligence.

 http://www.city.academic.gr/csd/dranidis/


  Get Ready for Agile Methods * D Dranidis * CITY College                    57
Experience in software project
management
 >10 years of management of >50 short (6-9
 pms) software projects
   Industrial Group Projects
      Teams of undergraduate and postgraduate
      students developing software for the industry
   Plenty of successes and failures

   http://invent.city.academic.gr/



  Get Ready for Agile Methods * D Dranidis * CITY College   58

More Related Content

PDF
Scrum_Presentation_Ratul
PPT
Software Project management
PPTX
PMBOK and Scrum: Best of both worlds
PPTX
PMBoK and Scrum: can we be friends?
PPTX
Dynamic System Development Method (DSDM)
PPT
PPTX
Lviv PMDay: Олександр Ліпський & Анна Лазор Introduction to DSDM framework
PPTX
Li kai roll-out scrum in an intel organization
Scrum_Presentation_Ratul
Software Project management
PMBOK and Scrum: Best of both worlds
PMBoK and Scrum: can we be friends?
Dynamic System Development Method (DSDM)
Lviv PMDay: Олександр Ліпський & Анна Лазор Introduction to DSDM framework
Li kai roll-out scrum in an intel organization

What's hot (20)

PPTX
Metodologia scrum actualizada qa
PDF
Agile programmanagement
PDF
Agile methodology
PPTX
Agile, PMI and PMBOK
PDF
Dynamic Systems Development, DSDM
PDF
P&msp2010 08 development-management
PPTX
why agile?
ZIP
Agile Software Development Methodologies
PDF
Amee product development workflow
DOCX
A Brief Introduction to the SCRUM Agile Methodology
PPTX
A Brief Introduction to the SCRUM Agile Methodology
PPTX
Between Scrum and Kanban - define test process for Agile methodologies
PDF
Feature driven development
PDF
Agile Software Development Overview
PPTX
Scrum in IT Industry Part1
PPT
Scrum Primer
PDF
Scrum referencecard
PPTX
Scrum in IT Industry Part 2
PPT
Lean Software Development & Kanban
PDF
Introduzione alle metodologie di sviluppo agile
Metodologia scrum actualizada qa
Agile programmanagement
Agile methodology
Agile, PMI and PMBOK
Dynamic Systems Development, DSDM
P&msp2010 08 development-management
why agile?
Agile Software Development Methodologies
Amee product development workflow
A Brief Introduction to the SCRUM Agile Methodology
A Brief Introduction to the SCRUM Agile Methodology
Between Scrum and Kanban - define test process for Agile methodologies
Feature driven development
Agile Software Development Overview
Scrum in IT Industry Part1
Scrum Primer
Scrum referencecard
Scrum in IT Industry Part 2
Lean Software Development & Kanban
Introduzione alle metodologie di sviluppo agile
Ad

Viewers also liked (11)

PDF
Eclipse Day India 2015 - Keynote - Stephan Herrmann
PDF
Get Functional on the CLR: Intro to Functional Programming with F#
PPTX
No silver bullet essence and accidents of software engineering
PPTX
No silver bullet
PPTX
C# Async on iOS and Android - Miguel de Icaza, CTO of Xamarin
PDF
Swift and Kotlin Presentation
PPTX
An Empirical Study of Goto in C Code from GitHub Repositories
PDF
Software reliability engineering
PDF
Chapter 7 software reliability
PDF
Agile Is the New Waterfall
Eclipse Day India 2015 - Keynote - Stephan Herrmann
Get Functional on the CLR: Intro to Functional Programming with F#
No silver bullet essence and accidents of software engineering
No silver bullet
C# Async on iOS and Android - Miguel de Icaza, CTO of Xamarin
Swift and Kotlin Presentation
An Empirical Study of Goto in C Code from GitHub Repositories
Software reliability engineering
Chapter 7 software reliability
Agile Is the New Waterfall
Ad

Similar to Get Ready for Agile Methods: How to manage constant and rapid change in IT projects (20)

PDF
SPROTT - STUDENT WORKBOOK - INTRO TO AGILE.pdf
PDF
Agile software-development-overview-1231560734008086-2
PPTX
Case Study on agile scrum methodology on shopping cart
PDF
AGILE PROJECT MANAGEMENT
PPTX
Agile scrum
PDF
Agile Software Development Overview 1231560734008086 2
PPTX
Agile methods
PDF
Agile methodologiesvswaterfall
PDF
Glossary of Agile Terms
PPTX
What are the Tools & Techniques in Agile Project Management?
PDF
2 a introduction to agile
PDF
PPT
Intro to Agile
PDF
Agile project management
PDF
Agile Model & Methodology
PPT
TBI_AGILE SCRUM_Chirag graphi era univ .ppt
PPT
PDF
Fundamentals of Agile Methodologies - Part I
SPROTT - STUDENT WORKBOOK - INTRO TO AGILE.pdf
Agile software-development-overview-1231560734008086-2
Case Study on agile scrum methodology on shopping cart
AGILE PROJECT MANAGEMENT
Agile scrum
Agile Software Development Overview 1231560734008086 2
Agile methods
Agile methodologiesvswaterfall
Glossary of Agile Terms
What are the Tools & Techniques in Agile Project Management?
2 a introduction to agile
Intro to Agile
Agile project management
Agile Model & Methodology
TBI_AGILE SCRUM_Chirag graphi era univ .ppt
Fundamentals of Agile Methodologies - Part I

Recently uploaded (20)

PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
Insiders guide to clinical Medicine.pdf
PDF
Complications of Minimal Access Surgery at WLH
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Computing-Curriculum for Schools in Ghana
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
TR - Agricultural Crops Production NC III.pdf
PDF
Classroom Observation Tools for Teachers
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
Pharma ospi slides which help in ospi learning
2.FourierTransform-ShortQuestionswithAnswers.pdf
Microbial disease of the cardiovascular and lymphatic systems
Microbial diseases, their pathogenesis and prophylaxis
PPH.pptx obstetrics and gynecology in nursing
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Insiders guide to clinical Medicine.pdf
Complications of Minimal Access Surgery at WLH
Renaissance Architecture: A Journey from Faith to Humanism
Computing-Curriculum for Schools in Ghana
FourierSeries-QuestionsWithAnswers(Part-A).pdf
TR - Agricultural Crops Production NC III.pdf
Classroom Observation Tools for Teachers
Module 4: Burden of Disease Tutorial Slides S2 2025
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Final Presentation General Medicine 03-08-2024.pptx
O5-L3 Freight Transport Ops (International) V1.pdf
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
human mycosis Human fungal infections are called human mycosis..pptx
Pharma ospi slides which help in ospi learning

Get Ready for Agile Methods: How to manage constant and rapid change in IT projects

  • 1. Get Ready for Agile Methods! How to manage constant and rapid change in IT projects Dr Dimitris Dranidis
  • 2. Presentation outline Traditional methodologies Problems Agile methods Extreme Programming SCRUM Conclusions Get Ready for Agile Methods * D Dranidis * CITY College 2
  • 3. Driving forces… “Deliver quickly. Change quickly. Change often. These three driving forces compel us to rethink traditional software engineering practices.” -- Jim Highsmith Get Ready for Agile Methods * D Dranidis * CITY College 3
  • 5. Classic “Waterfall” development model Get Ready for Agile Methods * D Dranidis * CITY College 5
  • 6. Characteristics of the Waterfall development model Heavy documentation Every phase delivers a complete document Late product delivery Big-bang approach No code is written before the Coding phase Late feedback – low customer involvement Customer is involved at the beginning and at the end of the project. Get Ready for Agile Methods * D Dranidis * CITY College 6
  • 7. The problems Business environment changes at increasing pace. Unpredictability of requirements Traditional methodologies fail to satisfy environment changes due to: Resistance to change Change increases cost Conformance to an initial plan Get Ready for Agile Methods * D Dranidis * CITY College 7
  • 8. Cost of change Late discovery of design defects Changing requirements Result: costly over-runs and, often, project cancellation. Waterfall tries to avoid change by freezing requirements (contracts) Get Ready for Agile Methods * D Dranidis * CITY College 8
  • 9. Risk In a waterfall process, you don’t know if you have a problem until late in the lifecycle. Risk is very high until you see some results Get Ready for Agile Methods * D Dranidis * CITY College 9
  • 10. Customer feedback was late! Get Ready for Agile Methods * D Dranidis * CITY College 10
  • 11. Following plans when feedback is absent With feedback Without feedback Get Ready for Agile Methods * D Dranidis * CITY College 11
  • 12. How can we deal with…? Continuous change? Change is inevitable! Unpredictable requirements? High risks? Get Ready for Agile Methods * D Dranidis * CITY College 12
  • 14. Agile methods Agile = flexible, adaptable Embrace change! Try to reduce cost of change Focus on customer satisfaction (and feedback) rather than conformance to a plan Early product delivery Get Ready for Agile Methods * D Dranidis * CITY College 14
  • 15. Agile methods value more… Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Get Ready for Agile Methods * D Dranidis * CITY College 15
  • 16. Common characteristic of all agile methods: Iterative process Development is broken down in short iterations Every iteration repeats a “small Waterfall” Delivers some functionality Incremental approach Iterations are time-boxed: No extensions of deadlines There is a product even if the project is cancelled Get Ready for Agile Methods * D Dranidis * CITY College 16
  • 17. SCRUM
  • 18. SCRUM Software development process for small teams (max 9) and small projects (few months) Very simple, only very few principles and rules Emphasis on agile project management practices Toyota uses it since the early 1990s Get Ready for Agile Methods * D Dranidis * CITY College 18
  • 19. SCRUM process overview Iterative Incremental Time-boxed Get Ready for Agile Methods * D Dranidis * CITY College 19
  • 20. Initial planning phase Establish vision, budget Initial Product Backlog List of identified, prioritized features Prepared by the customer Get Ready for Agile Methods * D Dranidis * CITY College 20
  • 21. Sprints - iterations 15-30 day iterations Sprint planning Sprint Daily Scrum meetings Sprint review Get Ready for Agile Methods * D Dranidis * CITY College 21
  • 22. Sprint planning Spring backlog List of features to be implemented in the current Sprint The most important features from the Product Backlog Expanded to list of tasks by team Get Ready for Agile Methods * D Dranidis * CITY College 22
  • 23. SCRUM - Sprints The team is left alone and produces the best software possible No changes are allowed during a sprint Anything can change before and after Daily SCRUM meetings Get Ready for Agile Methods * D Dranidis * CITY College 23
  • 24. Daily SCRUM meetings 15 – 30 minutes stand-up meetings at the same place at the same time every work day Questions to be answered by each team member: What have you done since the last scrum meeting? What obstacles stand in the way? What do you plan on doing between now and the next scrum meeting? Management’s role: remove any obstacles and to supply all necessary resources. Get Ready for Agile Methods * D Dranidis * CITY College 24
  • 25. Sprint review At the end of a sprint: Meeting with all stakeholders Product demonstration Anything can be changed Continue? Get Ready for Agile Methods * D Dranidis * CITY College 25
  • 26. SCRUM closure phase Completes product development Operational deployment Documentation Get Ready for Agile Methods * D Dranidis * CITY College 26
  • 27. SCRUM Roles: Product owner (Customer) Responsible for creating and prioritizing the Product Backlog Chooses goals for the next Sprint Reviews the system after the Sprint Get Ready for Agile Methods * D Dranidis * CITY College 27
  • 28. SCRUM Roles: Scrum Team (developers) Expand the Sprint Backlog to Tasks Work on the Sprint Backlog tasks Develop the system Daily meetings Get Ready for Agile Methods * D Dranidis * CITY College 28
  • 29. SCRUM Roles: Scrum Master (Project Manager) Ensures Scrum practices are followed Mediator between management and team Removes obstacles Conducts Sprint review Get Ready for Agile Methods * D Dranidis * CITY College 29
  • 30. SCRUM Logs: Product Backlog Kept by the Product owner (Customer) List of identified, prioritized tasks Drives team activity Updated and prioritized before each sprint Checked in each meeting Get Ready for Agile Methods * D Dranidis * CITY College 30
  • 31. SCRUM Logs: Product Backlog Get Ready for Agile Methods * D Dranidis * CITY College 31
  • 32. SCRUM Logs: Sprint Backlog List of tasks to be completed by the Scrum Team in the current Sprint. Tasks in the range of 4- 16 hours Estimates are updated daily! Total estimated time calculated Get Ready for Agile Methods * D Dranidis * CITY College 32
  • 33. SCRUM Logs: Sprint Burn-down graph Remaining Actual Ideal estimated time to complete all tasks Get Ready for Agile Methods * D Dranidis * CITY College 33
  • 34. SCRUM Practices: Project management .. Self-directed teams No guidance from management or Scrum Master Don’t add to iteration Nothing changes during a sprint Scrum Master firewall Team is not interrupted by anyone Scrum Master removes obstacles Decision in one hour Decisions for removing blocks are taken immediately Bad decisions are better than no decisions Blocks removed in one day Get Ready for Agile Methods * D Dranidis * CITY College 34
  • 35. SCRUM Practices: Project management .. Chickens and Pigs In a SCRUM meeting only the SCRUM Team may talk (the pigs) Everybody else (the chickens) can attend silently Get Ready for Agile Methods * D Dranidis * CITY College 35
  • 36. Other SCRUM practices Small teams Ideally 7 members Larger projects can be multiple teams Common room Daily Build Get Ready for Agile Methods * D Dranidis * CITY College 36
  • 37. SCRUM…. the name? A scrum is a team pack in Rugby Everybody in the pack acts together with everyone else to move the ball down the field Get Ready for Agile Methods * D Dranidis * CITY College 37
  • 39. Four Variables ... Control variables of software development Cost Available budget Time Project duration Quality Product quality Scope Product features Get Ready for Agile Methods * D Dranidis * CITY College 39
  • 40. Four Variables ... It is impossible to control all four variables Customers can choose to control any 3 of the variables Developers pick the resultant value of the 4th variable Get Ready for Agile Methods * D Dranidis * CITY College 40
  • 41. Four Variables ... All variables should be visible to customer Scope is the best variable to control Fix cost, time and quality Adjust scope correspondingly If there is no time to complete the whole project remove some functionality (customer chooses) Get Ready for Agile Methods * D Dranidis * CITY College 41
  • 42. XP Practices XP is based on the extreme application of 12 practices that support each other. Get Ready for Agile Methods * D Dranidis * CITY College 42
  • 43. 12 XP Practices Get Ready for Agile Methods * D Dranidis * CITY College 43
  • 44. XP Practices: Planning Game ..... Pieces: user stories Requirements on index cards Written by the customer Get Ready for Agile Methods * D Dranidis * CITY College 44
  • 45. XP Practices: Planning Game ..... Players: customer & developer Customer decides priorities (Business value) Developer estimates effort Value and Risk first! Get Ready for Agile Methods * D Dranidis * CITY College 45
  • 46. XP Practices: Planning Game ..... Iteration planning (before each iteration) Time-boxed: 2-3 weeks long Customer selects “user stories” fitting current iteration Developers break user stories in tasks Get Ready for Agile Methods * D Dranidis * CITY College 46
  • 47. XP Practices: Planning Game ..... Inside the iteration No new “user stories” are added Completeness is measured in terms of completed “user stories” Get Ready for Agile Methods * D Dranidis * CITY College 47
  • 48. XP Practices: Planning Game ….. End of iteration Iteration ends at the pre-specified date Even if not all user stories were implemented Estimations are evaluated and readjusted for next iterations Get Ready for Agile Methods * D Dranidis * CITY College 48
  • 49. XP Practices: Frequent Releases A release cycle is usually up to 3 months A release cycle consists of iterations up to 3 weeks In each iteration the selected user stories are implemented Each user story is split in programming tasks of 1-3 days small and frequent releases provide frequent feedback from the customer Get Ready for Agile Methods * D Dranidis * CITY College 49
  • 50. XP Practices: Pair programming .. Two programmers sit together in front of a workstation one enters code one reviews the code and thinks “Pair programming is a dialog between two people trying to simultaneously program and understand how to program better”, Kent Beck Continuous quality inspection! Get Ready for Agile Methods * D Dranidis * CITY College 50
  • 51. XP Practices: Pair programming .. Pairs change continuously (few times in a day) every programmer knows all the aspects of the system a programmer can be easily replaced in the middle of the project Ensures continuous code inspection Costs 10-15% more than stand-alone programming but…. Code is simpler (fewer LOC) with less defects (15%) Get Ready for Agile Methods * D Dranidis * CITY College 51
  • 52. XP Practices: On-site customer The customer must always be available to answer questions resolve ambiguities set priorities review the product Customer is considered part of the team Continuous feedback! Get Ready for Agile Methods * D Dranidis * CITY College 52
  • 54. Requirements for the success of agile methods Collaborative environment People-centered organizations Small to medium sized teams (avg. 9 persons) Common open workplace Commitment Customer commitment Management commitment Developers commitment Get Ready for Agile Methods * D Dranidis * CITY College 54
  • 55. Wrap-up Agile methodologies in a fast changing world! Embrace change! The people factor Trust your team! User involvement Involve the customer! Useful practices even in a traditional development process Get Ready for Agile Methods * D Dranidis * CITY College 55
  • 56. Thank you! “It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is the most adaptable to change.” Charles Darwin Get Ready for Agile Methods * D Dranidis * CITY College 56
  • 57. About me… Senior Lecturer Computer Science Dept CITY College, International Faculty of the University of Sheffield Programme director of the MSc in Software Engineering & Telecommunications Leader of the "Software Engineering & Service-Oriented Technologies" research group, research interests: service-oriented computing, model-based testing, object-oriented analysis and design, formal methods, software engineering education, agile software development methodologies, and artificial intelligence. http://www.city.academic.gr/csd/dranidis/ Get Ready for Agile Methods * D Dranidis * CITY College 57
  • 58. Experience in software project management >10 years of management of >50 short (6-9 pms) software projects Industrial Group Projects Teams of undergraduate and postgraduate students developing software for the industry Plenty of successes and failures http://invent.city.academic.gr/ Get Ready for Agile Methods * D Dranidis * CITY College 58