SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
Normalizing Agile and Lean Product Development &
AIM




Agile and lean product development is an empirical
      and adaptive approach that allows the
organization, the team and the individual to follow
a general set of values, principles and practices
                   – a philosophy
        rather than a step-by-step process
This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 1 of 27
Intent of this document
By design this set of norms is neither intended to be prescriptive nor complete in detail.
It contains just enough detail to promote and facilitate a collaborative, self-directing and
self-organizing agile and lean product development team.

What should come to mind is less is more.

Today‘s system-software development methodologies have in common with nature the
life span of infancy, childhood, adolescence, adulthood, and aging. Additionally,
methodologies, sometimes as part of their life span, enter into a relationship or marriage
with other methodologies; like has happened with Agile Software Development and
Lean Manufacturing.

Likewise, methodologies of the past and present have an associated taxonomy, new
jargon and technical terminology or idiomatic expressions of the practitioner. They also
tend to reuse old jargon but with different connotations.

For example:
    System thinking
    Kanban
    Kaizen
    Value-stream
    Velocity
    Scrum
    Story
    Story Board
    Retrospective

The what, why, and how of agile and lean product (system-software) development and
delivery is not one persons vision alone; to become reality it needs to be a "shared"
vision through negotiation and compromise between individuals, the team and the
organization.

The following is a set of norms for your agile and lean product (system-software)
development teams to rally around and evolve.

Look at it as musicians do sheet music. Recognizing, the more familiar the musicians
are with the musical score and the more experience they have playing together, the less
dependent the musicians are on the sheet music; except when introducing new
musicians to the musical ensemble. This metaphor is applicable to an agile/lean product
(system-software) development team and your set of norms.


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 2 of 27
We are climbing a slippery slope when setting norms. We need to be keenly aware your
norms should not be rigid or prescriptive and should evolve through collaboration
between self-organizing and self-directing cross-functional teams based on reality.

Norm setting can only work if the team is truly able to arrive at consensus. Norms won‘t
stick if members have reservations about them. However, once consensus is reached,
the team is equipped with a guide that can serve to strengthen positive practices. A set
of norms can serve as a common reference if contrary behaviors arise. Finally, written
norms are handy for potential members and newcomers who want to quickly get a
sense of the team‘s adoption of being agile.

Norms in hand, a team can move forward inspired and motivated to uphold the team‘s
approach and confident in the security such guidelines provide.

When you get to the Agile Implementer Matrix (AIM) some of you agile purist may
cringe.

 AIM is primarily targeted towards those enterprises that have corporate defined roles
and responsibilities; it will help reduce people‘s frustration during their agile adoption.

Once the enterprise evolves from a command-and-control and specialists become
generalists AIM may not be as useful.




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 3 of 27
Values

While there is value in the items on the right, we value the items on the left
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




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 4 of 27
Principles
.
                                                 • Remove what isn‘t of value to the customer or
          Eliminate Waste
                                                   business partner

                                                 • Improve software development by improving the
          Amplify Learning
                                                   adoption through learning


    Decide As Late As Possible                   • Delay decisions until assumptions become fact


    Deliver As Fast As Possible                  • Quicker delivery of results with quicker feedback

                                                 • Allow the front-line workers (i.e. development) to
        Empower The Team                           make the major decisions about how to dvelop and
                                                   deliver the solution
                                                 • Build for perceived (customer view) and
          Build Integrity In                       conceptual (system view) integrity, flexibility and
                                                   efficiency

                                                 • View the software as a whole and not as a sum of
           See The Whole
                                                   its parts (System Thinking)



1. Our highest priority is to satisfy the customer through early and
   continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Being agile
   and lean harnesses change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple
   of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout
   the project.
5. Build projects around motivated individuals. Give them the environment
   and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and
   within a development team is face-to-face conversation.
7. Working software is the primary measure of progress.
8. Being agile and lean promotes sustainable development. The sponsors,
   developers, and users should be able to maintain a constant pace
   indefinitely.
This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 5 of 27
9. Continuous attention to technical excellence and good design enhances
    agility.
10. Simplicity--the art of maximizing the amount of work not done--is
    essential.
11. The best architectures, requirements, and designs emerge from self-
    organizing teams.
12. At regular intervals, the team reflects on how to become more effective,
    then tunes and adjusts its behavior accordingly.

 Scrum Framework




 ―There will be no Scrum Release 2.0… Why not? Because the point of Scrum is not to
 solve [specific problems of development]… Scrum unearths the problems caused by the
 complexity and lets the organization solve them, one by one, over and over again.‖ 1

 ―Scrum is a simple framework that exposes problems. It is a mirror. We are not
 suggesting that new ideas cannot arise and improve the framework. But attempts to
 ‗improve‘ it are most often (1) avoidance of dealing with the weaknesses exposed when
 regular Scrum is really applied, (2) conformance to status quo policies or entrenched
 groups, (3) belief in a new silver bullet practice or tool, (4) fuzzy understanding of Scrum
 and empirical process control, or (5) an attempt by the traditional consulting companies
 to sell you a process—―Accenture Scrum/Agile,‖ ―IBM Scrum/Agile,‖ and so on.‖2

 1
     Schwaber, K., 2007. “Scrum Release 2.0?” Scrum Alliance Articles, at http://www.scrumalliance.org/articles/12-scrum-release
 2
     Larmen, C. & Vodde, B., 2010. Practices for Scaling Lean & Agile Development, Addison Wesley

 This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
 detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
   Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 6 of 27
Practices
A practice is a common approach for doing something with a specific purpose in mind.
There are no best practices—only adequate practices in context.

Since so-called best practices are ‗best,‘ they also inhibit a ―challenge everything‖
culture and continuous improvement—a pillar of lean thinking. Why would people
challenge ‗best‘? Mary Poppendieck, coauthor of Lean Software Development,
reiterates this point and draws the historical connection from best practices to
Taylorism:

           Frederick Winslow Taylor wrote ―The Principles of Scientific Management‖ in
           1911. In it, he proposed that manufacturing should be broken down into very
           small steps, and then industrial engineers should determine the ‗one best way‘ to
           do each step. This ushered in the era of mass production, with ‗experts‘ telling
           workers the ‗one best way‘ to do their jobs. The Toyota Production System is
           founded on the principles of the Scientific Method, instead of Scientific
           Management. The idea is that no matter how good a process is, it can always be
           improved, and that the workers doing the job are the best people to figure out
           how to do it better… Moreover, even where a practice does apply, it can and
           should always be improved upon. There are certainly underlying principles
           that do not change. These principles will develop into different practices in
           different domains...‖3




3
    Poppendieck, M., 2004. “An Introduction to Lean Software Development,” at www.poppendieck.com/pdfs/Interview.pdf

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 7 of 27
Agile Implementer Matrix (AIM)
The Agile Implementer Matrix (AIM) may make some of you agile purist cringe. AIM is
primarily targeted towards those enterprises that have corporate defined roles and
responsibilities; it will help reduce people‘s frustration during their agile adoption. Once
the enterprise evolves from a command-and-control and specialists become generalists
AIM may not be as useful.



                                                                                 AIM
                                    (Agile Implementer Matrix)
 R = Responsible                   Defines and commits to getting "done", done
                                   Individual who is ultimately accountable for the correct and
 A = Accountable                   thorough completion of the artifact or ceremony, and the
                                   one to whom Responsible is accountable
                                   Individuals whose opinions are sought; and with whom
 C = Consulted
                                   there is two-way communication
                                   Individuals who receive summary of what was "done" but
 I = Informed                      need not be consulted and with whom there is just one-way
                                   communication
 One person may fill
                                                         Business Analyst




                                                                                                                    Project Manager
                                                                                                Product Owner




                                                                                                                                                           Scrum Master
 multiple roles
                                       Agile Coach




                                                                                                                                          QA Analyst
                                                                                Developer




                                                                                                                                                                              Tester
 Depicted are a
 minimum set of roles,
 artifacts and
 ceremonies
 Artifacts
 Burndown Charts                   C                 C                      C               I                   I                     C                R/A                C
 Product Backlog                   C                 C                      C               R/A                 I                     I                I                  I
 Product Roadmap                   I                 C                      I               R/A                 I                     I                I                  I
 Release Plan                      I                 C                      C               A                   C                     C                R                  C
 Sprint Backlog                    C                 C                      C               I                   I                     C                R/A                C
 Story                             C                 R                      R               A/C                 I                     C                C                  C
 Test Script                       C                 C                      C               I                   I                     C                I                  R/A
 Vision                            I                 C                      I               R/A                 I                     I                I                  I
 Ceremonies
 Daily Scrum                       C                 R                      R               I                   I                     R                A                  R
 Release Planning                  I                 C                      C               A                   C                     C                R                  C
 Sprint Planning                   C                 R                      R               I                   I                     R                A                  R
 Sprint Retrospective              C                 R                      R               I                   I                     R                A                  R
 Sprint Review                     C                 R                      R               C                   I                     R                A                  R

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 8 of 27
Roles
Have you recently joined an Agile team, or have been part of one for some time, and
aren't fully clear on the roles and responsibilities - especially yours? The collaborative
nature of Agile presents a interesting paradigm shift where roles and responsibilities
somewhat blur and teams ideally self-organize.

Therefore, as you, your team and your organization evolve and adapt to being agile and
lean and using the Scrum framework it is about each existing role complementing each
other's responsibilities working towards the delivering of an increment of the product
while the individual, team and organization work through the redefinition of
organizational roles and responsibilities in your new world of being agile and applying
the Scrum framework. Team members should reflect and refine their roles to meet the
goal and needs of the team.

Agile Coach
Agile coaches attempt to influence teams in different ways. Based on empirical
knowledge agile coaches typically work by instinct and intuition. This makes it very hard
to explain what coaches do and a challenge to teach people how to coach agile teams.

First and foremost an agile coach must be a ―servant leader‖. Robert Greenleaf, who
after a career working with many talented leaders at AT&T from the mid-1920s to the
mid-1960s, identified the desire to serve as the core motivation for great leaders, and
the growth of people as the chief indicator of such leaders, whom he called ―servant
leaders‖. ―The best test (of the servant leader) is, do those served grow as persons? Do
they become healthier, wiser, freer, more autonomous (self-directed and self-
organizing), more likely themselves to become servant leaders.‖

Next an agile coach must be both a system-thinker [see the big picture] and a tactical-
thinker.

System thinking is the process of predicting, on the basis of anything at all, how
something influences another thing. It has been defined as an approach to problem
solving, by viewing "problems" as parts of an overall system, rather than reacting to
present outcomes or events and potentially contributing to further development of the
undesired issue or problem. System thinking, planning, and actions reflect one‘s ability
to take into account the big picture, to recognize patterns and trends, mental models,
foresee issues, predict outcomes, and have smart "Plan B's" to fall back on. System
thinking deals with mission and purpose - why your business exists, how it makes a
difference, and where it will be in the future.

Tactical thinking refers to the hands-on part of getting the job done; making sure the
system-thinking vision is met. Getting the job done, with respect to ―being‖ agile,

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 9 of 27
consists of iterative and incremental product development and delivery, with progress
measured by the commercial or operational value added incrementally.

When a team is working towards ―being‖ agile, the agile coach introduces a set of
practices around which the team self-organizes & self-directs. The team in turn selects
one or more practice to apply to an iteration/sprint. The agile coach must have hands-on
experience applying the practices.

Return to Top

Business Analyst
The Business Analyst becomes a valuable contributor to the Product Owner.

The Business Analyst is a role that seems neglected by Scrum. To ensure close
collaboration between the team and the Product Owner, Scrum ensures that the
necessary elements are effectively communicated directly to the team without complex
documentation. However, to ensure continuity of information, we know that functional
documentation that is adequate and representative of the system-software to be
developed is essential.

In a multi-team context, the Business Analyst may be called upon to play the role of
Product Owner. He/she then becomes responsible for core components of the product
within the various sub-teams.

Return to Top


Developer
A Developer, iteratively and incrementally, turns Product Backlog items (stories) into
potentially shippable functionality every Sprint.
       Developers may be cross-functional
       Developers often have specialized skills, such as programming, architecture,
       user interface design, database design, etc.

Return to Top


Product Owner
The Product Owner represents the single, unified view of the product and is ultimately
accountable for its delivery and the evaluation if it meets its targeted ROI. The Product


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 10    of
27
Owner works with various stakeholders to define what is important to have in the
product and the prioritization of these features.

Return to Top


Project Manager
Traditionally, the project manager is responsible for determining who, what, and when
activities need to be performed and then to ensure the team complies with the plan that
was prepared to meet the budget, time and scope constraints.

With the traditional approach, project management is based on compliance with the
plan while Agile/Lean and Scrum propose a different approach where maximizing the
business value is the main vector of project management. Under this new approach, the
project manager needs to collaborate with the team and delegate to them some of
his/her traditional responsibilities since the team will determine who does what, how,
and when within the constraints of the project; as part of sprint planning..

In this context, the role of the Scrum Master is to enforce the framework and seeks to
build an efficient self-organized team. To the question ―Do we still need a project
manager in Agile?‖, experience shows us that in most organizations, the answer is yes.

The need for accountability, regulatory compliance and alignment with the framework
and IT governance are not covered by the role of the Scrum Master and as such remain
the responsibility of the project manager.

However, the project manager needs to adapt their management style and use
leadership rather than authority with the team to get things done. In the context of a
multi-team organizational structure, the presence of a project manager is also valuable,
where he/she is coordinating the teams and the synchrony between them and between
entities external to the project teams.

Based on empirical knowledge, some project managers are more willing to become
Product Owners while others will feel challenged by the role of Scrum Master.

Return to Top


QA Analyst
Rather than building the product (system-software) in a linear fashion and resolving
bugs at the end of the system-software development lifecycle, agile and lean product
development teams address defects as soon as they‘re discovered. Such conscientious

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 11    of
27
coding might add work in the short-term, but it ensures that the team is always working
with clean, functional code and vigilantly eliminating bugs, which significantly cuts
development time, eliminates waste and delivers value frequently.

Quality is a fundamental concern in agile and lean product development as we
iteratively and incrementally develop value adding, quality system-software.

Part of the reason for success being agile and lean and applying the Scrum framework
is not to offend or alienate folks in exiting organizational roles such as Quality Analyst,
Project Managers, Business Analysts, Testers, etc.; roles not specifically defined in
Scrum.

When a quality analyst position exists in your organization this role should be an active
member of the Scrum team and right from the start of the project.

A QA analyst assigned to a Scrum team has the following responsibilities:
     Participates in planning sessions to raise issues relating to quality
     Helps clarify the definition of ―Done‖‗
     Prepares plans for acceptance testing
     Verifies and validates the increments of product delivered
     Continuous adaptive and empirical process improvement

Minimum skills
      General knowledge of all aspects of agile and lean product development
      Experience in a wide variety of testing efforts, techniques and tools
      People skills, especially diplomacy and advocacy skills
      Planning and management skills
      Knowledge of the domain, system or application-under-test
      Experience programming or managing programming teams


Return to Top

Scrum Master
The Scrum Master is responsible for ensuring that the Scrum Team adheres to Scrum
values, practices, and rules. The Scrum Master helps the Scrum Team and the
organization adopt Scrum.

The Scrum Master teaches the Scrum Team by coaching and by leading it to be more
productive and produce higher quality products. The Scrum Master helps the Scrum
Team understand and use self-management and cross-functionality. However, the
Scrum Master does not manage the Scrum Team; the Scrum Team is self-organizing
and self-directing.
This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 12    of
27
Return to Top


Tester
A Tester is first a team member that executes test cases for story verification and
validation. The tester may be done by any team member. For example, the developer
can test their code with unit tests, component integration tests, or automated system
tests. The idea here is that the tester role is a mindset that different team members can
assume when needed. Now that being said if you have an individual whose sole
purpose is to be the tester on the team then they should focus on testing methodologies
and how the testing can be done. They are also responsible for ensuring that the
testing is being done in the most agile/lean way. They should be suggesting testing
approaches during planning and estimation meetings.

An agile tester guides the entire product development team in a way that ensures that
features of the product and the product as a whole behave as intended and without
bugs. An important step is communicating how we know when a story/feature is done.
We do this by fleshing out enough test cases and test scripts, from acceptance criteria;
so that each story/feature can be verified and validated for functional completeness as
it's developed. As testers, we are also responsible for ensuring that non-functional
requirements (performance, scalability, security, usability, and etc.) are also met.

A Tester has the following responsibilities
      Focus on testing methodologies and how the testing will can be done
      Ensure that the testing is being done in the most agile/lean way
      Participates in planning sessions suggesting testing
      Guides the entire product development team in a way that ensures that features
      of the product and the product as a whole behave as intended and without bugs
      Helps clarify the definition of ―Done‖
      Derives test cases and test scripts, from acceptance criteria; so that each
      story/feature can be verified and validated for functional completeness as it's
      developed
      Ensuring that non-functional requirement (performance, scalability, security,
      usability, and etc.) are also met
      Gathering and managing the Test Data
      Logging outcomes and verifying that the tests have been run
      Analyzing and guiding the recovery from execution errors
      Communicating test results to the team

Minimum skills
      Good analytical skills


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 13    of
27
A challenging and inquiring mind
        Attention to detail and tenacity
        Understanding of common software failures and faults
        Knowledge of the domain
        Knowledge of the system or application-under-test
        Experience in a variety of testing efforts
        Training in the appropriate use of test automation tools
        Experience using test automation tools
        Programming skills
        Debugging and diagnostic skills

Return to Top




Artifacts
Burndown Charts
Sprint Burndown Chart




The Sprint Burndown Chart is a graph of the amount of Sprint Backlog work remaining
in a Sprint cross time in the Sprint. To create this graph, determine how much work

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 14    of
27
remains by summing the backlog estimates every day of the Sprint. The amount of work
remaining for a Sprint is the sum of the work remaining for all of Sprint Backlog. Keep
track of these sums by day and use them to create a graph that shows the work
remaining over time. By drawing a line through the points on the graph, the Team can
manage its progress in completing a Sprint‘s work. Duration is not considered in Scrum.
Work remaining and date are the only variables of interest.

Product Burndown Chart




The Product Backlog Burndown Chart records the sum of remaining Product Backlog
estimated effort across time. The estimated effort is in whatever unit of work the Scrum
Team and organization have decided upon. The units of time are usually Sprints.

Return to Top




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 15    of
27
Product Backlog




The requirements for the product that the Team(s) is developing are listed in the
Product Backlog as stories. The Product Owner is accountable for the Product Backlog,
its contents, its availability, and its prioritization. The Product Backlog is never complete.
The initial cut at developing it only lays out the initially known and best-understood
requirements. The Product Backlog evolves as the product and the environment in
which it will be used evolves. The Product Backlog is dynamic in that it constantly
changes to identify what the product needs to be appropriate, competitive, and useful.
As long as a product exists, the Product Backlog also exists.

The Product Backlog represents everything necessary to develop and launch a
successful product. Product Backlog items have the attributes of a description, priority,
and estimate. Priority is driven by risk, value, and necessity. There are many techniques
for assessing these attributes.
The Product Backlog is sorted in order of priority. Top priority Product Backlog items
drive immediate development activities. The higher the priority, the more urgent it is, the
more it has been thought about, and the more consensus there is regarding its value.
Higher priority backlog items are clearer and have more detailed information than lower


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 16    of
27
priority backlog items. Better estimates are made based on the greater clarity and
increased detail; the lower the priority, the less the detail.


Attributes
        Product Backlog Owner Name
        Program and Project Identifier
        Baseline Signoff Date
        Story
          Text
          Acceptance Criteria
          Priority
          Size
          State
               o Open - the story not yet assigned to a Release or Sprint
               o Refining – not clear about the desired behavior and functionality the
                   system-software must implement
               o Assigned to Release - the story has been assigned to a Release
               o Assigned to Sprint - the story has been assigned to a Sprint
               o Assigned to Team Member - the story has been assigned to a team
                   member
               o In-Progress - the team member responsible for the story is actively
                   working on developing and implementing the story
               o Done - the development and implementation of the story has been
                   verified and validated based on the agreed upon definition of done
               o Released - part of system-software components now running in
                   production
               o Deleted – no longer required

When to baseline
     1. After each Release Planning session
     2. After each Sprint Planning session


Return to Top




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 17    of
27
Product Roadmap
         ―If you don't know where you are going, that's where you'll end up.‖ -Yogi Berra




If you don't know where you are going, it's impossible to determine the best way to get
there.

A Product Roadmap is essential for product planning and development.

Product roadmaps outline when products are scheduled for release and include an
overview of their primary and secondary features.


Just like a journey is planned upfront and shared with the fellow travelers, a product
roadmap is created and communicated to the development team.

The goals for doing so are for the product owner to:

           Communicate the whole
           Determine and communicate when releases are needed
           Determine what functionality is sufficient for each release
           Focus on business value derived from the releases


The delivery team on the other hand will:

          See the whole


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 18    of
27
   Learn about the steps to realize the vision
        Learn the business priorities
        Provide technical input to the roadmap
        Provide estimates for the projected features

Return to Top

Release Plan
     “If you don't know where you are going, that's where you'll end up.” - Yogi Berra

Release Planning is an integral part of Agile and Lean Product Development.




A product roadmap is essential for product planning and development.

Product roadmaps outline when products are scheduled for release and include an
overview of their primary and secondary features.

The Release Plan is comprised of:
  1. The release theme
  2. The release content
  3. Business value statement for the release
  4. The release timeline




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 19    of
27
Return to Top


This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 20    of
27
Sprint Backlog




The Sprint Backlog consists of the story and associated tasks the Team performs to
turn Product Backlog items into a ―done‖ increment of the product. It represents all of
the work that the Team identifies as necessary to meet the Sprint goal and to deliver the
stories that they commit to getting done in the Sprint.

Return to Top




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 21    of
27
Story




                      Figure 1.0 – A story and related acceptance criteria

Stories are vital to the Product Backlog, Release Planning and Sprint Planning and
delivering something of commercial or operational value iteratively and incrementally.

The more experience you have with writing stories, and estimating story size using a
relative unit of measure, the easier it will become for you to recognize when a story is
at the right level of detail.
When you are sizing your stories, at the Product Backlog level, a story should contain
just enough detail for the team to be able to estimate its relative size to other stories.

When estimating your stories, at the Sprint Backlog level, a story should contain enough
detail for the team to be able to determine what the solution involves or what it will take
them to deliver the story.

A good story is negotiable. It is not an explicit contract for features or functionality;
rather stories are short descriptions of functionality, the details of which are to be refined
in a conversation between the Product Owner (aka, the business or customer) and the
development team. The challenge comes in learning to include just enough detail.

At the time the story is written some important details may become known, they should
be included as acceptance criteria for the story, as shown in Figure 1.0.

Return to Top

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 22    of
27
Test Script
Test Scripts are the steps or instructions that a tester uses to walk through a test. Test
scripts serve as a set of instructions, derived from test cases and acceptance criteria, to
be followed by the tester. The execution of the test script is performed on the system-
software to verify and validate the system-software functions as expected. Test scripts
can be automated or manual.

Return to Top


Vision




What
        Summary of the major benefits and features the product will provide
        Gives context to the reader
        Defines the business context for the product. In which domain is it going to function (for
         example, telecom or bank) and what market—who are the users? State whether the
         product is being developed to fulfill a contract or if it is a commercial product.




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 23    of
27
Who (Stakeholders)
        There are a number of stakeholders with an interest in the development and not all of
         them are end users. Think of this as outside-in-design.

                     Customer/Consumer
                     Other vested interests

        Provides the background and justification for why the requirements are needed

Why
   Need and opportunity




When
Begins the process of project scheduling by illuminating the stakeholders‘ time
expectations regarding the product. Also helps you dig into their expectations by
defining the circumstances in which the new product would be used.


Constraints & Assumptions

Express the constraints under which the project is undertaken. These constraints impact risk and
cost. They could be things like external interfaces that the product must adhere to, standards,
certifications or a technical approach employed for strategic reasons, such as using a certain
database technology or distribution mechanisms.

Return to Top



This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 24    of
27
Ceremonies
Daily Scrum
Each Team meets daily for a 15-minute meeting called the Daily Scrum. The Daily
Scrum is at the same time and same place throughout the Sprints.

During the meeting, each Team member answers the following 3 questions:
      1. What he or she has accomplished since the last daily scrum?
      2. What he or she is going to do before the next daily scrum?
      3. What obstacles are in his or her way?

Daily Scrums improve communications, eliminate other meetings, identify and remove
impediments to development, highlight and promote quick decision-making, and
improve everyone‘s level of project knowledge.

The Scrum Master ensures that the Team has the meeting. The Team is responsible for
conducting the Daily Scrum. The Scrum Master teaches the Team to keep the Daily
Scrum short by enforcing the rules and making sure that people speak briefly.

The Daily Scrum is not a status meeting. It is not for anyone but the people transforming
the Product Backlog items into an increment of the product that the Team has
committed to getting done during the Sprint. The Daily Scrum serves as a feedback loop
to get better at what the team is doing.

Return to Top


Release Planning
Release planning answers the questions:
   1. How can we turn the vision into a winning product in the best possible way?
   2. How can we meet or exceed the desired customer satisfaction and Return on
      Investment?

The release plan establishes the goal of the release, the highest priority Product
Backlog items, the major risks, and the overall features and functionality that the release
will contain. It also establishes a probable delivery date and cost that should hold if
nothing changes. The organization can then inspect progress and make changes to this
release plan on a Sprint-by-Sprint basis.

Products are built iteratively and incrementally using Scrum, wherein each Sprint
creates an increment of the product, starting with the most valuable and riskiest. More
and more Sprints create additional increments of the product. Each increment is a

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 25    of
27
potentially shippable slice of the entire product. When enough increments have been
created for the Product to be of value, the product is released.

Return to Top

Sprint Planning
Sprint Planning is when the sprint/iteration is planned. It is time-boxed to eight hours for
a one month Sprint. For shorter Sprints, allocate approximately 5% of the total Sprint
length to this meeting and consists of two parts.

The first part is when what will be done in the Sprint is decided upon. The second part is
when the Team figures out how it is going to build this functionality into a product
increment during the Sprint. There are two parts to the Sprint Planning Meeting: the
―What?‖ part and the ―How?‖ part.

Some Scrum Teams combine the two. In the first part, the Scrum Team addresses the
question of ―What?‖ Here, the Product Owner presents the top priority Product Backlog
to the Team. They work together to figure out what functionality is to be developed
during the next Sprint. The input to this meeting is the Product Backlog, the latest
increment of product, the capacity of the Team, and past performance of the Team. The
amount of backlog the Team selects is solely up to the Team. Only the Team can
assess what it can accomplish over the upcoming Sprint and make a commitment to
getting it done.

Return to Top


Sprint Retrospective
After the Sprint Review and prior to the next Sprint Planning meeting, the Scrum Team
has a Sprint Retrospective meeting. At this 2 hour time-boxed meeting the Scrum
Master encourages the Scrum Team to revise, within the Scrum framework and
practices, their development process to make it more effective and enjoyable for the
next Sprint.

The purpose of the Retrospective is to inspect how the last Sprint went in regards to
people, relationships, process and tools. The inspection should identify and prioritize the
major items that went well and those items that-if done differently-could make things
even better. These include Scrum Team composition, meeting arrangements, tools,
definition of ―done,‖ methods of communication, and processes for turning Product
Backlog items into something ―done‖ which is commercial or operational valuable.

By the end of the Sprint Retrospective, the Scrum Team should have identified
actionable improvement measures that it implements in the next Sprint.

This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 26    of
27
Return to Top

Sprint Review
At the end of the Sprint, a Sprint Review meeting is held. This is a four hour time-boxed
meeting for one month Sprints. For Sprints of lesser duration, this meeting must not
consume more than 5% of the total Sprint.

During the Sprint Review, the Scrum Team and stakeholders collaborate about what
was just done. Based on that and changes to the Product Backlog during the Sprint,
they collaborate about what are the next things that could be done. This is an informal
meeting, with the presentation of the functionality intended to foster collaboration about
what to do next.

The meeting includes at least the following elements.
   • The Team demonstrates the stories is has completed and answers questions
   • The Product Owner then discusses the Product Backlog as it stands
   • The entire group then collaborates about what it has seen and what this means
     regarding what to do next
   • The Sprint Review provides valuable input to subsequent Sprint Planning
     meeting

Return to Top




This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough
detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team.
  Copyright © 2008 Russell Pannone. All rights reserved.                                               Page 27    of
27

Weitere ähnliche Inhalte

Was ist angesagt?

Lean Software Development Alan Shalloway
Lean Software Development   Alan ShallowayLean Software Development   Alan Shalloway
Lean Software Development Alan ShallowayValtech UK
 
Research on Impediments to Product Development Flow
Research on Impediments to Product Development FlowResearch on Impediments to Product Development Flow
Research on Impediments to Product Development FlowKen Power
 
Agile Scrum.A Chicken and Pig approach.
Agile Scrum.A Chicken and Pig approach.Agile Scrum.A Chicken and Pig approach.
Agile Scrum.A Chicken and Pig approach.satyendrajaladi
 
10 tips for the agile transition. By Francesco Sferlazza
10 tips for the agile transition. By Francesco Sferlazza10 tips for the agile transition. By Francesco Sferlazza
10 tips for the agile transition. By Francesco Sferlazzasferlazza
 
Lean Principles
Lean PrinciplesLean Principles
Lean Principlesaboobier
 
Scrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamScrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamMike Cohn
 
Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Mike Cohn
 
Transitioning to Agile
Transitioning to AgileTransitioning to Agile
Transitioning to AgileMike Cohn
 
ChrisGarrisonProjectThesis
ChrisGarrisonProjectThesisChrisGarrisonProjectThesis
ChrisGarrisonProjectThesisChris Garrison
 
Flow for agile testing - lssc11 proceedings
Flow for agile testing - lssc11 proceedingsFlow for agile testing - lssc11 proceedings
Flow for agile testing - lssc11 proceedingsYuval Yeret
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development PrimerDerek Winter
 
Microsoft solutions framework msf viramdas
Microsoft solutions framework msf viramdasMicrosoft solutions framework msf viramdas
Microsoft solutions framework msf viramdasVishwanath Ramdas
 
Beyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your OrganizationBeyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your Organization ThoughtWorks Studios
 
Balancing the tension between Lean and Agile
Balancing the tension between Lean and AgileBalancing the tension between Lean and Agile
Balancing the tension between Lean and AgileJames Coplien
 

Was ist angesagt? (20)

Lean Software Development Alan Shalloway
Lean Software Development   Alan ShallowayLean Software Development   Alan Shalloway
Lean Software Development Alan Shalloway
 
Implementation Scrum in Organization Level
Implementation Scrum in Organization LevelImplementation Scrum in Organization Level
Implementation Scrum in Organization Level
 
Research on Impediments to Product Development Flow
Research on Impediments to Product Development FlowResearch on Impediments to Product Development Flow
Research on Impediments to Product Development Flow
 
Gate Gourmet Case Study
Gate Gourmet Case StudyGate Gourmet Case Study
Gate Gourmet Case Study
 
Fleming Consulting Brochure
Fleming Consulting BrochureFleming Consulting Brochure
Fleming Consulting Brochure
 
Agile Scrum.A Chicken and Pig approach.
Agile Scrum.A Chicken and Pig approach.Agile Scrum.A Chicken and Pig approach.
Agile Scrum.A Chicken and Pig approach.
 
Depth of a Kanban Implementation
Depth of a Kanban ImplementationDepth of a Kanban Implementation
Depth of a Kanban Implementation
 
Scrum methodology
Scrum methodologyScrum methodology
Scrum methodology
 
10 tips for the agile transition. By Francesco Sferlazza
10 tips for the agile transition. By Francesco Sferlazza10 tips for the agile transition. By Francesco Sferlazza
10 tips for the agile transition. By Francesco Sferlazza
 
Lean Principles
Lean PrinciplesLean Principles
Lean Principles
 
Scrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing TeamScrum: Leading a Self-Organizing Team
Scrum: Leading a Self-Organizing Team
 
Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014Leading Self Organizing Teams - NDC 2014
Leading Self Organizing Teams - NDC 2014
 
Transitioning to Agile
Transitioning to AgileTransitioning to Agile
Transitioning to Agile
 
Measure for Measure
Measure for MeasureMeasure for Measure
Measure for Measure
 
ChrisGarrisonProjectThesis
ChrisGarrisonProjectThesisChrisGarrisonProjectThesis
ChrisGarrisonProjectThesis
 
Flow for agile testing - lssc11 proceedings
Flow for agile testing - lssc11 proceedingsFlow for agile testing - lssc11 proceedings
Flow for agile testing - lssc11 proceedings
 
An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development Primer
 
Microsoft solutions framework msf viramdas
Microsoft solutions framework msf viramdasMicrosoft solutions framework msf viramdas
Microsoft solutions framework msf viramdas
 
Beyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your OrganizationBeyond the Scrum: Implementing Lean Software Practices in Your Organization
Beyond the Scrum: Implementing Lean Software Practices in Your Organization
 
Balancing the tension between Lean and Agile
Balancing the tension between Lean and AgileBalancing the tension between Lean and Agile
Balancing the tension between Lean and Agile
 

Ähnlich wie Normalizing agile and lean product development and aim

Agile Software Development - Session 1
Agile Software Development - Session 1Agile Software Development - Session 1
Agile Software Development - Session 1Dalia Ayman Ahmed
 
The Agile Method and AGILE ISD; how to use each to improve your training program
The Agile Method and AGILE ISD; how to use each to improve your training programThe Agile Method and AGILE ISD; how to use each to improve your training program
The Agile Method and AGILE ISD; how to use each to improve your training programChristopher King
 
rumgileebookasc
rumgileebookascrumgileebookasc
rumgileebookascAnne Starr
 
agilebookscrum
agilebookscrumagilebookscrum
agilebookscrumAnne Starr
 
5 Levels of Agile Planning Explained Simply
5 Levels of Agile Planning Explained Simply5 Levels of Agile Planning Explained Simply
5 Levels of Agile Planning Explained SimplyRussell Pannone
 
Agile and lean product development the fundamentals
Agile and lean product development the fundamentalsAgile and lean product development the fundamentals
Agile and lean product development the fundamentalsRussell Pannone
 
Dsg best practice guide for net suite implementation success
Dsg best practice guide for net suite implementation successDsg best practice guide for net suite implementation success
Dsg best practice guide for net suite implementation successBootstrap Marketing
 
How to outsource Scrum projects guide
How to outsource Scrum projects   guideHow to outsource Scrum projects   guide
How to outsource Scrum projects guideLeszek Leo Baz
 
How to outsource Scrum projects - a guide
How to outsource Scrum projects - a guideHow to outsource Scrum projects - a guide
How to outsource Scrum projects - a guideXSolve
 
White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide IBM Rational software
 
Susan Clarke - The practicalities of adopting scaled agile methodologies
Susan Clarke - The practicalities of adopting scaled agile methodologiesSusan Clarke - The practicalities of adopting scaled agile methodologies
Susan Clarke - The practicalities of adopting scaled agile methodologiesAssociation for Project Management
 
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile InstituteInnovation Roots
 

Ähnlich wie Normalizing agile and lean product development and aim (20)

Agile Software Development - Session 1
Agile Software Development - Session 1Agile Software Development - Session 1
Agile Software Development - Session 1
 
The Agile Method and AGILE ISD; how to use each to improve your training program
The Agile Method and AGILE ISD; how to use each to improve your training programThe Agile Method and AGILE ISD; how to use each to improve your training program
The Agile Method and AGILE ISD; how to use each to improve your training program
 
rumgileebookasc
rumgileebookascrumgileebookasc
rumgileebookasc
 
agilebookscrum
agilebookscrumagilebookscrum
agilebookscrum
 
Scaling Agile - LeSS Framework
Scaling Agile - LeSS FrameworkScaling Agile - LeSS Framework
Scaling Agile - LeSS Framework
 
5 Levels of Agile Planning Explained Simply
5 Levels of Agile Planning Explained Simply5 Levels of Agile Planning Explained Simply
5 Levels of Agile Planning Explained Simply
 
Agile Methodologies & Key Principles 2
Agile Methodologies & Key Principles 2Agile Methodologies & Key Principles 2
Agile Methodologies & Key Principles 2
 
Agile and lean product development the fundamentals
Agile and lean product development the fundamentalsAgile and lean product development the fundamentals
Agile and lean product development the fundamentals
 
Introduction to agile
Introduction to agileIntroduction to agile
Introduction to agile
 
Dsg best practice guide for net suite implementation success
Dsg best practice guide for net suite implementation successDsg best practice guide for net suite implementation success
Dsg best practice guide for net suite implementation success
 
Agile Practice Guide Notes
Agile Practice Guide NotesAgile Practice Guide Notes
Agile Practice Guide Notes
 
Agility At Scale
Agility At ScaleAgility At Scale
Agility At Scale
 
How to outsource Scrum projects guide
How to outsource Scrum projects   guideHow to outsource Scrum projects   guide
How to outsource Scrum projects guide
 
How to outsource Scrum projects - a guide
How to outsource Scrum projects - a guideHow to outsource Scrum projects - a guide
How to outsource Scrum projects - a guide
 
Scaling agile exec guide
Scaling agile exec guideScaling agile exec guide
Scaling agile exec guide
 
White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide White paper - Scaling agile: An executive guide
White paper - Scaling agile: An executive guide
 
Susan Clarke - The practicalities of adopting scaled agile methodologies
Susan Clarke - The practicalities of adopting scaled agile methodologiesSusan Clarke - The practicalities of adopting scaled agile methodologies
Susan Clarke - The practicalities of adopting scaled agile methodologies
 
Agile thinking
Agile thinkingAgile thinking
Agile thinking
 
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute
"Scrum master or Agile Master" - by Saikat Das @ Scaling Agile Institute
 
Scrum master & agile master
Scrum master & agile masterScrum master & agile master
Scrum master & agile master
 

Mehr von Russell Pannone

Agile Lean Kanban in the Real World - A Case Study
Agile Lean Kanban in the Real World - A Case StudyAgile Lean Kanban in the Real World - A Case Study
Agile Lean Kanban in the Real World - A Case StudyRussell Pannone
 
AcceptCriteria_TestCases_TestScripts
AcceptCriteria_TestCases_TestScriptsAcceptCriteria_TestCases_TestScripts
AcceptCriteria_TestCases_TestScriptsRussell Pannone
 
Agile Lean Kanban in the real world
Agile Lean Kanban in the real worldAgile Lean Kanban in the real world
Agile Lean Kanban in the real worldRussell Pannone
 
Lean Agile and Respect for People
Lean Agile and Respect for PeopleLean Agile and Respect for People
Lean Agile and Respect for PeopleRussell Pannone
 
The Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumThe Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumRussell Pannone
 
Forecasting total cost and duration of Product Backlog
Forecasting total cost and duration of Product BacklogForecasting total cost and duration of Product Backlog
Forecasting total cost and duration of Product BacklogRussell Pannone
 
Agile & Lean & Kanban in the Real World - A Case Study
Agile & Lean & Kanban in the Real World - A Case StudyAgile & Lean & Kanban in the Real World - A Case Study
Agile & Lean & Kanban in the Real World - A Case StudyRussell Pannone
 
Agile product development for the business
Agile product development for the businessAgile product development for the business
Agile product development for the businessRussell Pannone
 
Agile needs resurgence of visual modeling
Agile needs resurgence of visual modelingAgile needs resurgence of visual modeling
Agile needs resurgence of visual modelingRussell Pannone
 
Agile-Lean requirements position statement
Agile-Lean requirements position statementAgile-Lean requirements position statement
Agile-Lean requirements position statementRussell Pannone
 
Agile and Lean Business Proposition
Agile and Lean Business PropositionAgile and Lean Business Proposition
Agile and Lean Business PropositionRussell Pannone
 
Product backlog stories_acceptancecriteria_size_priority
Product backlog  stories_acceptancecriteria_size_priorityProduct backlog  stories_acceptancecriteria_size_priority
Product backlog stories_acceptancecriteria_size_priorityRussell Pannone
 
How To Know Your Stories Are At The Right Level Of Detail
How To Know Your Stories Are At The Right Level Of DetailHow To Know Your Stories Are At The Right Level Of Detail
How To Know Your Stories Are At The Right Level Of DetailRussell Pannone
 
Agile Lean Scrum ITIL V2
Agile Lean Scrum ITIL V2Agile Lean Scrum ITIL V2
Agile Lean Scrum ITIL V2Russell Pannone
 
Agile Business Driven Development
Agile Business Driven DevelopmentAgile Business Driven Development
Agile Business Driven DevelopmentRussell Pannone
 
Project Management And Being Agile
Project Management And Being AgileProject Management And Being Agile
Project Management And Being AgileRussell Pannone
 
Creating A Product Backlog
Creating A Product BacklogCreating A Product Backlog
Creating A Product BacklogRussell Pannone
 
Conducting An Agile Retrospective
Conducting An Agile RetrospectiveConducting An Agile Retrospective
Conducting An Agile RetrospectiveRussell Pannone
 

Mehr von Russell Pannone (20)

Agile Lean Kanban in the Real World - A Case Study
Agile Lean Kanban in the Real World - A Case StudyAgile Lean Kanban in the Real World - A Case Study
Agile Lean Kanban in the Real World - A Case Study
 
AcceptCriteria_TestCases_TestScripts
AcceptCriteria_TestCases_TestScriptsAcceptCriteria_TestCases_TestScripts
AcceptCriteria_TestCases_TestScripts
 
Agile Lean Kanban in the real world
Agile Lean Kanban in the real worldAgile Lean Kanban in the real world
Agile Lean Kanban in the real world
 
Lean Agile and Respect for People
Lean Agile and Respect for PeopleLean Agile and Respect for People
Lean Agile and Respect for People
 
The Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and ScrumThe Role of Quality Assurance in the World of Agile Development and Scrum
The Role of Quality Assurance in the World of Agile Development and Scrum
 
Forecasting total cost and duration of Product Backlog
Forecasting total cost and duration of Product BacklogForecasting total cost and duration of Product Backlog
Forecasting total cost and duration of Product Backlog
 
Agile & Lean & Kanban in the Real World - A Case Study
Agile & Lean & Kanban in the Real World - A Case StudyAgile & Lean & Kanban in the Real World - A Case Study
Agile & Lean & Kanban in the Real World - A Case Study
 
Agile product development for the business
Agile product development for the businessAgile product development for the business
Agile product development for the business
 
Risk guideline
Risk guidelineRisk guideline
Risk guideline
 
What is an agile coach
What is an agile coachWhat is an agile coach
What is an agile coach
 
Agile needs resurgence of visual modeling
Agile needs resurgence of visual modelingAgile needs resurgence of visual modeling
Agile needs resurgence of visual modeling
 
Agile-Lean requirements position statement
Agile-Lean requirements position statementAgile-Lean requirements position statement
Agile-Lean requirements position statement
 
Agile and Lean Business Proposition
Agile and Lean Business PropositionAgile and Lean Business Proposition
Agile and Lean Business Proposition
 
Product backlog stories_acceptancecriteria_size_priority
Product backlog  stories_acceptancecriteria_size_priorityProduct backlog  stories_acceptancecriteria_size_priority
Product backlog stories_acceptancecriteria_size_priority
 
How To Know Your Stories Are At The Right Level Of Detail
How To Know Your Stories Are At The Right Level Of DetailHow To Know Your Stories Are At The Right Level Of Detail
How To Know Your Stories Are At The Right Level Of Detail
 
Agile Lean Scrum ITIL V2
Agile Lean Scrum ITIL V2Agile Lean Scrum ITIL V2
Agile Lean Scrum ITIL V2
 
Agile Business Driven Development
Agile Business Driven DevelopmentAgile Business Driven Development
Agile Business Driven Development
 
Project Management And Being Agile
Project Management And Being AgileProject Management And Being Agile
Project Management And Being Agile
 
Creating A Product Backlog
Creating A Product BacklogCreating A Product Backlog
Creating A Product Backlog
 
Conducting An Agile Retrospective
Conducting An Agile RetrospectiveConducting An Agile Retrospective
Conducting An Agile Retrospective
 

Kürzlich hochgeladen

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 

Kürzlich hochgeladen (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 

Normalizing agile and lean product development and aim

  • 1. Normalizing Agile and Lean Product Development & AIM Agile and lean product development is an empirical and adaptive approach that allows the organization, the team and the individual to follow a general set of values, principles and practices – a philosophy rather than a step-by-step process This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 1 of 27
  • 2. Intent of this document By design this set of norms is neither intended to be prescriptive nor complete in detail. It contains just enough detail to promote and facilitate a collaborative, self-directing and self-organizing agile and lean product development team. What should come to mind is less is more. Today‘s system-software development methodologies have in common with nature the life span of infancy, childhood, adolescence, adulthood, and aging. Additionally, methodologies, sometimes as part of their life span, enter into a relationship or marriage with other methodologies; like has happened with Agile Software Development and Lean Manufacturing. Likewise, methodologies of the past and present have an associated taxonomy, new jargon and technical terminology or idiomatic expressions of the practitioner. They also tend to reuse old jargon but with different connotations. For example:  System thinking  Kanban  Kaizen  Value-stream  Velocity  Scrum  Story  Story Board  Retrospective The what, why, and how of agile and lean product (system-software) development and delivery is not one persons vision alone; to become reality it needs to be a "shared" vision through negotiation and compromise between individuals, the team and the organization. The following is a set of norms for your agile and lean product (system-software) development teams to rally around and evolve. Look at it as musicians do sheet music. Recognizing, the more familiar the musicians are with the musical score and the more experience they have playing together, the less dependent the musicians are on the sheet music; except when introducing new musicians to the musical ensemble. This metaphor is applicable to an agile/lean product (system-software) development team and your set of norms. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 2 of 27
  • 3. We are climbing a slippery slope when setting norms. We need to be keenly aware your norms should not be rigid or prescriptive and should evolve through collaboration between self-organizing and self-directing cross-functional teams based on reality. Norm setting can only work if the team is truly able to arrive at consensus. Norms won‘t stick if members have reservations about them. However, once consensus is reached, the team is equipped with a guide that can serve to strengthen positive practices. A set of norms can serve as a common reference if contrary behaviors arise. Finally, written norms are handy for potential members and newcomers who want to quickly get a sense of the team‘s adoption of being agile. Norms in hand, a team can move forward inspired and motivated to uphold the team‘s approach and confident in the security such guidelines provide. When you get to the Agile Implementer Matrix (AIM) some of you agile purist may cringe. AIM is primarily targeted towards those enterprises that have corporate defined roles and responsibilities; it will help reduce people‘s frustration during their agile adoption. Once the enterprise evolves from a command-and-control and specialists become generalists AIM may not be as useful. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 3 of 27
  • 4. Values While there is value in the items on the right, we value the items on the left 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 This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 4 of 27
  • 5. Principles . • Remove what isn‘t of value to the customer or Eliminate Waste business partner • Improve software development by improving the Amplify Learning adoption through learning Decide As Late As Possible • Delay decisions until assumptions become fact Deliver As Fast As Possible • Quicker delivery of results with quicker feedback • Allow the front-line workers (i.e. development) to Empower The Team make the major decisions about how to dvelop and deliver the solution • Build for perceived (customer view) and Build Integrity In conceptual (system view) integrity, flexibility and efficiency • View the software as a whole and not as a sum of See The Whole its parts (System Thinking) 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Being agile and lean harnesses change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Being agile and lean promotes sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 5 of 27
  • 6. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential. 11. The best architectures, requirements, and designs emerge from self- organizing teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Scrum Framework ―There will be no Scrum Release 2.0… Why not? Because the point of Scrum is not to solve [specific problems of development]… Scrum unearths the problems caused by the complexity and lets the organization solve them, one by one, over and over again.‖ 1 ―Scrum is a simple framework that exposes problems. It is a mirror. We are not suggesting that new ideas cannot arise and improve the framework. But attempts to ‗improve‘ it are most often (1) avoidance of dealing with the weaknesses exposed when regular Scrum is really applied, (2) conformance to status quo policies or entrenched groups, (3) belief in a new silver bullet practice or tool, (4) fuzzy understanding of Scrum and empirical process control, or (5) an attempt by the traditional consulting companies to sell you a process—―Accenture Scrum/Agile,‖ ―IBM Scrum/Agile,‖ and so on.‖2 1 Schwaber, K., 2007. “Scrum Release 2.0?” Scrum Alliance Articles, at http://www.scrumalliance.org/articles/12-scrum-release 2 Larmen, C. & Vodde, B., 2010. Practices for Scaling Lean & Agile Development, Addison Wesley This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 6 of 27
  • 7. Practices A practice is a common approach for doing something with a specific purpose in mind. There are no best practices—only adequate practices in context. Since so-called best practices are ‗best,‘ they also inhibit a ―challenge everything‖ culture and continuous improvement—a pillar of lean thinking. Why would people challenge ‗best‘? Mary Poppendieck, coauthor of Lean Software Development, reiterates this point and draws the historical connection from best practices to Taylorism: Frederick Winslow Taylor wrote ―The Principles of Scientific Management‖ in 1911. In it, he proposed that manufacturing should be broken down into very small steps, and then industrial engineers should determine the ‗one best way‘ to do each step. This ushered in the era of mass production, with ‗experts‘ telling workers the ‗one best way‘ to do their jobs. The Toyota Production System is founded on the principles of the Scientific Method, instead of Scientific Management. The idea is that no matter how good a process is, it can always be improved, and that the workers doing the job are the best people to figure out how to do it better… Moreover, even where a practice does apply, it can and should always be improved upon. There are certainly underlying principles that do not change. These principles will develop into different practices in different domains...‖3 3 Poppendieck, M., 2004. “An Introduction to Lean Software Development,” at www.poppendieck.com/pdfs/Interview.pdf This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 7 of 27
  • 8. Agile Implementer Matrix (AIM) The Agile Implementer Matrix (AIM) may make some of you agile purist cringe. AIM is primarily targeted towards those enterprises that have corporate defined roles and responsibilities; it will help reduce people‘s frustration during their agile adoption. Once the enterprise evolves from a command-and-control and specialists become generalists AIM may not be as useful. AIM (Agile Implementer Matrix) R = Responsible Defines and commits to getting "done", done Individual who is ultimately accountable for the correct and A = Accountable thorough completion of the artifact or ceremony, and the one to whom Responsible is accountable Individuals whose opinions are sought; and with whom C = Consulted there is two-way communication Individuals who receive summary of what was "done" but I = Informed need not be consulted and with whom there is just one-way communication One person may fill Business Analyst Project Manager Product Owner Scrum Master multiple roles Agile Coach QA Analyst Developer Tester Depicted are a minimum set of roles, artifacts and ceremonies Artifacts Burndown Charts C C C I I C R/A C Product Backlog C C C R/A I I I I Product Roadmap I C I R/A I I I I Release Plan I C C A C C R C Sprint Backlog C C C I I C R/A C Story C R R A/C I C C C Test Script C C C I I C I R/A Vision I C I R/A I I I I Ceremonies Daily Scrum C R R I I R A R Release Planning I C C A C C R C Sprint Planning C R R I I R A R Sprint Retrospective C R R I I R A R Sprint Review C R R C I R A R This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 8 of 27
  • 9. Roles Have you recently joined an Agile team, or have been part of one for some time, and aren't fully clear on the roles and responsibilities - especially yours? The collaborative nature of Agile presents a interesting paradigm shift where roles and responsibilities somewhat blur and teams ideally self-organize. Therefore, as you, your team and your organization evolve and adapt to being agile and lean and using the Scrum framework it is about each existing role complementing each other's responsibilities working towards the delivering of an increment of the product while the individual, team and organization work through the redefinition of organizational roles and responsibilities in your new world of being agile and applying the Scrum framework. Team members should reflect and refine their roles to meet the goal and needs of the team. Agile Coach Agile coaches attempt to influence teams in different ways. Based on empirical knowledge agile coaches typically work by instinct and intuition. This makes it very hard to explain what coaches do and a challenge to teach people how to coach agile teams. First and foremost an agile coach must be a ―servant leader‖. Robert Greenleaf, who after a career working with many talented leaders at AT&T from the mid-1920s to the mid-1960s, identified the desire to serve as the core motivation for great leaders, and the growth of people as the chief indicator of such leaders, whom he called ―servant leaders‖. ―The best test (of the servant leader) is, do those served grow as persons? Do they become healthier, wiser, freer, more autonomous (self-directed and self- organizing), more likely themselves to become servant leaders.‖ Next an agile coach must be both a system-thinker [see the big picture] and a tactical- thinker. System thinking is the process of predicting, on the basis of anything at all, how something influences another thing. It has been defined as an approach to problem solving, by viewing "problems" as parts of an overall system, rather than reacting to present outcomes or events and potentially contributing to further development of the undesired issue or problem. System thinking, planning, and actions reflect one‘s ability to take into account the big picture, to recognize patterns and trends, mental models, foresee issues, predict outcomes, and have smart "Plan B's" to fall back on. System thinking deals with mission and purpose - why your business exists, how it makes a difference, and where it will be in the future. Tactical thinking refers to the hands-on part of getting the job done; making sure the system-thinking vision is met. Getting the job done, with respect to ―being‖ agile, This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 9 of 27
  • 10. consists of iterative and incremental product development and delivery, with progress measured by the commercial or operational value added incrementally. When a team is working towards ―being‖ agile, the agile coach introduces a set of practices around which the team self-organizes & self-directs. The team in turn selects one or more practice to apply to an iteration/sprint. The agile coach must have hands-on experience applying the practices. Return to Top Business Analyst The Business Analyst becomes a valuable contributor to the Product Owner. The Business Analyst is a role that seems neglected by Scrum. To ensure close collaboration between the team and the Product Owner, Scrum ensures that the necessary elements are effectively communicated directly to the team without complex documentation. However, to ensure continuity of information, we know that functional documentation that is adequate and representative of the system-software to be developed is essential. In a multi-team context, the Business Analyst may be called upon to play the role of Product Owner. He/she then becomes responsible for core components of the product within the various sub-teams. Return to Top Developer A Developer, iteratively and incrementally, turns Product Backlog items (stories) into potentially shippable functionality every Sprint. Developers may be cross-functional Developers often have specialized skills, such as programming, architecture, user interface design, database design, etc. Return to Top Product Owner The Product Owner represents the single, unified view of the product and is ultimately accountable for its delivery and the evaluation if it meets its targeted ROI. The Product This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 10 of 27
  • 11. Owner works with various stakeholders to define what is important to have in the product and the prioritization of these features. Return to Top Project Manager Traditionally, the project manager is responsible for determining who, what, and when activities need to be performed and then to ensure the team complies with the plan that was prepared to meet the budget, time and scope constraints. With the traditional approach, project management is based on compliance with the plan while Agile/Lean and Scrum propose a different approach where maximizing the business value is the main vector of project management. Under this new approach, the project manager needs to collaborate with the team and delegate to them some of his/her traditional responsibilities since the team will determine who does what, how, and when within the constraints of the project; as part of sprint planning.. In this context, the role of the Scrum Master is to enforce the framework and seeks to build an efficient self-organized team. To the question ―Do we still need a project manager in Agile?‖, experience shows us that in most organizations, the answer is yes. The need for accountability, regulatory compliance and alignment with the framework and IT governance are not covered by the role of the Scrum Master and as such remain the responsibility of the project manager. However, the project manager needs to adapt their management style and use leadership rather than authority with the team to get things done. In the context of a multi-team organizational structure, the presence of a project manager is also valuable, where he/she is coordinating the teams and the synchrony between them and between entities external to the project teams. Based on empirical knowledge, some project managers are more willing to become Product Owners while others will feel challenged by the role of Scrum Master. Return to Top QA Analyst Rather than building the product (system-software) in a linear fashion and resolving bugs at the end of the system-software development lifecycle, agile and lean product development teams address defects as soon as they‘re discovered. Such conscientious This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 11 of 27
  • 12. coding might add work in the short-term, but it ensures that the team is always working with clean, functional code and vigilantly eliminating bugs, which significantly cuts development time, eliminates waste and delivers value frequently. Quality is a fundamental concern in agile and lean product development as we iteratively and incrementally develop value adding, quality system-software. Part of the reason for success being agile and lean and applying the Scrum framework is not to offend or alienate folks in exiting organizational roles such as Quality Analyst, Project Managers, Business Analysts, Testers, etc.; roles not specifically defined in Scrum. When a quality analyst position exists in your organization this role should be an active member of the Scrum team and right from the start of the project. A QA analyst assigned to a Scrum team has the following responsibilities: Participates in planning sessions to raise issues relating to quality Helps clarify the definition of ―Done‖‗ Prepares plans for acceptance testing Verifies and validates the increments of product delivered Continuous adaptive and empirical process improvement Minimum skills General knowledge of all aspects of agile and lean product development Experience in a wide variety of testing efforts, techniques and tools People skills, especially diplomacy and advocacy skills Planning and management skills Knowledge of the domain, system or application-under-test Experience programming or managing programming teams Return to Top Scrum Master The Scrum Master is responsible for ensuring that the Scrum Team adheres to Scrum values, practices, and rules. The Scrum Master helps the Scrum Team and the organization adopt Scrum. The Scrum Master teaches the Scrum Team by coaching and by leading it to be more productive and produce higher quality products. The Scrum Master helps the Scrum Team understand and use self-management and cross-functionality. However, the Scrum Master does not manage the Scrum Team; the Scrum Team is self-organizing and self-directing. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 12 of 27
  • 13. Return to Top Tester A Tester is first a team member that executes test cases for story verification and validation. The tester may be done by any team member. For example, the developer can test their code with unit tests, component integration tests, or automated system tests. The idea here is that the tester role is a mindset that different team members can assume when needed. Now that being said if you have an individual whose sole purpose is to be the tester on the team then they should focus on testing methodologies and how the testing can be done. They are also responsible for ensuring that the testing is being done in the most agile/lean way. They should be suggesting testing approaches during planning and estimation meetings. An agile tester guides the entire product development team in a way that ensures that features of the product and the product as a whole behave as intended and without bugs. An important step is communicating how we know when a story/feature is done. We do this by fleshing out enough test cases and test scripts, from acceptance criteria; so that each story/feature can be verified and validated for functional completeness as it's developed. As testers, we are also responsible for ensuring that non-functional requirements (performance, scalability, security, usability, and etc.) are also met. A Tester has the following responsibilities Focus on testing methodologies and how the testing will can be done Ensure that the testing is being done in the most agile/lean way Participates in planning sessions suggesting testing Guides the entire product development team in a way that ensures that features of the product and the product as a whole behave as intended and without bugs Helps clarify the definition of ―Done‖ Derives test cases and test scripts, from acceptance criteria; so that each story/feature can be verified and validated for functional completeness as it's developed Ensuring that non-functional requirement (performance, scalability, security, usability, and etc.) are also met Gathering and managing the Test Data Logging outcomes and verifying that the tests have been run Analyzing and guiding the recovery from execution errors Communicating test results to the team Minimum skills Good analytical skills This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 13 of 27
  • 14. A challenging and inquiring mind Attention to detail and tenacity Understanding of common software failures and faults Knowledge of the domain Knowledge of the system or application-under-test Experience in a variety of testing efforts Training in the appropriate use of test automation tools Experience using test automation tools Programming skills Debugging and diagnostic skills Return to Top Artifacts Burndown Charts Sprint Burndown Chart The Sprint Burndown Chart is a graph of the amount of Sprint Backlog work remaining in a Sprint cross time in the Sprint. To create this graph, determine how much work This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 14 of 27
  • 15. remains by summing the backlog estimates every day of the Sprint. The amount of work remaining for a Sprint is the sum of the work remaining for all of Sprint Backlog. Keep track of these sums by day and use them to create a graph that shows the work remaining over time. By drawing a line through the points on the graph, the Team can manage its progress in completing a Sprint‘s work. Duration is not considered in Scrum. Work remaining and date are the only variables of interest. Product Burndown Chart The Product Backlog Burndown Chart records the sum of remaining Product Backlog estimated effort across time. The estimated effort is in whatever unit of work the Scrum Team and organization have decided upon. The units of time are usually Sprints. Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 15 of 27
  • 16. Product Backlog The requirements for the product that the Team(s) is developing are listed in the Product Backlog as stories. The Product Owner is accountable for the Product Backlog, its contents, its availability, and its prioritization. The Product Backlog is never complete. The initial cut at developing it only lays out the initially known and best-understood requirements. The Product Backlog evolves as the product and the environment in which it will be used evolves. The Product Backlog is dynamic in that it constantly changes to identify what the product needs to be appropriate, competitive, and useful. As long as a product exists, the Product Backlog also exists. The Product Backlog represents everything necessary to develop and launch a successful product. Product Backlog items have the attributes of a description, priority, and estimate. Priority is driven by risk, value, and necessity. There are many techniques for assessing these attributes. The Product Backlog is sorted in order of priority. Top priority Product Backlog items drive immediate development activities. The higher the priority, the more urgent it is, the more it has been thought about, and the more consensus there is regarding its value. Higher priority backlog items are clearer and have more detailed information than lower This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 16 of 27
  • 17. priority backlog items. Better estimates are made based on the greater clarity and increased detail; the lower the priority, the less the detail. Attributes  Product Backlog Owner Name  Program and Project Identifier  Baseline Signoff Date  Story  Text  Acceptance Criteria  Priority  Size  State o Open - the story not yet assigned to a Release or Sprint o Refining – not clear about the desired behavior and functionality the system-software must implement o Assigned to Release - the story has been assigned to a Release o Assigned to Sprint - the story has been assigned to a Sprint o Assigned to Team Member - the story has been assigned to a team member o In-Progress - the team member responsible for the story is actively working on developing and implementing the story o Done - the development and implementation of the story has been verified and validated based on the agreed upon definition of done o Released - part of system-software components now running in production o Deleted – no longer required When to baseline 1. After each Release Planning session 2. After each Sprint Planning session Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 17 of 27
  • 18. Product Roadmap ―If you don't know where you are going, that's where you'll end up.‖ -Yogi Berra If you don't know where you are going, it's impossible to determine the best way to get there. A Product Roadmap is essential for product planning and development. Product roadmaps outline when products are scheduled for release and include an overview of their primary and secondary features. Just like a journey is planned upfront and shared with the fellow travelers, a product roadmap is created and communicated to the development team. The goals for doing so are for the product owner to: Communicate the whole Determine and communicate when releases are needed Determine what functionality is sufficient for each release Focus on business value derived from the releases The delivery team on the other hand will:  See the whole This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 18 of 27
  • 19. Learn about the steps to realize the vision  Learn the business priorities  Provide technical input to the roadmap  Provide estimates for the projected features Return to Top Release Plan “If you don't know where you are going, that's where you'll end up.” - Yogi Berra Release Planning is an integral part of Agile and Lean Product Development. A product roadmap is essential for product planning and development. Product roadmaps outline when products are scheduled for release and include an overview of their primary and secondary features. The Release Plan is comprised of: 1. The release theme 2. The release content 3. Business value statement for the release 4. The release timeline This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 19 of 27
  • 20. Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 20 of 27
  • 21. Sprint Backlog The Sprint Backlog consists of the story and associated tasks the Team performs to turn Product Backlog items into a ―done‖ increment of the product. It represents all of the work that the Team identifies as necessary to meet the Sprint goal and to deliver the stories that they commit to getting done in the Sprint. Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 21 of 27
  • 22. Story Figure 1.0 – A story and related acceptance criteria Stories are vital to the Product Backlog, Release Planning and Sprint Planning and delivering something of commercial or operational value iteratively and incrementally. The more experience you have with writing stories, and estimating story size using a relative unit of measure, the easier it will become for you to recognize when a story is at the right level of detail. When you are sizing your stories, at the Product Backlog level, a story should contain just enough detail for the team to be able to estimate its relative size to other stories. When estimating your stories, at the Sprint Backlog level, a story should contain enough detail for the team to be able to determine what the solution involves or what it will take them to deliver the story. A good story is negotiable. It is not an explicit contract for features or functionality; rather stories are short descriptions of functionality, the details of which are to be refined in a conversation between the Product Owner (aka, the business or customer) and the development team. The challenge comes in learning to include just enough detail. At the time the story is written some important details may become known, they should be included as acceptance criteria for the story, as shown in Figure 1.0. Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 22 of 27
  • 23. Test Script Test Scripts are the steps or instructions that a tester uses to walk through a test. Test scripts serve as a set of instructions, derived from test cases and acceptance criteria, to be followed by the tester. The execution of the test script is performed on the system- software to verify and validate the system-software functions as expected. Test scripts can be automated or manual. Return to Top Vision What  Summary of the major benefits and features the product will provide  Gives context to the reader  Defines the business context for the product. In which domain is it going to function (for example, telecom or bank) and what market—who are the users? State whether the product is being developed to fulfill a contract or if it is a commercial product. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 23 of 27
  • 24. Who (Stakeholders)  There are a number of stakeholders with an interest in the development and not all of them are end users. Think of this as outside-in-design.  Customer/Consumer  Other vested interests  Provides the background and justification for why the requirements are needed Why  Need and opportunity When Begins the process of project scheduling by illuminating the stakeholders‘ time expectations regarding the product. Also helps you dig into their expectations by defining the circumstances in which the new product would be used. Constraints & Assumptions Express the constraints under which the project is undertaken. These constraints impact risk and cost. They could be things like external interfaces that the product must adhere to, standards, certifications or a technical approach employed for strategic reasons, such as using a certain database technology or distribution mechanisms. Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 24 of 27
  • 25. Ceremonies Daily Scrum Each Team meets daily for a 15-minute meeting called the Daily Scrum. The Daily Scrum is at the same time and same place throughout the Sprints. During the meeting, each Team member answers the following 3 questions: 1. What he or she has accomplished since the last daily scrum? 2. What he or she is going to do before the next daily scrum? 3. What obstacles are in his or her way? Daily Scrums improve communications, eliminate other meetings, identify and remove impediments to development, highlight and promote quick decision-making, and improve everyone‘s level of project knowledge. The Scrum Master ensures that the Team has the meeting. The Team is responsible for conducting the Daily Scrum. The Scrum Master teaches the Team to keep the Daily Scrum short by enforcing the rules and making sure that people speak briefly. The Daily Scrum is not a status meeting. It is not for anyone but the people transforming the Product Backlog items into an increment of the product that the Team has committed to getting done during the Sprint. The Daily Scrum serves as a feedback loop to get better at what the team is doing. Return to Top Release Planning Release planning answers the questions: 1. How can we turn the vision into a winning product in the best possible way? 2. How can we meet or exceed the desired customer satisfaction and Return on Investment? The release plan establishes the goal of the release, the highest priority Product Backlog items, the major risks, and the overall features and functionality that the release will contain. It also establishes a probable delivery date and cost that should hold if nothing changes. The organization can then inspect progress and make changes to this release plan on a Sprint-by-Sprint basis. Products are built iteratively and incrementally using Scrum, wherein each Sprint creates an increment of the product, starting with the most valuable and riskiest. More and more Sprints create additional increments of the product. Each increment is a This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 25 of 27
  • 26. potentially shippable slice of the entire product. When enough increments have been created for the Product to be of value, the product is released. Return to Top Sprint Planning Sprint Planning is when the sprint/iteration is planned. It is time-boxed to eight hours for a one month Sprint. For shorter Sprints, allocate approximately 5% of the total Sprint length to this meeting and consists of two parts. The first part is when what will be done in the Sprint is decided upon. The second part is when the Team figures out how it is going to build this functionality into a product increment during the Sprint. There are two parts to the Sprint Planning Meeting: the ―What?‖ part and the ―How?‖ part. Some Scrum Teams combine the two. In the first part, the Scrum Team addresses the question of ―What?‖ Here, the Product Owner presents the top priority Product Backlog to the Team. They work together to figure out what functionality is to be developed during the next Sprint. The input to this meeting is the Product Backlog, the latest increment of product, the capacity of the Team, and past performance of the Team. The amount of backlog the Team selects is solely up to the Team. Only the Team can assess what it can accomplish over the upcoming Sprint and make a commitment to getting it done. Return to Top Sprint Retrospective After the Sprint Review and prior to the next Sprint Planning meeting, the Scrum Team has a Sprint Retrospective meeting. At this 2 hour time-boxed meeting the Scrum Master encourages the Scrum Team to revise, within the Scrum framework and practices, their development process to make it more effective and enjoyable for the next Sprint. The purpose of the Retrospective is to inspect how the last Sprint went in regards to people, relationships, process and tools. The inspection should identify and prioritize the major items that went well and those items that-if done differently-could make things even better. These include Scrum Team composition, meeting arrangements, tools, definition of ―done,‖ methods of communication, and processes for turning Product Backlog items into something ―done‖ which is commercial or operational valuable. By the end of the Sprint Retrospective, the Scrum Team should have identified actionable improvement measures that it implements in the next Sprint. This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 26 of 27
  • 27. Return to Top Sprint Review At the end of the Sprint, a Sprint Review meeting is held. This is a four hour time-boxed meeting for one month Sprints. For Sprints of lesser duration, this meeting must not consume more than 5% of the total Sprint. During the Sprint Review, the Scrum Team and stakeholders collaborate about what was just done. Based on that and changes to the Product Backlog during the Sprint, they collaborate about what are the next things that could be done. This is an informal meeting, with the presentation of the functionality intended to foster collaboration about what to do next. The meeting includes at least the following elements. • The Team demonstrates the stories is has completed and answers questions • The Product Owner then discusses the Product Backlog as it stands • The entire group then collaborates about what it has seen and what this means regarding what to do next • The Sprint Review provides valuable input to subsequent Sprint Planning meeting Return to Top This guideline by design is neither intended to be prescriptive nor complete in detail. It contains just enough detail to facilitate a collaborative, self-directing and self-organizing, agile/lean product development team. Copyright © 2008 Russell Pannone. All rights reserved. Page 27 of 27