SlideShare una empresa de Scribd logo
1 de 49
Lean/Agile Product Development
Methodology, Practices, Terminology




                                      1
Session Goals

• Raise awareness within the team of Lean-Agile Product Development
  methodology fundamentals, practices, and terminology.
• Provide a common starting point for discussion of how we will work day to
  day: Processes, Practices, and Tools.
• Encourage further learning by individuals and their teams.




                                                                         2
Methodology Fundamentals




                           3
What is Agile Development?

Agile development is a group of software development methodologies,
including Lean-Agile, based on adaptive planning, and iterative and incremental
development, where requirements and solutions evolve concurrently through
collaboration between self-organizing, cross-functional teams.

Core Agile Values:
    • Individuals and interactions over processes and tools
    • Working software over comprehensive documentation
    • Customer collaboration over contract negotiation
    • Responding to change over following a plan
    While there is value in the items on the right, we value the items on the
    left more.




                                                                                4
Introducing Lean-Agile Product Development
A disciplined end-to-end Product Development methodology, with Agile values
and practices infused with “Lean Thinking”, that helps an organization achieve
rapid and reliable delivery of value, with an emphasis on continuous learning
and improvement.

Principles:

 Eliminate Waste: spend time only on what adds real customer value;
  remove demands on capacity that do not add value.

 Amplify Learning: build knowledge; when you have tough problems or
  uncertainty, increase feedback to improve. “Fail fast, fail cheap”.

 Defer Commitment: keep your options open as long as practical, but no
  longer.

 Deliver as Fast as Possible: deliver value to customers as soon as they ask
  for it; automate or remove impediments to rapid delivery.
                                                                                5
Lean-Agile Principles (cont.)


 Trust and Empower the Team: let the people who add value use their full
  potential to meet the business challenges.

 Build Quality In: don’t try to tack on quality after the fact; More testing, less
  debugging.

 Systems-Thinking to “See the Whole”: resist the temptation to optimize
  parts at the expense of the whole. Look at entire system’s value flow.

 Technical Excellence: an adaptive low-dependency architecture and quality
  code through test driven development are mandatory to sustain rapid and
  reliable delivery.



                                                                                6
Lean-Agile is Adaptive
Traditional Approach is Prescriptive: a plan is a
commitment
• Beak project into identifiable work products
   that are defined and built to meet specific
   fixed goals.
• Carefully plan and then controlled to meet
   that plan.

Lean-Agile is Adaptive: planning is indispensable
but plans are useless
• Look at the whole system’s ability to deliver
   value rather than focusing on optimizing and
   delivering individual parts.
• Value learning effectively through feedback
   and testing and empower the people who do
   the work.


                                                    7
Lean-Agile is Concurrent
Traditional Approach: deliverables are "tossed over the wall" from department to
department which results in lost information, defects, delays, and lower value
outcomes.

Lean-Agile Approach: tasks are integrated to reduce the elapsed time required to
bring a new product to the market by minimizes the inefficiency and defects that
arise from hand-offs.




                                                                             8
Lean-Agile is Hard to Do
• There is no easy way, no "free lunch” – you must do the hard parts.

• Need to have strong engineering practices, high-bandwidth communication,
  concurrent product development, continuous process improvement,
  motivated cross-functional teams, and engaged Product Owner.

• Backsliding into old ways is easy: success requires sustained commitment
  from all levels of the organization.

• Worth the effort - build great products and services rapidly and reliably that
  delight customers and compete to win in the marketplace.




                                                                             9
Practices and Terminology




                            10
How does a Product Request get Prioritized?
Portfolio Management
•   Priorities are set at the portfolio level and
    informs the individual team priorities
•   Central oversight of budget, risk management,
    strategic alignment of investments, demand and                    •   Portfolio
    investment management along with                     Portfolio
    standardization of investment procedure, rules                        Priorities
                                                         Priorities
    and plans.                                                        •   Portfolio
                                                                          success
Product Backlog                                                           metrics
•   A prioritized list of things needed to be done:
    Themes, Epics, Products, Features, and Stories.
                                                       Team Product   •   Team priorities
•   Final requirement details are figured out during
    implementation.                                                   •   Team success
                                                         Backlogs
•   New items can be added to the Product Backlog                         metrics
    at any time (unlike Scrum where items can only
    be added during Sprint planning).
•   “Backlog Grooming” is performed by the team
    on a regular basis.
•   The GM and Product Manager regularly make
    priority and sequencing decisions based on
    expected value of items in the Backlog
Three Variables Product Considers When
              Weighing Priorities
• Business Score
   – What is the business value of the initiative (ROI, PV’s, etc.)?
       • Project brief
• Level of Effort
   – How many resources will it take to realize the business value?
       • Step one: “t-shirt” sizing (S,M,L)
       • Step two: Grooming meetings
• Team Capacity
   – What else are people working on and what would need to be
     de-prioritized to work on this initiative
       • Working on standard measure to communicate this at the Portfolio
         and Team levels
Themes, Epics and Stories

• Theme or “tent-pole”: a top-level objective
  or vision.
• Epic: a group of related Stories that
  describes a particular higher level capability
  or functionality.
• Story*: an Independent, Negotiable,
  Valuable, Estimatable, Small, Testable
  candidate requirement (“INVEST”).
• Task: Stories will often be broken down into
  specific work sub-tasks.

 The Product Manager is responsible for making sure that work is broken down
 appropriately at each stage. For example, Themes and even Epics are okay during
 Portfolio reviews but all Epics should be broken down to the Story level once
 Grooming meetings are complete.

                                                                             13
MVP: Minimum Viable Product (or Feature)
• Has just those user stories that allow the
  product/feature to be deployed that still achieves the
  desired business goal, and no more.
• Avoid building products that customers do not want,
  maximize the information learned about user
  preferences per dollar spent.
• The process is iterated until a desirable product-
  market fit is obtained, or until the product is deemed
  to be non-viable.
   “Over 70 years, this (Silicon) Valley has developed a culture that does not personalize failure,” said Mr.
   Komisar, of Kleiner Perkins. “If you’re not corrupt, stupid or lazy, we see failure as learning — learn from it,
   and reapply it.” NY Times

                                                                                                               14
Kanban
• Kanban is a method for developing and releasing products with
  an emphasis on moving small batches of work through the
  product development system with a more continuous, even
  flow.

• Analysts, developers & testers pull from a queue of tasks that
  are ready for work.

• People only work on one or two tasks at a time (limit WIP).

• The work in progress is displayed for participants to see on a
  physical or virtual wall-board – making it easy to see status and
  for bottlenecks to be identified and fixed.
                                                                15
Kanban Wallboard Example




                           16
Types of Testing Used in Agile Processes

• Test Driven Development (TDD): Developers create automated or manual unit
   tests that define code specification (immediately) before writing the code itself.

• Integration Testing: A phase in software testing in which individual software
   modules are combined and tested as a group. It occurs after unit testing and
   before acceptance testing.

• Acceptance Testing: Requirements written as tests by Product Manager before
   development starts, used by developers in unit tests, and by QA for testing Stories
   in QA environments. Acceptance tests are how you know when you are “done”.

• User Acceptance Testing (UAT): Performed by actual product manager or users
   during QA, or earlier to get feedback as early as possible.

• Regression Testing (end to end): Continuous automated regression tests give
   rapid feedback during development, also performed by QA before release.



                                                                                        17
Agile Meetings: Feedback & Learning
• Daily Stand-up
   –   Mandatory for all team members
   –   Keep to 15 min or less
   –   What you did yesterday, doing today, and blocking issues
   –   Take technical discussions offline

• Demo
   – Alpha/beta/feedback

• Retrospective
   – What worked well last iteration that we should continue
     doing?
   – What didn’t work well last iteration that we should stop
     doing?
   – What should we start doing?
                                                                  18
Deployment On Demand

• “Deployment on Demand” is the ability to choose when
  a particular product, feature, or bug fix should be
  deployed into an integration environment, into a QA
  environment, or into production.

• As each Story is completed and release ready, the goal is
  to move that Story to production in order to begin
  gaining the value (and learning) expected from it.

• If a Story is part of an MVP/MVF, then the completed
  Story may be held until the other Stories are completed.
                                                         19
Documentation in the Agile World

• Where should Product documentation exist?
  – Discovery Wiki: product docs, architecture docs, etc
  – JIRA ticket: story specific acceptance criteria, notes,
    etc.
• When to document?
  –   Project stakeholders require it
  –   To define a visual model (design comps)
  –   To define a contract model (external interfaces)
  –   To support communication with an external group
  –   To support organizational memory
  –   To think something through

                                                              20
Process Improvement Basics

• Start with what you do now.

• Initially, respect current roles, job titles and
  responsibilities.

• Make Process Explicit.

• Improve Collaboratively.

                                                     21
Agile Estimation – “t-shirt sizing”

• In Lean-Agile process, we assign work to the team, not the
  individual

• In the Grooming Meetings, the team sits down to estimate
  its effort for the Epics and Stories in the backlog

• T-shirt sizes (XS, S, M, L, XL, XXL) are common estimating
  methods for story items

• The Product Manager needs these estimates, so that he
  can effectively prioritize items in the backlog and, as a
  result, forecast releases based on the team's throughput

                                                               22
New Process
                                                 Vertical/Central Services teams
                                                                                         Monitoring/
                                                                                          Analysis




                           Vertical
                                                  MVP                       Acceptance
                           Request                            Development                Production
      Vertical                                   Process
                           Review
      Team


Request
                 Central              Vertical
                 support              support


    Central
    Service
                      Portfolio                   MVP             Central   Acceptance   Production
                       Review                    Process           Dev




                                                                                         Monitoring/
                                                                                          Analysis
Intake/Review

• Route new requests to Product Managers*
• Project Brief
• Scoring
     – Business value
     – Level of effort (t-shirt size: S, M, L, XL)
     – Capacity
• Green lighting
• Backlog prioritization
*Maintenance/bugs – continue to do what you are doing.
Minimum Viable Product

•   Epics/User Stories
•   Team review
•   Initial estimates (story points)
•   Team negotiation
•   MVP defined
•   User Stories refined w/ acceptance tests
Request Checklist
Project Manager creates a Checklist for each request: Theme, Epic,
and large User Story. Input is solicited from team members.

    Does this require a Technical Approach Document (TAP) to capture high-level
     architectural approach.
    If a VAP project, does this need Central architectural review or input?
    How much requirements documentation is needed? This is usually based on
     risk and stakeholder needs.
          User/Tech Stories with Acceptance Test Criteria (required)
          Wireframes?
          Design Comps?
          Full functional specification?
          API or interface specification?
    Do other stakeholders need to be included in the requirement analysis,
     demos, reviews, etc.
          AdOps
          Ad Sales
          Analytics
          Publishing

                                                                                   26
Development/Acceptance - very simplified…
• Developers pick up User Stories that are “ready for development”
  (i.e. refined with acceptance criteria and estimate) as they have
  capacity.
• Developer codes & unit tests components, then integrates and tests
  User Story end-to-end.
• Developer frequently demos results to Product Manager before and
  after integration testing to get feedback.
• QA tester picks up and verifies “integrated” stories against
  Acceptance Tests, then UAT by any external stakeholder (e.g. AdOps)
  is performed.
• When all User Stories for MVP have been passed Acceptance Testing,
  and regression testing has been completed, the software is “ready for
  deployment”.
• Software is deployed and verified in production by QA.
Standard Daily Meetings
•   Daily Stand-up (All Teams: VAT, Central, Mobile, etc)
     – Daily check-in with team members
     – Mandatory for core team members: Product, Dev, QA, PM, Design/UX
     – Each team to pick a non-overlapping 15 minute slot between 9:30 and 11:30. PMs
         to coordinate
•   Daily Change Control
     – Every morning at 9:15-9:30
     – PMs, Product Managers, Central tech reps.
     – Determine what do with new/timely issues – particularly from VATs. Cancel if no
         items for change control.




                                                                                         28
Other Weekly or Ad-Hoc Meetings
•   Grooming Meetings (Each Team)
     – Product Manager/Owner collaboratively reviews Backlog, discuss and refine Stories,
         etc. with the team. Usually done in the context of a particular MVP/MVF
     – Story point estimates provided by team
     – Most, if not all, team members should participate as this is a critical information
         sharing session
•   Prioritization Meetings (Each Team)
     – Product Managers and Product Owners will meet on an as-needed basis to review
         priorities.
     – Program Manager will coordinate any portfolio prioritization meetings on an as-
         needed basis.
•   Retrospectives “Lessons learned” (Each Team)
     – Organized by PM after an iteration or every few weeks




                                                                                             29
Theme, Epic, User Story Examples




                                   30
Recap: Themes, Epics and Stories
•   Theme or “tent-pole”: a top-level objective or vision.

•   Epic: a group of related Stories that describes a particular higher level capability or
    functionality, or more generally an epic is a high level story used as a placeholder.

•   Story: an Independent, Negotiable, Valuable, Estimatable, Small, Testable candidate
    requirement (“INVEST”). User stories are written from a user point of view.

•   Acceptance Test: Specific user scenarios, provided by Product Manager, that are used to
    determine when a user story has been correctly implemented.

•   Sub-Task: Stories will often be broken down into specific work sub-tasks.

•   MVP/MVF: Has just those user stories that allow the product/feature to achieve the
    desired business goal, and no more. Iterate and learn until a desirable product-market
    fit is obtained, or until the product is deemed to be non-viable.

Note: this “user story” based process is very deliberately intended to minimize the use of
big requirements documents and focus more on verbal conversation to achieve mutual
understanding between customer/user representative and the developer.                    31
Example: Website Redesign
Theme: Website Redesign 2011
• Relaunch XYZ website as a destination for men between age of 18-45, double
   audience in 18 months.

Sample Epics:
• New Blog oriented verticals for Adventure, Gear & Gadgets, Cars & Bikes
• Producers can publish and feature News blog content
• Visitors can easily navigate to featured videos, topics, sub-topics, ad sales
  packages, and Commerce promotions within a streamlined top navigation
• Producers can feature new content within an updated Homepage design

Sample “Homepage” Stories:
• As a Producer I want to select the featured content so visitors can easily find
  curated content.
• As a Visitor I want to view the Facebook like count and Twitter follower number
  so I can easy like or follow if I want to.
• As AdOps user I want to be able serve Pushdown, Tile, and Entitlement ads on
  the homepage so we can monetize the content.
• As a Visitor I want to see the most recent articles                             32
Example: MVP
Homepage MVP
1. As a Producer I want to select the featured content so visitors can easily find
   curated content
2. As a Visitor I want to view the Facebook like count and Twitter follower
   number so I can easy like or follow if I want to.
3. As AdOps user I want to be able serve Pushdown, Tile, and Entitlement ads on
   the homepage so we can monetize the content.
4. Etc…

Deferred – non-MVP
1. As a Visitor I want to see the most recent articles
2. As a Commerce Producer I want to promote a list featured products in the
    Right Rail in order for Visitors to see different kinds of products.
3. Etc…




                                                                               33
Example: Acceptance Test Criteria

User Story: As a Producer I want to select the featured content so visitors can easily find
curated content.

Acceptance Test Criteria
• Featured content consists of a minimum of 6 items and a maximum of 10 items.
• Content in the featured stream can come from all articles and blog posts.
• Producers control what appears in the featured stream and the position in which it
   appears.
• Featured Content Displays [title], [image], [topic], [description], [read more link].
• [title], [image] and [read more link] link to the individual asset.
• [topic] rules are as follows:
   1. Display [topic] which the asset belongs to
   2. IF [topic] is "Show News", THEN display show tag instead. (e.g. Mythbusters or Shark
   Week)
   3. IF [topic] is not "Show News" and the asset has a Supertag, THEN display the
   Supertag
   instead.
   4. [topic] links to topic page, showsite or tag listing page accordingly.
                                                                                              34
JIRA Request Tracking




                        35
Backlog vs. Work In Progress

• Backlog
   –   ___BCK-###
   –   Backlog is upcoming work, may be some early discussions
   –   Has not been fully prioritized/sequenced
   –   The items to be worked on next should be more refined
• Work In Progress
   –   ___WIP-###
   –   Prioritized
   –   Meets “Ready For Development” criteria
   –   In the hands of engineering
• All teams have both types of queues
JIRA Queues or “Projects”

• Lessons learned
  – Jira only allows a certain level of granularity
    because of hierarchy restrictions in the software
  – We need the granularity to provide vertical
    specific reporting
  – We need the granularity to view backlog (new
    stuff) separately from work in progress
• Separate queues provides better granularity
Simplified Ticket Types

• Backlog Ticket Types       • Subtask Ticket Types
   –   Theme/Epic               –   Design / Development
   –   User Story               –   Documentation
   –   Tech Story               –   Deployment / SysAdmin
   –   Production Defect        –   QA Defect
   –   Research/Prototype    • Support Ticket Types
• WIP Ticket Types              – Production Support
   –   User Story               – Publishing Support
   –   Tech Story
   –   Production Support
   –   Production Defect
   –   Research/Prototype
Customized Workflows Based on Ticket Type

• New Jira feature for the team
• Tickets follow a particular path and change
  status by clicking a “workflow button”
• Software Limited choices
  – Simplifies moving ticket from one status to
    another
• Business Criteria / Rules to change status
  – Clarifies what a particular status really means
Lean/Agile Principles – More Info




                                    41
Eliminate Waste

Look for policies, processes, or practices that take time, energy, and resources
that do not add value and streamline, automate, or stop doing them.

•   Work in Progress
•   Extra Processes
•   Extra Documentation
•   Extra Features
•   Task Switching
•   Design Loop-backs
•   Significant support burden
•   Waiting
•   Hand-offs
•   Defects
•   Management Activities



                                                                              42
Technical Excellence

Ability to respond to change and rapid delivery requires strong engineering
practices

•   More testing, less debugging
•   Low-dependency architectures
•   Continuous integration
•   Evolutionary design and development
•   Refactoring
•   Good coding practices
•   Code reviews


See wiki for more details:
https://wiki.discovery.com:8443/display/DMS/Technical+Discipline+and+Tools



                                                                              43
Amplify Learning

•   “Fail Fast, Fail Cheap”
•   Use set based decision making to identify and evaluate several options.
•   Share requirements, designs, and code (demos) early and often.
•   Use feedback loops: demos, reviews, postmortems, metrics, prototypes, etc.
•   “Information Radiators” that are quick ways to get info to the team.
•   Relentless improvement: seeing and solving problems, sharing the
    knowledge.




                                                                          44
Defer Commitment

• Leave options open and accommodate evolving requirements.
• Let the solution emerge: do not wait to get all of the details worked out
  before starting design and development.
• Define scope at a high level, the details are negotiable.
• Do not waste time developing detailed requirements for work to be done in
  the future.
• Multiple options of good+safe, better+risky, optimal+high-risk approach.
• Delaying decisions until they need to be made reduces rework.




                                                                        45
Deliver as Fast as Possible

• Deliver value early rather than wait longer for a “complete” product.
• Short iterations with continuous delivery encourage a “Try-it, test-it, fix-it”
  approach instead of “Do it right the first time”.
• Use the “pull-system” principle of Kanban and "Just in Time“ – no large
  batches that cause bottlenecks and delays.
• Releases to Production in small increments when ready.
• The goal is reliable and repeatable results, not a repeatable process.




                                                                               46
Build Trust and Empower the Team

• Excellent, focused, disciplined, and empowered people are key to success.
• Trust and respect between team members and between managers and
  employees is essential.
• Find and grow professionals with purpose, passion, persistence, and pride.
• Keep teams as small and focused as possible.
• Build cross-functional teams that mixes domain expertise with technical
  expertise.
• Ensure there is a clear and compelling purpose for the work.
• Give the technical team access to the customers, users, and decision
  makers.
• Let the team make its own commitments and be accountable for outcomes.
• Analysts are not be a substitute for developer-customer communication but
  should facilitate understanding on both sides.




                                                                         47
Build Quality In

• Quality must be built-in, not tested for after the fact.
• Technical Excellence and solid engineering practices are mandatory for Agile
  development to be successful.
• Quality means realization of purpose or fitness for use rather than
  conformance to requirements or a set plan.
• There are two kinds of Quality:
    Perceived or External Quality-- the beauty, elegance, and delight of the
       product to the end user.
    Conceptual or Internal Quality-- the integrity of the product’s
       architecture as an integrated whole as it balances between flexibility,
       maintainability, efficiency, and responsiveness.
• Model driven design – based on end user view of the system. This will help
  ensure that we "build the right thing".
• Everyone is responsible for quality. The developer in particular has a very
  active role in ensuring quality - this must not be thought of as "QA's job".

                                                                           48
Systems-Thinking: “See the Whole”

• Look at customer outcomes (increased audience and engagement for
  example) rather than internal measures such as productivity, features
  developed, or sticking to a plan.
• Value output: quality of output is more important than quantity of output
  when measuring productivity of knowledge workers. Delivering fast without
  quality is wasteful.
• Look for ways to bring predictability to value demand, by eliminating
  “failure demand” and filtering value demand in a more disciplined way to
  match up with capacity.
• Instead of optimizing parts the system or organization to increase growth
  such as productivity, or speed, look for and remove what is a constraint to
  growth, productivity, or speed.
• Beware of optimizing a part, such as ensuring high utilization, at the
  expense of the whole. Trying to maximize utilization invariably leads to
  delays and other adverse results.
• Look for and fix root causes, rather than symptoms.
                                                                          49

Más contenido relacionado

La actualidad más candente

Agile case study
Agile case studyAgile case study
Agile case studySandy Lee
 
Key Success Factors in New Product Efforts
Key Success Factors in New Product EffortsKey Success Factors in New Product Efforts
Key Success Factors in New Product EffortsAtul Setlur
 
Practical Guide to Scrum
Practical Guide to ScrumPractical Guide to Scrum
Practical Guide to ScrumPavel Dabrytski
 
Scrum for IT Project Outsourcing
Scrum for IT Project OutsourcingScrum for IT Project Outsourcing
Scrum for IT Project OutsourcingMasoud Bolhassani
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Groupsuwalki24.pl
 
ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)Amardeep Vishwakarma
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile MethodologyHaresh Karkar
 
Software Product Engineering Life-cycle
Software Product Engineering Life-cycleSoftware Product Engineering Life-cycle
Software Product Engineering Life-cycleDotitude
 
Updated Product Management Notes
Updated Product Management NotesUpdated Product Management Notes
Updated Product Management NotesJohn Gibbon
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSibel Kuzgun AKIN
 
Agile Processes - Scrum
Agile Processes - ScrumAgile Processes - Scrum
Agile Processes - ScrumSoumya De
 
Examining the Product Owner Role
Examining the Product Owner RoleExamining the Product Owner Role
Examining the Product Owner RoleKent McDonald
 
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...AgileNetwork
 
Haresh Karkar - Visual Resume
Haresh Karkar - Visual ResumeHaresh Karkar - Visual Resume
Haresh Karkar - Visual ResumeHaresh Karkar
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentSachith Perera
 

La actualidad más candente (20)

Agile case study
Agile case studyAgile case study
Agile case study
 
Key Success Factors in New Product Efforts
Key Success Factors in New Product EffortsKey Success Factors in New Product Efforts
Key Success Factors in New Product Efforts
 
Practical Guide to Scrum
Practical Guide to ScrumPractical Guide to Scrum
Practical Guide to Scrum
 
Scrum for IT Project Outsourcing
Scrum for IT Project OutsourcingScrum for IT Project Outsourcing
Scrum for IT Project Outsourcing
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile Methodology
 
Software Product Engineering Life-cycle
Software Product Engineering Life-cycleSoftware Product Engineering Life-cycle
Software Product Engineering Life-cycle
 
EDO Training
EDO TrainingEDO Training
EDO Training
 
Updated Product Management Notes
Updated Product Management NotesUpdated Product Management Notes
Updated Product Management Notes
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
What Is Software Development Lifecycle?
What Is Software Development Lifecycle?What Is Software Development Lifecycle?
What Is Software Development Lifecycle?
 
Agile Processes - Scrum
Agile Processes - ScrumAgile Processes - Scrum
Agile Processes - Scrum
 
Examining the Product Owner Role
Examining the Product Owner RoleExamining the Product Owner Role
Examining the Product Owner Role
 
Game changers
Game changersGame changers
Game changers
 
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...
Agile Gurugram 2016 | Conference | Built-in Quality through Vertical Slicing ...
 
Haresh Karkar - Visual Resume
Haresh Karkar - Visual ResumeHaresh Karkar - Visual Resume
Haresh Karkar - Visual Resume
 
Agile case studies
Agile case studiesAgile case studies
Agile case studies
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 

Destacado

Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process OverviewPaul Nguyen
 
Agile development practices - How do they really work ?
Agile development practices - How do they really work ?Agile development practices - How do they really work ?
Agile development practices - How do they really work ?anand003
 
Neosesame Key factors for a successfull mobile app
Neosesame Key factors for a successfull mobile appNeosesame Key factors for a successfull mobile app
Neosesame Key factors for a successfull mobile appEliocity
 
Leader´s Guide - Lean Start Up
Leader´s Guide - Lean Start UpLeader´s Guide - Lean Start Up
Leader´s Guide - Lean Start UpINNOGYZER.com
 
Best practices for mobile app development android march 15 2013 ts
Best practices for mobile app development   android march 15 2013 tsBest practices for mobile app development   android march 15 2013 ts
Best practices for mobile app development android march 15 2013 tsTasneem Sayeed
 
Sample Report: Saudi Arabia B2C E-Commerce Market 2016
Sample Report: Saudi Arabia B2C E-Commerce Market 2016Sample Report: Saudi Arabia B2C E-Commerce Market 2016
Sample Report: Saudi Arabia B2C E-Commerce Market 2016yStats.com
 
Lean Startup Machine - Mobile App Development
Lean Startup Machine - Mobile App DevelopmentLean Startup Machine - Mobile App Development
Lean Startup Machine - Mobile App DevelopmentAravind Krishnaswamy
 
Lean Startup: Insider's Story
Lean Startup: Insider's StoryLean Startup: Insider's Story
Lean Startup: Insider's StoryEmpatika
 
MENA Internet Usage & Consumption Habits
MENA Internet Usage & Consumption HabitsMENA Internet Usage & Consumption Habits
MENA Internet Usage & Consumption HabitsMais AbuSalah
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements managementChristian Hassa
 
Training Webinar: From a bad to an awesome user experience - Training Webinar
Training Webinar: From a bad to an awesome user experience - Training WebinarTraining Webinar: From a bad to an awesome user experience - Training Webinar
Training Webinar: From a bad to an awesome user experience - Training WebinarOutSystems
 
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca Report
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca ReportDemographics in Saudi Arabia: New Age Of Opportunities - An Aranca Report
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca ReportAranca
 
Saudi Arabia 2016: Business Insights & Digital Landscape
Saudi Arabia 2016: Business Insights & Digital LandscapeSaudi Arabia 2016: Business Insights & Digital Landscape
Saudi Arabia 2016: Business Insights & Digital LandscapeIdentity Mena
 
Lean Product Management
Lean Product ManagementLean Product Management
Lean Product ManagementMelissa Perri
 
Archi. REham hamed_C.V
Archi. REham hamed_C.VArchi. REham hamed_C.V
Archi. REham hamed_C.Vtoya altookhy
 
Jay Wilde Cover Letter and Resume as of 06/2015.
Jay Wilde Cover Letter and Resume as of 06/2015. Jay Wilde Cover Letter and Resume as of 06/2015.
Jay Wilde Cover Letter and Resume as of 06/2015. Jay Wilde
 

Destacado (19)

Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process Overview
 
Agile development practices - How do they really work ?
Agile development practices - How do they really work ?Agile development practices - How do they really work ?
Agile development practices - How do they really work ?
 
Neosesame Key factors for a successfull mobile app
Neosesame Key factors for a successfull mobile appNeosesame Key factors for a successfull mobile app
Neosesame Key factors for a successfull mobile app
 
Leader´s Guide - Lean Start Up
Leader´s Guide - Lean Start UpLeader´s Guide - Lean Start Up
Leader´s Guide - Lean Start Up
 
Best practices for mobile app development android march 15 2013 ts
Best practices for mobile app development   android march 15 2013 tsBest practices for mobile app development   android march 15 2013 ts
Best practices for mobile app development android march 15 2013 ts
 
Sample Report: Saudi Arabia B2C E-Commerce Market 2016
Sample Report: Saudi Arabia B2C E-Commerce Market 2016Sample Report: Saudi Arabia B2C E-Commerce Market 2016
Sample Report: Saudi Arabia B2C E-Commerce Market 2016
 
The Lean Start Up
The Lean Start UpThe Lean Start Up
The Lean Start Up
 
Lean Startup Machine - Mobile App Development
Lean Startup Machine - Mobile App DevelopmentLean Startup Machine - Mobile App Development
Lean Startup Machine - Mobile App Development
 
Lean Startup: Insider's Story
Lean Startup: Insider's StoryLean Startup: Insider's Story
Lean Startup: Insider's Story
 
MENA Internet Usage & Consumption Habits
MENA Internet Usage & Consumption HabitsMENA Internet Usage & Consumption Habits
MENA Internet Usage & Consumption Habits
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements management
 
Training Webinar: From a bad to an awesome user experience - Training Webinar
Training Webinar: From a bad to an awesome user experience - Training WebinarTraining Webinar: From a bad to an awesome user experience - Training Webinar
Training Webinar: From a bad to an awesome user experience - Training Webinar
 
Project Scope Statement
Project Scope StatementProject Scope Statement
Project Scope Statement
 
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca Report
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca ReportDemographics in Saudi Arabia: New Age Of Opportunities - An Aranca Report
Demographics in Saudi Arabia: New Age Of Opportunities - An Aranca Report
 
Saudi Arabia 2016: Business Insights & Digital Landscape
Saudi Arabia 2016: Business Insights & Digital LandscapeSaudi Arabia 2016: Business Insights & Digital Landscape
Saudi Arabia 2016: Business Insights & Digital Landscape
 
Lean Product Management
Lean Product ManagementLean Product Management
Lean Product Management
 
Archi. REham hamed_C.V
Archi. REham hamed_C.VArchi. REham hamed_C.V
Archi. REham hamed_C.V
 
Traducción de palabras
Traducción de palabrasTraducción de palabras
Traducción de palabras
 
Jay Wilde Cover Letter and Resume as of 06/2015.
Jay Wilde Cover Letter and Resume as of 06/2015. Jay Wilde Cover Letter and Resume as of 06/2015.
Jay Wilde Cover Letter and Resume as of 06/2015.
 

Similar a Lean Product Development at Discovery Communications: Methodology, Practices, Terminology

Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वोAgile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वोMnyMehr
 
Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Think For A Change
 
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Samuel Chin, PMP, CSM
 
Agile Development Product Delivery For Successful Organizations
Agile Development Product Delivery For Successful OrganizationsAgile Development Product Delivery For Successful Organizations
Agile Development Product Delivery For Successful OrganizationsMarc Crudgington, MBA
 
Agile product development and management
Agile product development and managementAgile product development and management
Agile product development and managementAshwinee Kumar
 
Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Cognizant
 
敏捷大师Arne谈敏捷实施的五项准备
敏捷大师Arne谈敏捷实施的五项准备敏捷大师Arne谈敏捷实施的五项准备
敏捷大师Arne谈敏捷实施的五项准备kookieyang
 
Agile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadershipAgile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadershipRavi Tadwalkar
 
Understanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfUnderstanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfSwapnikaReddy6
 
What is Agility - Transforming to become an Agile Organization in the Digital...
What is Agility - Transforming to become an Agile Organization in the Digital...What is Agility - Transforming to become an Agile Organization in the Digital...
What is Agility - Transforming to become an Agile Organization in the Digital...Richard Ellis PMP PRM CSM PMI-ACP SSGB
 
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning Lab
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning LabIntroduction to Agile Dr Richard Guerrero_Wessex AHSN Learning Lab
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning LabHealth Innovation Wessex
 
What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?Tuan Yang
 
Myths of Product Development
Myths of Product DevelopmentMyths of Product Development
Myths of Product DevelopmentShoaib Shaukat
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of AgileSam Hwang
 

Similar a Lean Product Development at Discovery Communications: Methodology, Practices, Terminology (20)

Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वोAgile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
Agile - Basics.pptxjvjplhxitstistidara तिहोचपवपज्वो
 
Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...Project Management Foundations Series Course 104 - Agile Project Management C...
Project Management Foundations Series Course 104 - Agile Project Management C...
 
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
Products and Value: An Agile Perspective BY Matt Nudelmann (GUEST PRESENTER)
 
Agile Development Product Delivery For Successful Organizations
Agile Development Product Delivery For Successful OrganizationsAgile Development Product Delivery For Successful Organizations
Agile Development Product Delivery For Successful Organizations
 
Agile
AgileAgile
Agile
 
Are you Agile enough?
Are you Agile enough?Are you Agile enough?
Are you Agile enough?
 
Agile product development and management
Agile product development and managementAgile product development and management
Agile product development and management
 
Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02Agileproductdevelopmentandmanagement 120420040535-phpapp02
Agileproductdevelopmentandmanagement 120420040535-phpapp02
 
敏捷大师Arne谈敏捷实施的五项准备
敏捷大师Arne谈敏捷实施的五项准备敏捷大师Arne谈敏捷实施的五项准备
敏捷大师Arne谈敏捷实施的五项准备
 
Agile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadershipAgile lean workshop for teams, managers & exec leadership
Agile lean workshop for teams, managers & exec leadership
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
 
Understanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdfUnderstanding-Agile &Scrum.pdf
Understanding-Agile &Scrum.pdf
 
What is Agility - Transforming to become an Agile Organization in the Digital...
What is Agility - Transforming to become an Agile Organization in the Digital...What is Agility - Transforming to become an Agile Organization in the Digital...
What is Agility - Transforming to become an Agile Organization in the Digital...
 
module I.pptx
module I.pptxmodule I.pptx
module I.pptx
 
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning Lab
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning LabIntroduction to Agile Dr Richard Guerrero_Wessex AHSN Learning Lab
Introduction to Agile Dr Richard Guerrero_Wessex AHSN Learning Lab
 
What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?What are the Tools & Techniques in Agile Project Management?
What are the Tools & Techniques in Agile Project Management?
 
Myths of Product Development
Myths of Product DevelopmentMyths of Product Development
Myths of Product Development
 
Fundamentals of Agile
Fundamentals of AgileFundamentals of Agile
Fundamentals of Agile
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
 

Lean Product Development at Discovery Communications: Methodology, Practices, Terminology

  • 2. Session Goals • Raise awareness within the team of Lean-Agile Product Development methodology fundamentals, practices, and terminology. • Provide a common starting point for discussion of how we will work day to day: Processes, Practices, and Tools. • Encourage further learning by individuals and their teams. 2
  • 4. What is Agile Development? Agile development is a group of software development methodologies, including Lean-Agile, based on adaptive planning, and iterative and incremental development, where requirements and solutions evolve concurrently through collaboration between self-organizing, cross-functional teams. Core Agile Values: • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan While there is value in the items on the right, we value the items on the left more. 4
  • 5. Introducing Lean-Agile Product Development A disciplined end-to-end Product Development methodology, with Agile values and practices infused with “Lean Thinking”, that helps an organization achieve rapid and reliable delivery of value, with an emphasis on continuous learning and improvement. Principles:  Eliminate Waste: spend time only on what adds real customer value; remove demands on capacity that do not add value.  Amplify Learning: build knowledge; when you have tough problems or uncertainty, increase feedback to improve. “Fail fast, fail cheap”.  Defer Commitment: keep your options open as long as practical, but no longer.  Deliver as Fast as Possible: deliver value to customers as soon as they ask for it; automate or remove impediments to rapid delivery. 5
  • 6. Lean-Agile Principles (cont.)  Trust and Empower the Team: let the people who add value use their full potential to meet the business challenges.  Build Quality In: don’t try to tack on quality after the fact; More testing, less debugging.  Systems-Thinking to “See the Whole”: resist the temptation to optimize parts at the expense of the whole. Look at entire system’s value flow.  Technical Excellence: an adaptive low-dependency architecture and quality code through test driven development are mandatory to sustain rapid and reliable delivery. 6
  • 7. Lean-Agile is Adaptive Traditional Approach is Prescriptive: a plan is a commitment • Beak project into identifiable work products that are defined and built to meet specific fixed goals. • Carefully plan and then controlled to meet that plan. Lean-Agile is Adaptive: planning is indispensable but plans are useless • Look at the whole system’s ability to deliver value rather than focusing on optimizing and delivering individual parts. • Value learning effectively through feedback and testing and empower the people who do the work. 7
  • 8. Lean-Agile is Concurrent Traditional Approach: deliverables are "tossed over the wall" from department to department which results in lost information, defects, delays, and lower value outcomes. Lean-Agile Approach: tasks are integrated to reduce the elapsed time required to bring a new product to the market by minimizes the inefficiency and defects that arise from hand-offs. 8
  • 9. Lean-Agile is Hard to Do • There is no easy way, no "free lunch” – you must do the hard parts. • Need to have strong engineering practices, high-bandwidth communication, concurrent product development, continuous process improvement, motivated cross-functional teams, and engaged Product Owner. • Backsliding into old ways is easy: success requires sustained commitment from all levels of the organization. • Worth the effort - build great products and services rapidly and reliably that delight customers and compete to win in the marketplace. 9
  • 11. How does a Product Request get Prioritized? Portfolio Management • Priorities are set at the portfolio level and informs the individual team priorities • Central oversight of budget, risk management, strategic alignment of investments, demand and • Portfolio investment management along with Portfolio standardization of investment procedure, rules Priorities Priorities and plans. • Portfolio success Product Backlog metrics • A prioritized list of things needed to be done: Themes, Epics, Products, Features, and Stories. Team Product • Team priorities • Final requirement details are figured out during implementation. • Team success Backlogs • New items can be added to the Product Backlog metrics at any time (unlike Scrum where items can only be added during Sprint planning). • “Backlog Grooming” is performed by the team on a regular basis. • The GM and Product Manager regularly make priority and sequencing decisions based on expected value of items in the Backlog
  • 12. Three Variables Product Considers When Weighing Priorities • Business Score – What is the business value of the initiative (ROI, PV’s, etc.)? • Project brief • Level of Effort – How many resources will it take to realize the business value? • Step one: “t-shirt” sizing (S,M,L) • Step two: Grooming meetings • Team Capacity – What else are people working on and what would need to be de-prioritized to work on this initiative • Working on standard measure to communicate this at the Portfolio and Team levels
  • 13. Themes, Epics and Stories • Theme or “tent-pole”: a top-level objective or vision. • Epic: a group of related Stories that describes a particular higher level capability or functionality. • Story*: an Independent, Negotiable, Valuable, Estimatable, Small, Testable candidate requirement (“INVEST”). • Task: Stories will often be broken down into specific work sub-tasks. The Product Manager is responsible for making sure that work is broken down appropriately at each stage. For example, Themes and even Epics are okay during Portfolio reviews but all Epics should be broken down to the Story level once Grooming meetings are complete. 13
  • 14. MVP: Minimum Viable Product (or Feature) • Has just those user stories that allow the product/feature to be deployed that still achieves the desired business goal, and no more. • Avoid building products that customers do not want, maximize the information learned about user preferences per dollar spent. • The process is iterated until a desirable product- market fit is obtained, or until the product is deemed to be non-viable. “Over 70 years, this (Silicon) Valley has developed a culture that does not personalize failure,” said Mr. Komisar, of Kleiner Perkins. “If you’re not corrupt, stupid or lazy, we see failure as learning — learn from it, and reapply it.” NY Times 14
  • 15. Kanban • Kanban is a method for developing and releasing products with an emphasis on moving small batches of work through the product development system with a more continuous, even flow. • Analysts, developers & testers pull from a queue of tasks that are ready for work. • People only work on one or two tasks at a time (limit WIP). • The work in progress is displayed for participants to see on a physical or virtual wall-board – making it easy to see status and for bottlenecks to be identified and fixed. 15
  • 17. Types of Testing Used in Agile Processes • Test Driven Development (TDD): Developers create automated or manual unit tests that define code specification (immediately) before writing the code itself. • Integration Testing: A phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before acceptance testing. • Acceptance Testing: Requirements written as tests by Product Manager before development starts, used by developers in unit tests, and by QA for testing Stories in QA environments. Acceptance tests are how you know when you are “done”. • User Acceptance Testing (UAT): Performed by actual product manager or users during QA, or earlier to get feedback as early as possible. • Regression Testing (end to end): Continuous automated regression tests give rapid feedback during development, also performed by QA before release. 17
  • 18. Agile Meetings: Feedback & Learning • Daily Stand-up – Mandatory for all team members – Keep to 15 min or less – What you did yesterday, doing today, and blocking issues – Take technical discussions offline • Demo – Alpha/beta/feedback • Retrospective – What worked well last iteration that we should continue doing? – What didn’t work well last iteration that we should stop doing? – What should we start doing? 18
  • 19. Deployment On Demand • “Deployment on Demand” is the ability to choose when a particular product, feature, or bug fix should be deployed into an integration environment, into a QA environment, or into production. • As each Story is completed and release ready, the goal is to move that Story to production in order to begin gaining the value (and learning) expected from it. • If a Story is part of an MVP/MVF, then the completed Story may be held until the other Stories are completed. 19
  • 20. Documentation in the Agile World • Where should Product documentation exist? – Discovery Wiki: product docs, architecture docs, etc – JIRA ticket: story specific acceptance criteria, notes, etc. • When to document? – Project stakeholders require it – To define a visual model (design comps) – To define a contract model (external interfaces) – To support communication with an external group – To support organizational memory – To think something through 20
  • 21. Process Improvement Basics • Start with what you do now. • Initially, respect current roles, job titles and responsibilities. • Make Process Explicit. • Improve Collaboratively. 21
  • 22. Agile Estimation – “t-shirt sizing” • In Lean-Agile process, we assign work to the team, not the individual • In the Grooming Meetings, the team sits down to estimate its effort for the Epics and Stories in the backlog • T-shirt sizes (XS, S, M, L, XL, XXL) are common estimating methods for story items • The Product Manager needs these estimates, so that he can effectively prioritize items in the backlog and, as a result, forecast releases based on the team's throughput 22
  • 23. New Process Vertical/Central Services teams Monitoring/ Analysis Vertical MVP Acceptance Request Development Production Vertical Process Review Team Request Central Vertical support support Central Service Portfolio MVP Central Acceptance Production Review Process Dev Monitoring/ Analysis
  • 24. Intake/Review • Route new requests to Product Managers* • Project Brief • Scoring – Business value – Level of effort (t-shirt size: S, M, L, XL) – Capacity • Green lighting • Backlog prioritization *Maintenance/bugs – continue to do what you are doing.
  • 25. Minimum Viable Product • Epics/User Stories • Team review • Initial estimates (story points) • Team negotiation • MVP defined • User Stories refined w/ acceptance tests
  • 26. Request Checklist Project Manager creates a Checklist for each request: Theme, Epic, and large User Story. Input is solicited from team members.  Does this require a Technical Approach Document (TAP) to capture high-level architectural approach.  If a VAP project, does this need Central architectural review or input?  How much requirements documentation is needed? This is usually based on risk and stakeholder needs.  User/Tech Stories with Acceptance Test Criteria (required)  Wireframes?  Design Comps?  Full functional specification?  API or interface specification?  Do other stakeholders need to be included in the requirement analysis, demos, reviews, etc.  AdOps  Ad Sales  Analytics  Publishing 26
  • 27. Development/Acceptance - very simplified… • Developers pick up User Stories that are “ready for development” (i.e. refined with acceptance criteria and estimate) as they have capacity. • Developer codes & unit tests components, then integrates and tests User Story end-to-end. • Developer frequently demos results to Product Manager before and after integration testing to get feedback. • QA tester picks up and verifies “integrated” stories against Acceptance Tests, then UAT by any external stakeholder (e.g. AdOps) is performed. • When all User Stories for MVP have been passed Acceptance Testing, and regression testing has been completed, the software is “ready for deployment”. • Software is deployed and verified in production by QA.
  • 28. Standard Daily Meetings • Daily Stand-up (All Teams: VAT, Central, Mobile, etc) – Daily check-in with team members – Mandatory for core team members: Product, Dev, QA, PM, Design/UX – Each team to pick a non-overlapping 15 minute slot between 9:30 and 11:30. PMs to coordinate • Daily Change Control – Every morning at 9:15-9:30 – PMs, Product Managers, Central tech reps. – Determine what do with new/timely issues – particularly from VATs. Cancel if no items for change control. 28
  • 29. Other Weekly or Ad-Hoc Meetings • Grooming Meetings (Each Team) – Product Manager/Owner collaboratively reviews Backlog, discuss and refine Stories, etc. with the team. Usually done in the context of a particular MVP/MVF – Story point estimates provided by team – Most, if not all, team members should participate as this is a critical information sharing session • Prioritization Meetings (Each Team) – Product Managers and Product Owners will meet on an as-needed basis to review priorities. – Program Manager will coordinate any portfolio prioritization meetings on an as- needed basis. • Retrospectives “Lessons learned” (Each Team) – Organized by PM after an iteration or every few weeks 29
  • 30. Theme, Epic, User Story Examples 30
  • 31. Recap: Themes, Epics and Stories • Theme or “tent-pole”: a top-level objective or vision. • Epic: a group of related Stories that describes a particular higher level capability or functionality, or more generally an epic is a high level story used as a placeholder. • Story: an Independent, Negotiable, Valuable, Estimatable, Small, Testable candidate requirement (“INVEST”). User stories are written from a user point of view. • Acceptance Test: Specific user scenarios, provided by Product Manager, that are used to determine when a user story has been correctly implemented. • Sub-Task: Stories will often be broken down into specific work sub-tasks. • MVP/MVF: Has just those user stories that allow the product/feature to achieve the desired business goal, and no more. Iterate and learn until a desirable product-market fit is obtained, or until the product is deemed to be non-viable. Note: this “user story” based process is very deliberately intended to minimize the use of big requirements documents and focus more on verbal conversation to achieve mutual understanding between customer/user representative and the developer. 31
  • 32. Example: Website Redesign Theme: Website Redesign 2011 • Relaunch XYZ website as a destination for men between age of 18-45, double audience in 18 months. Sample Epics: • New Blog oriented verticals for Adventure, Gear & Gadgets, Cars & Bikes • Producers can publish and feature News blog content • Visitors can easily navigate to featured videos, topics, sub-topics, ad sales packages, and Commerce promotions within a streamlined top navigation • Producers can feature new content within an updated Homepage design Sample “Homepage” Stories: • As a Producer I want to select the featured content so visitors can easily find curated content. • As a Visitor I want to view the Facebook like count and Twitter follower number so I can easy like or follow if I want to. • As AdOps user I want to be able serve Pushdown, Tile, and Entitlement ads on the homepage so we can monetize the content. • As a Visitor I want to see the most recent articles 32
  • 33. Example: MVP Homepage MVP 1. As a Producer I want to select the featured content so visitors can easily find curated content 2. As a Visitor I want to view the Facebook like count and Twitter follower number so I can easy like or follow if I want to. 3. As AdOps user I want to be able serve Pushdown, Tile, and Entitlement ads on the homepage so we can monetize the content. 4. Etc… Deferred – non-MVP 1. As a Visitor I want to see the most recent articles 2. As a Commerce Producer I want to promote a list featured products in the Right Rail in order for Visitors to see different kinds of products. 3. Etc… 33
  • 34. Example: Acceptance Test Criteria User Story: As a Producer I want to select the featured content so visitors can easily find curated content. Acceptance Test Criteria • Featured content consists of a minimum of 6 items and a maximum of 10 items. • Content in the featured stream can come from all articles and blog posts. • Producers control what appears in the featured stream and the position in which it appears. • Featured Content Displays [title], [image], [topic], [description], [read more link]. • [title], [image] and [read more link] link to the individual asset. • [topic] rules are as follows: 1. Display [topic] which the asset belongs to 2. IF [topic] is "Show News", THEN display show tag instead. (e.g. Mythbusters or Shark Week) 3. IF [topic] is not "Show News" and the asset has a Supertag, THEN display the Supertag instead. 4. [topic] links to topic page, showsite or tag listing page accordingly. 34
  • 36. Backlog vs. Work In Progress • Backlog – ___BCK-### – Backlog is upcoming work, may be some early discussions – Has not been fully prioritized/sequenced – The items to be worked on next should be more refined • Work In Progress – ___WIP-### – Prioritized – Meets “Ready For Development” criteria – In the hands of engineering • All teams have both types of queues
  • 37. JIRA Queues or “Projects” • Lessons learned – Jira only allows a certain level of granularity because of hierarchy restrictions in the software – We need the granularity to provide vertical specific reporting – We need the granularity to view backlog (new stuff) separately from work in progress • Separate queues provides better granularity
  • 38. Simplified Ticket Types • Backlog Ticket Types • Subtask Ticket Types – Theme/Epic – Design / Development – User Story – Documentation – Tech Story – Deployment / SysAdmin – Production Defect – QA Defect – Research/Prototype • Support Ticket Types • WIP Ticket Types – Production Support – User Story – Publishing Support – Tech Story – Production Support – Production Defect – Research/Prototype
  • 39. Customized Workflows Based on Ticket Type • New Jira feature for the team • Tickets follow a particular path and change status by clicking a “workflow button” • Software Limited choices – Simplifies moving ticket from one status to another • Business Criteria / Rules to change status – Clarifies what a particular status really means
  • 40.
  • 42. Eliminate Waste Look for policies, processes, or practices that take time, energy, and resources that do not add value and streamline, automate, or stop doing them. • Work in Progress • Extra Processes • Extra Documentation • Extra Features • Task Switching • Design Loop-backs • Significant support burden • Waiting • Hand-offs • Defects • Management Activities 42
  • 43. Technical Excellence Ability to respond to change and rapid delivery requires strong engineering practices • More testing, less debugging • Low-dependency architectures • Continuous integration • Evolutionary design and development • Refactoring • Good coding practices • Code reviews See wiki for more details: https://wiki.discovery.com:8443/display/DMS/Technical+Discipline+and+Tools 43
  • 44. Amplify Learning • “Fail Fast, Fail Cheap” • Use set based decision making to identify and evaluate several options. • Share requirements, designs, and code (demos) early and often. • Use feedback loops: demos, reviews, postmortems, metrics, prototypes, etc. • “Information Radiators” that are quick ways to get info to the team. • Relentless improvement: seeing and solving problems, sharing the knowledge. 44
  • 45. Defer Commitment • Leave options open and accommodate evolving requirements. • Let the solution emerge: do not wait to get all of the details worked out before starting design and development. • Define scope at a high level, the details are negotiable. • Do not waste time developing detailed requirements for work to be done in the future. • Multiple options of good+safe, better+risky, optimal+high-risk approach. • Delaying decisions until they need to be made reduces rework. 45
  • 46. Deliver as Fast as Possible • Deliver value early rather than wait longer for a “complete” product. • Short iterations with continuous delivery encourage a “Try-it, test-it, fix-it” approach instead of “Do it right the first time”. • Use the “pull-system” principle of Kanban and "Just in Time“ – no large batches that cause bottlenecks and delays. • Releases to Production in small increments when ready. • The goal is reliable and repeatable results, not a repeatable process. 46
  • 47. Build Trust and Empower the Team • Excellent, focused, disciplined, and empowered people are key to success. • Trust and respect between team members and between managers and employees is essential. • Find and grow professionals with purpose, passion, persistence, and pride. • Keep teams as small and focused as possible. • Build cross-functional teams that mixes domain expertise with technical expertise. • Ensure there is a clear and compelling purpose for the work. • Give the technical team access to the customers, users, and decision makers. • Let the team make its own commitments and be accountable for outcomes. • Analysts are not be a substitute for developer-customer communication but should facilitate understanding on both sides. 47
  • 48. Build Quality In • Quality must be built-in, not tested for after the fact. • Technical Excellence and solid engineering practices are mandatory for Agile development to be successful. • Quality means realization of purpose or fitness for use rather than conformance to requirements or a set plan. • There are two kinds of Quality:  Perceived or External Quality-- the beauty, elegance, and delight of the product to the end user.  Conceptual or Internal Quality-- the integrity of the product’s architecture as an integrated whole as it balances between flexibility, maintainability, efficiency, and responsiveness. • Model driven design – based on end user view of the system. This will help ensure that we "build the right thing". • Everyone is responsible for quality. The developer in particular has a very active role in ensuring quality - this must not be thought of as "QA's job". 48
  • 49. Systems-Thinking: “See the Whole” • Look at customer outcomes (increased audience and engagement for example) rather than internal measures such as productivity, features developed, or sticking to a plan. • Value output: quality of output is more important than quantity of output when measuring productivity of knowledge workers. Delivering fast without quality is wasteful. • Look for ways to bring predictability to value demand, by eliminating “failure demand” and filtering value demand in a more disciplined way to match up with capacity. • Instead of optimizing parts the system or organization to increase growth such as productivity, or speed, look for and remove what is a constraint to growth, productivity, or speed. • Beware of optimizing a part, such as ensuring high utilization, at the expense of the whole. Trying to maximize utilization invariably leads to delays and other adverse results. • Look for and fix root causes, rather than symptoms. 49