You are on page 1of 38

Agile Software Project Management

Agility helps performance in activities that require you to change direction quickly
whilst keeping balance, strength, speed and control

Agile Organization - implemented the agile methods and training to


enable it to respond quickly to customer needs and market changes
while still controlling costs and quality.
1
https://dzone.com/articles/infographic-agile-project-management-methods 2
Agile Project Management

Agile Management or Agile Project Management is an


iterative and incremental method of managing the
design and build activities for engineering, information
technology, and new product or service development
projects in a highly flexible and interactive manner

Rolling Wave Planning (RWP) is the process of


project planning in waves as the project proceeds and later details
become clearer.

3
Traditional PM versus Agile Methods

• Traditional PM Approach
– Concentrates on thorough, upfront planning
of the entire project.
– Requires a high degree of predictability to be effective.

• Agile Project Management (Agile PM)


– Relies on incremental, iterative development cycles
to complete less-predictable projects.
– Is ideal for exploratory projects in which requirements need to be
discovered and new technology tested.
– Focuses on active collaboration between the project team and
customer representatives.

4
Traditional Project Management versus
Agile Project Management

Traditional Agile
Design up front Continuous design

Fixed scope Flexible

Deliverables Features/requirements
Freeze design as early as possible Freeze design as late as possible

Low uncertainty High uncertainty

Avoid change Embrace change


Low customer interaction High customer interaction

Conventional project teams Self-organized project teams

5
Agile PM Principles

Focus on customer value

Iterative and incremental delivery

Experimentation and adaptation

Self-organization

Continuous improvement

6
Popular Agile PM Methods

Scrum Crystal Clear

Extreme RUP (Rational


Programming Unified Process)
Agile PM
Methods Dynamic Systems
Agile Modeling Development
Method (DSDM)

Rapid Product
Development (RPD) Lean Development

7
Agile SCRUM Methodology

In Software Development

8
Presumptions

Hope you are aware of traditional software


development methodologies like Waterfall Model.

9
Waterfall Life-Cycle Model

• The linear life cycle


model with feedback
loops
– The waterfall model
cannot show the
order of events

10
10
Waterfall Life-Cycle Model
(Cont.)

• No phase is complete until the documentation for that


phase has been completed and the products of that
phase have been approved by the software quality
assurance (SQA) group.

• If the products of an earlier phase have to be changed as


a consequence of following a feedback loop, that earlier
phase is deemed to be complete only when the
documentation for the phase has been modified and the
modifications have been checked by the SQA group.

11
Waterfall Life-Cycle Model
(Cont.)

• Advantages:
– Documentation is provided at each phase
– All the products of each phase (including the
documentation) are meticulously checked by SQA. ➔
Maintenance is easier

• Disadvantages:
– Specification documents are long, detailed, and boring
to read.

12
12
What is Agile?
• Agile proponents believe
– Current software development processes are too heavyweight or
cumbersome
• Too many things are done that are not directly related to software
product being produced
– Current software development is too rigid
• Difficulty with incomplete or changing requirements
• Short development cycles (Internet applications)
– More active customer involvement needed
• CMM focuses on process

• Agile methods are considered


– Lightweight
– People-based rather than Plan-based

13
Agile Methods
• Agile methods:
– Scrum Refer Slide #7
– Extreme Programming
– Adaptive Software Development (ASD)
– Dynamic System Development Method (DSDM)
– …

• Agile Alliance (www.agilealliance.org)


– A non-profit organization promotes agile development

14
Characteristics

• Self-organizing teams

• Product progresses in a series of month-long “sprints”

• Requirements are captured as items in a list of “product backlog”

• No specific engineering practices prescribed

• Uses generative rules to create an agile environment for delivering


projects

15
How Scrum Works?

16
Scrum Framework

• Roles: Product Owner, Scrum Master, Team

• Ceremonies (formal events): Sprint Planning,


Sprint Review, Sprint Retrospective, & Daily
Scrum Meeting

• Artifacts : Product Backlog, Sprint Backlog, and


Burn down Chart

17
Product Owner

• Define the features of the product

• Decide on release date and content

• Be responsible for the profitability of the product (ROI)

• Prioritize features according to market value

• Adjust features and priority every iteration, as needed

• Accept or reject work results.


18
The Scrum Master

• 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


19
Scrum Team
• Typically 5-10 people

• Cross-functional
– QA, Programmers, UI Designers, etc.

• Members should be full-time


– May be exceptions (e.g., System Admin, etc.)

• Teams are self-organizing


– Ideally, no titles but rarely a possibility

• Membership can change only between sprints


20
Ceremonies
• Sprint Planning Meeting
• Sprint
• Daily Scrum
• Sprint Review Meeting

21
Product Backlog

• A list of all desired work on the project


– Usually a combination of
• story-based work (“let user search and replace”)
• task-based work (“improve exception handling”)

• List is prioritized by the Product Owner


– Typically a Product Manager, Marketing,
Internal Customer, etc.
• Is managed and owned by a Product
Owner
• Spreadsheet (typically)

22
Sample Product Backlog

23
From Sprint Goal to Sprint Backlog

• Scrum team takes the Sprint Goal


and decides what tasks are
necessary

• Team self-organizes around how


they’ll meet the Sprint Goal
– Manager doesn’t assign tasks to
individuals

• Managers don’t make decisions for


the team
• Sprint Backlog is created
24
Sprint Backlog during the Sprint
• Changes
– Team adds new tasks whenever they need to in order
to meet the Sprint Goal
– Team can remove unnecessary tasks
– But: Sprint Backlog can only be updated by the team

• Estimates are updated whenever there’s new


information

25
Sprint Backlog
• A subset of Product Backlog Items, which define
the work for a Sprint
• Is created ONLY by Team members
• Each Item has it’s own status
• Should be updated every day

(product backlog)

26
Sprint Backlog
• No more than 300 tasks in the list
• If a task requires more than 16 hours, it should
be broken down
• Team can add or subtract items from the list.
Product Owner is not allowed to do it

27
Sample Sprint Backlog

28
Sprints

• Scrum projects make progress in a series of


“sprints”

• Target duration is one month


– +/- a week or two
• But a constant duration leads to a better rhythm

• Product is designed, coded, and tested during


the sprint

29
Sprint
• A month-long iteration, during which is
incremented a product functionality

• NO outside influence can interfere with the


Scrum team during the Sprint

• Each Sprint begins with the Daily Scrum


Meeting

30
Daily Scrum
• Parameters
– Daily
– 15-minutes
– Stand-up • Is NOT a problem-solving
– Not for problem solving session
• Is NOT a way to collect
• Three questions: information about WHO is
1. What did you do yesterday behind the schedule
2. What will you do today? • Is a meeting in which team
3. What obstacles are in your way? members make commitments to
each other and to the Scrum
Master
• Is a good way for a Scrum
Master to track the progress of
the Team

31
Sprint Review Meeting
• Team presents what it accomplished
during the sprint
• Typically takes the form of a demo
of new features or underlying
architecture

• Participants
– Customers
– Management
– Product Owner
– Other engineers

• Informal
2-hour prep time rule
32
Sprint Retrospective Meeting
• Scrum Team only
• Feedback meeting
• Three questions
– Start
– Stop
– Continue
• Don’t skip for the first 5-6 sprints!!!

33
Sprint Burn down Chart
• Depicts the total Sprint Backlog hours remaining per day
• Shows the estimated amount of time to release
• Ideally should burn down to zero to the end of the Sprint
• Actually it is not a straight line

34
Release Burn down Chart
• Will the release be done on right time?
• X-axis: sprints
• Y-axis: amount of Story points/hours remaining
• The estimated work remaining can also burn up

35
Pros/Cons

Advantages Drawbacks
▪ Completely developed and ▪ “Undisciplined hacking”
tested features in short (no written documentation)
iterations ▪ Violation of responsibility
▪ Simplicity of the process
▪ Clearly defined rules
▪ Increasing productivity
▪ Self-organizing
▪ each team member carries
a lot of responsibility
▪ Improved communication

36
Key Terms

Agile PM
Feature
Iterative incremental development (IID)
Product backlog
Product owner
Release burndown chart
Release meeting
Scrum master
Scrum meeting
Self-organizing team
Sprint backlog
Sprint burndown chart

37
Backup

38

You might also like