Join Philip Lew from PNSQC and Yingki Kwong from PPLF (Portfolio and Project Leaders Forum) as they discuss Agile Risk and Uncertainty. Agile is designed to handle uncertainty in requirements as new features are requested and their priorities shift in real time. Agile sprints produce frequent software releases based on direct input from the business. This tight coupling with the business enables, in theory, early detection of defects in requirements and designs; as high level user stories / scenarios are elaborated to produce detail requirements that support design, development, and implementation. However, in chasing agility, projects often ignore or can only poorly understand the uncertainties and associated project risks introduced by important Agile processes, such as the backlog. With relentless sprints, it is easy to view completed sprints as a proxy for progress. The risk trap is poor understanding of the probability and impact of the actual project risks associated with implementing certain user stories incorrectly (scope / quality risks) and actual velocity falling short of the expected (schedule / budget risks). A key question is: how do we mitigate the uncertainties that are introduced by using Agile? Phil Lew suggests that an important problem is that we sometimes carry assumptions which either cause us to spend too much effort on things we can’t control or give us unfounded comfort and reassurance. If we can’t understand the uncertainties and risks, how can we have confidence in our software as systems become more complex? Phil supplements classic risk management techniques with a lifecycle approach on risk and uncertainty to identify and address the uncertainties that matter—and those that don’t. Then Phil outlines methods that you can use to address these risks while maintaining rhythm in your agile software processes. Come and learn about risks you never thought of and see how you can manage or avoid them.
4. Our Speaker Today
Philip Lew
PNSQC Board Member, Program
Chair, and Speaker
• CEO, XBOSoft
• Relevant specialties and passions
o Software quality process,
evaluation, measurement and
improvement
o Software quality in use / UX design
o Mobile User Experience and
usability
o Cycling and travel
o He never learned how to read
4
5. Our Moderator Today
@philiplew @pnsqc
5
Ying Ki Kwong
PNSQC Volunteer and Speaker
PPLF Member
• Statewide QA Program Manager,
Office of the State CIO, State of Oregon
• Relevant specialties and passions
o Quality & risk management
o Enterprise IT project management
o Complex systems and complexity
o Volunteering for local nonprofits
o Travel
11. What Got Us Here
• Smaller teams
• Faster iterations
• Listening to the user
• Continuous beta
• Data collection & analytics
11
• Communication/Collaboration
• Full stack teams
• Retrospectives
• Analysis, adaption and
improvement
1. Changes in technology (mobile, cloud)
2. Changes in business models
3. Many failures…
@philiplew @pnsqc
20. Product Risks
• Delivered too late, 1st mover or even 2nd mover
advantage dissipated
• Doesn’t do what the customer/user wants
• We missed the mark, it does what we wanted
but…
• Too slow
• Harder to do than we thought
• Can’t deliver sought after/differentiator features/
functions
• “Move it to the backlog for now…”
• ______
@philiplew @pnsqc
20
21. Process Risks
• Too slow
• Not repeatable
• Delicate and FrAgile – Easily broken
• Not adaptable
• Not consistent
• Too dependent on a superhero
@philiplew @pnsqc
21
29. In the End, We Want to
• Find problems early
• Find big problems
• Avoid problems altogether
• **Problems by nature have negative
consequences
• Our job is to decrease this probability
• Agile helps us with this, but we need to focus on
those activities with the right viewpoint to gain
this insight
@philiplew @pnsqc 29
38. Product Management (1)
Risk Mitigation
Delivery delay • Drive towards estimating accurately.
• Align expectations and what can and cannot be
delivered in planning meeting.
• Reduce/manage expectations.
Even though the application
works, it doesn’t work as it
was intended to do.
Review backlog user stories to ensure you
understand them fully.
Scope creep Evaluate existing backlog, new items, add/delete
and trade out.
Personnel loss Ensure full stack team with cross disciplinary skills
Forgotten or overlooked risk When developing the backlog explicitly ask to
identify the potential problems.
@philiplew @pnsqc
38
40. Risk Mitigation
Planning takes too much time
and therefore doesn’t get
done, or done well/
completely.
• Ensure a clear prioritization process
• Ensure that planning and grooming sessions
have clear output
Estimation process is not
clear, not standard and not
oriented toward improvement
• Ensure clear acceptance criteria within the user
story and the definition of done.
Stakeholders say, “I didn’t
know that” or don’t officially
‘approve’.
• Develop guidelines for documentation, tracking
and reporting to allow visibility and
transparency of all project aspects
Delays due to who decides as
the ultimate authority on a
feature-or other decision
• Setup guidelines for agile decision making.
Product Management (3)
@philiplew @pnsqc
40
41. Sprint (1)
Risk Mitigation
• Testing incomplete, or
rushed at the end
• Implement test driven development
• Include testing in the definition of done
• Demonstrations at the end
of the sprint not conclusive
(done or not?)
• Insufficient integration, or
integration too late
• Review stories to ensure acceptance criteria are
clear
• Definition of done includes testing and
integration
• API automated testing
• We deliver product and find
out we have some security
and performance issues
which require architectural
changes.
• Worsening performance
• Define measurements for many viewpoints on
improvement, not just velocity.
• Periodically test non functional requirements as
part of definition of done.
• Include performance criteria in definition of done
• Implement performance testing criteria and
scenario testing for most common user scenarios
@philiplew @pnsqc
41
43. Risk Mitigation-Items to Examine
Risks forgotten or unknown • Gather risk data though surveys when the program
stakeholders are geographically diverse.
• Interview customers or potential customers.
Feature turned out too
hard to implement or took
too much time
Ask these questions:
• How was the feature implemented? Did we make it
harder than we needed to?
• Did we make any architecture decisions from before
that impeded this feature
• Is the underlying structure and architecture able to
meet future needs
Scope creep Examine unplanned work, check estimates
Personnel loss Review issues created due to lack of skills or people
Retrospective (1)
@philiplew @pnsqc
43