0% found this document useful (0 votes)
28 views36 pages

06 AgilePM

The document discusses an agile approach to project management methodologies. It covers the agile manifesto, frameworks like Scrum and Kanban, and provides details on the Scrum framework. The Scrum framework focuses on completing work in iterations through events and activities while managing documentation artifacts like the product and sprint backlogs.

Uploaded by

SAI
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views36 pages

06 AgilePM

The document discusses an agile approach to project management methodologies. It covers the agile manifesto, frameworks like Scrum and Kanban, and provides details on the Scrum framework. The Scrum framework focuses on completing work in iterations through events and activities while managing documentation artifacts like the product and sprint backlogs.

Uploaded by

SAI
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

Agile Project

Management
Methodologies
Semester: Spring 2023
Instructor: Lou Iacona
Email: [email protected]

1/7/2023 CUNY/CSI CSC714 1


Agenda
• An Agile Approach to PM – why Agile?
• the Agile Manifesto
• Agile Frameworks
– RUP
– Kanban
– SCRUM
• The SCRUM Framework Expanded

1/7/2023 CUNY/CSI CSC330 2


Backdrop
• The SDLC – as we learned it:
1. Business Needs Analysis / Requirement
Gathering
2. System Design
3. Coding / Implementation
4. Testing/QA
5. Deployment/Delivery
6. Maintenance / Customer Support

1/7/2023 CUNY/CSI CSC330 3


Traditional [old] Approach to Building Software

• Waterfall Approach - a linear sequential method


of building software systems.

1/7/2023 CUNY/CSI CSC330 4


Cons of the Traditional Waterfall Method
• Lots of preparation overhead: documentation, meetings, schedule
planning, etc. – before a single line of impacting code is written.
• Work effort is less “partitionable” than it otherwise could be (more on
that later … )
• Doesn’t deal with change very well after the outset of the project.
– Extremely difficult to plan schedule for complex activities.
– Relies on the accuracy of a 1-trip end-to-end plan
– It’s difficult to develop a complete set of requirements up front
that stand up for long – even if they’re correct, circumstances
change!
– Designs often look good on paper – less than good once actual
implementation begins.

1/7/2023 CUNY/CSI CSC330 5


A Better Approach for the 21st Century (1)
• Agile Methodologies: Last 20+ years, the industry has been
formulating a better way to build software systems in a faster
pace, less predictable world.
• Focuses on:
– regularly deploying increments of working software as early and
frequently as possible.
– Just-Enough documentation and formal meetings to support the
process rather than creating documentation and meetings for their
sake.
• Agile life cycle is based on smaller progressive iterations of all 5
SDLC activities – rather than a single straight-through path:
1. realize what you need to design/implement
2. take a step toward that goal
3. test and review
4. adjust your understanding of what you need to design/implement
5. repeat – go to step 1
1/7/2023 CUNY/CSI CSC330 6
A Better Approach for the 21st Century (2)
• An agile approach is in-part taken from the so-
called OODA LOOP used by in US Airforce training.
– Orient
– Observe
– Decide
– Act
• Hypothesis: executing on complex software
development “according to plan” is futile.

1/7/2023 CUNY/CSI CSC330 7


Roots of Agile Software Development (1)
• RUP: Rational Unified Process: perhaps the first
documented process suggesting multiple
iterations through the SDLC … when web-based
application were first being developed.
– is “Use Case” Driven and UML Described
– is iterative and incremental
– emphasizes a solid architecture and the architect role
– RUP identifies the following phases:
• Inception: concept overview, business case, …
• Elaboration: identify and fully express requirements
• Construction: design and implement
• Transition: deploy and solicit feedback
1/7/2023 CUNY/CSI CSC330 8
Roots of Agile Software Development (2)
• Taking it a step further: “Agile” is a “collective” term for a
group of so called “light weight” approaches to Software
Development based on principles/values defined in …:
• … the Agile Manifesto: 12 principles (see next slide):
http://agilemanifesto.org/principles.html. In summary,
Agile favors:
– team members and interactions over formal processes
– working software over detailed documentation
– ongoing customer collaboration over formal contracts
– accepting and responding to change over following a complete
plan …

1/7/2023 CUNY/CSI CSC330 9


12 Agile [Manifesto] Principles
Our highest priority is to satisfy the customer Working software is the primary measure of
through early and continuous delivery of valuable progress.
software.
Agile processes promote sustainable
Welcome changing requirements, even late in development. The sponsors, developers, and
development. Agile processes harness change users should be able to maintain a constant pace
for the customer's competitive advantage. indefinitely.

Deliver working software frequently, from a Continuous attention to technical excellence and
couple of weeks to a couple of months, with a good design enhances agility.
preference to the shorter timescale.
Simplicity--the art of maximizing the amount of
Business people and developers must work work not done--is essential.
together daily throughout the project.
The best architectures, requirements, and
Build projects around motivated individuals. designs emerge from self-organizing teams.
Give them the environment and support they
need, and trust them to get the job done. At regular intervals, the team reflects on how
to become more effective, then tunes and
The most efficient and effective method of adjusts its behavior accordingly.
conveying information to and within a
development team is face-to-face conversation.
1/7/2023 CUNY/CSI CSC330 10
The Kanban Method
• Focus: super lightweight way to manage work -
frequently used to apply updates to legacy
systems where a support team mainly responds to
bug fixes and minor change requests. Focus on
continuous deployment.
• Structure: very little structure beyond the Kanban
Board (see next Slide)
• Event driven rather than plan driven
• Effort / Time Estimation is optional
• No officially defined Roles
1/7/2023 CUNY/CSI CSC330 11
The Kanban Method

1/7/2023 CUNY/CSI CSC330 12


1/7/2023

13

An agile framework
for project
management:
CUNY/CSI CSC330

usually software
development.
• Goals
• Main features of the methodology
• Basic structure and flow
• Managed Documentation Artifacts
• Events / Activities
• Sample “User Stories”
• Case Studies
1/7/2023 CUNY/CSI CSC330 14
SCRUM Background
• Created by two of the “signers” of the Agile Manifesto:
– Jeff Sutherland
– Ken Schwaber
• Motivation: the following observations:
– Front loaded plans based on complete product
requirements are likely to change dramatically over the
course of executing the plan.
– Technical staff and project managers are typically poor
effort/estimators.
– Even professionals with the best of intentions can be less
than honest and clear in their communication.
– Complex Software Systems development is not as scalable
or partitionable as it needs to be.
1/7/2023 CUNY/CSI CSC330 15
High Level Lofty Goals
• Complete twice the work in half the
time by maximizing productive work
and minimizing or eliminating
“project overhead” that had no
value.
• Continuously track productivity and
improve where possible
1/7/2023 CUNY/CSI CSC330 16
Features / Characteristics
• Embracing of change throughout the SDLC
• Releases working software increments at regular
rhythm / pace.
• Self organized, cross functional, small teams execute
SDLC cycles.
• Openness and transparency across the team.
• Continuous involvement of all stakeholders including
customer or customer advocate.
• Compensates for universal human weaknesses rather
than try to fix them.
• Easy to understand – not so easy to master!

1/7/2023 CUNY/CSI CSC330 17


Artifacts
• Product Backlog: a continuously evolving ordered list of
product features (usually in the form partially completed or
completed User Stories). Order can be influenced by:
– perceived value in the product
– absolute necessity
– time in the backlog
– complexity
• Sprint* Backlog: the subset of Product Backlog items slated
to be completed (to a Done state) in the current Sprint.
• Releasable Product Increment: the sum of all completed
Backlog Items in current and all previous Sprints. The set of
all working features in the product considered “shippable”.
• User Story: a document that captures a feature description
from end user perspective – the User Type, what they want
and why.
1/7/2023 CUNY/CSI CSC330 18
User Story Example
• General Template / Form:
– as a [User Type], I want to [do something] so that I
can [realize some value].
• Example:
– as a System Administrator, I want to bulk-import
Product Catalog items from an Excel Workbook or
CSV file interactively so that I can avoid the time
consuming work of submitting through the Catalog-
Item Update/Creation form, and not need to wait for
weekly system data feed to apply Product Catalog to
a current state.

1/7/2023 CUNY/CSI CSC330 19


FYI: Difference between User Story
and Use Case Documentation
… What's not said below is the fact that User Stories are an artifacts of
Agile SCRUM - they wouldn't exist as a discussion point if not for
SCRUM which requires quick prioritization for what might be 1-2 week
development cycles. For the purposes of this course, we will be
elaborating our features in the form of Use Cases (I'll provide a
template), but when we discuss SCRUM, we will describe User Stories
for what they bring to the SCRUM planning cycle.
….. [LAST of 4 PARAGRAPHS]
“The difference between use cases and user stories becomes very clear when
we look at their purpose. A use case captures the detailed requirements of a
user/system interaction, with the primary purpose of handing it off to the
development team who will develop the solution. In contrast, a user story
captures high-level requirements without going into details that might be
changed later, for the primary purpose of identifying features and their
associated business value, so that they can be prioritized appropriately.”
1/7/2023 CUNY/CSI CSC330 20
Events / Activities (1)
• Intended to create a regular rhythm and minimize the
need for formal meetings undefined by SCRUM
• 4 opportunities to “Observe” and “Decide”
1. Sprint Planning
2. Daily Standup
3. Sprint Review
4. Retrospective
• Estimating and Executing
1. Planning Poker
2. The Sprint

1/7/2023 CUNY/CSI CSC330 21


Events / Activities (2)
1. The Sprint: given a unique number or name. Sprint
cycles form the heartbeat of SCRUM – a strict time
box between 1 & 4 weeks (pick one, and stick with it
throughout the project). A Sprint is defined by:
– what must be built
– design & plan for building it
– the collective team effort to execute
2. Sprint Planning: defines the work to be performed
for current Sprint:
1. Part 1: nominates next prioritized items from Product
Backlog Sprint Backlog
2. Part 2: SCRUM Team determines what it can accomplish
and how (usually through “planning poker”).

1/7/2023 CUNY/CSI CSC330 22


Events / Activities (3)
3. Planning Poker: a relative “sizing” [number] or level
of complexity (based on the Fibonacci Sequence) is
assigned to each nominated User Story in a way
that promotes honesty and clear thinking …
https://www.youtube.com/watch?v=_jYiuYtrpp8
4. Daily Standup: intended to be time-boxed to 15-20
mins. Each team member presents:
– what he/she accomplished since the previous meeting
– what will be done before the next meeting
– if any impediments are in the way

1/7/2023 CUNY/CSI CSC330 23


Events / Activities (4)
5. Sprint Review: 1-4 hour time-boxed meeting
where the team:
– demos the work that’s been accomplished
– acknowledges what’s been done
– forecast what can be done in the next Sprint
6. Retrospective: 1-3 hour time-boxed meeting -
takes place after the Sprint Review and before
the next Sprint Planning meeting:
– review productivity of last Sprint
– identify what went well and what didn’t
– agree on how to improve going forward

1/7/2023 CUNY/CSI CSC330 24


Self/Team Evaluation (1)
• The “sizing points” assigned during
Planning Poker are significant … in that
Sprint progress is tracked based on:
– number of points across all User Stories
completed
– shows how much work is being a team can
typically accomplish …
– … and, if they’re improving over time.

1/7/2023 CUNY/CSI CSC330 25


Self/Team Evaluation (2)

1/7/2023 CUNY/CSI CSC330 26


The Context of a Sprint

1/7/2023 CUNY/CSI CSC330 27


Roles (only 3 …)
1. Product Owner: manages the product backlog and
while representing the interests of the customer /
user [the what & when]
2. SCRUM Master: the “orchestra leader” of the team
in a “servant leader” capacity. Drives SCRUM values,
address progress impediments. Doesn’t dictate “the
how”, but rather facilitates team activities.
3. SCRUM Team [Member]: software professional
involved in design/development/testing/release
effort.
– Optimum size: 7 +/- 2
– Preferably dedicated to 1 project effort at a time
– “cross skilled” individuals make the best team members
1/7/2023 CUNY/CSI CSC330 28
More on the SCRUM Master
1. serves the Product Owner:
– Manages Product Backlog
– Facilitates Scrum Events
– Keep team’s attention on vision, goals, priorities, …
2. serves the Development Team:
– Acts as a coach for their own self-organization, skills
training, and the rules of SCRUM
– Escalates issues and generally works to remove
impediments to completing tasks.

1/7/2023 CUNY/CSI CSC330 29


Conclusion: Benefits of Agile Approaches
• Speed to market – focus on early working
software.
• Mitigates risk and limits up front investments.
• Better adoptability in a fast changing
marketplace.
• Continuous “feedback loop” provided by
iterations, all but ensures that you’re building
the right thing!

1/7/2023 CUNY/CSI CSC330 30


My Opinion
• “Agility” most definitely has a place in developing
software systems in 2023, but be practical.
• Choice might be project-undertaking dependent.
• For any given undertaking, there’s room for a
customized approach.
• Mix and match along the timeline: e.g., start with
RUP and later adopt a faster rhythm SCRUM …
• In Summary: Don’t get religious, don’t fall in love
[with an SDLC management approach, that is].

1/7/2023 CUNY/CSI CSC330 31


True or False
?
1. In 2023, there is no longer a
compelling reason to ever mange a
software development project
using the waterfall model. [ ]

2. Applying SCRUM is very easy, and it


basically negates all typical, well-
known PM problems associated
with traditional project
management. [ ]
Agile & the CSC714 Group Project
• You are not required to apply an agile
approach to your class project development
… (although you likely will).
• … however, if you decide to try applying a
SCRUM or a “SCRUM-like” or Kamban
approach to some or all of your app features,
please share the experience during your
project presentation.
1/7/2023 CUNY/CSI CSC330 33
Case Studies
• FBI SENTINEL Project: $170M of spent cash - nothing of
value worked … after 9/11, the spotlight was on them -
needed to get something done.
http://www.scrumcasestudies.com/fbi/
• HealthCare.gov: - backend was performed by different
agency than front end …. UI was built using SCRUM … UI
was ready to roll, but back end and integration were solely
lacking ….
• Medco: premature announcement by senior management
to Wall Street by management …
https://www.scruminc.com/company-agile/
• Others:
http://www.scrumcasestudies.com/
https://lookforwardconsulting.com/2012/11/28/14-scrum-case-studies/
http://www.drnino.jp/files/830102a4ff.pdf
1/7/2023 CUNY/CSI CSC330 34
Further Study/Research
 Textbook
– P P 14~17
 The WEB
– Agile Methodology:
• http://agilemanifesto.org/
• https://www.agilealliance.org/
– RUP - http://www.informit.com/articles/article.aspx?p=24671&seqNum=7
– KANBAN - https://www.agilealliance.org/glossary/kanban
– SCRUM:
• https://www.scrum.org/
• https://www.scrum.org/resources/scrum-guide
• https://www.scrum.org/professional-scrum-certifications
• https://www.scrumalliance.org
Q&A

1/7/2023 CSI/CUNY CSC714 36

You might also like