• Save
Feature injection riverglide
Upcoming SlideShare
Loading in...5
×
 

Feature injection riverglide

on

  • 1,066 views

 

Statistics

Views

Total Views
1,066
Views on SlideShare
1,066
Embed Views
0

Actions

Likes
1
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Antony Marcano & Andy PalmerExperienced Agile Developers & Coaches for hireCreated http://pairwith.usCreated Narrative Fixture
  • Traditionally…Expected to somehow see into the future… expectation of 20/20 foresightApplied to all/most/much of the problem before technical teams start implementationEmphasis on models & artifactsBA moved to a new project once implementation startsBalancing new project demands with old project queriesNot enough time to keep documentation up to date for the previous projectNo opportunity to learn while doing
  • Understanding the business value soughtUnderstanding the problem domainExploring the roles, incentives and required product capabilities that solve the problemsSharing that understanding with others
  • In non commercial settingsIncrease Reduce Protect
  • The 5th Why is the one that Increases Revenue, Protects Revenue or Reduces Cost.Perhaps better to think of it as ‘popping the “why” stack’ because it’s not always 5 whys.
  • Solutions are an example of something coming from the bottom right…Knowledge falls into one of these categories: Unknown unknowns - the things we don’t know that we don’t know Unknown Knowns – the things that is ‘common sense’ to one but not another Known unknowns – the things we know we don’t know Known Knowns – the things we’re confident in knowingThe knowledge the business analyst starts with is often to the left, some unknown unkowns and some known unknownsImagine a simple board game, where there are: An infinite number of pieces on the bottom left quadrant A finite and known number of pieces in the top leftAn infinite number pieces in the bottom right.The game has two types of move: Questions that identify the right questions to ask? Answers move pieces from uu -> ku Questions that identifywho to ask? Answers: Move pieces ku -> kk And pieces from uk->kkDuplicate pieces exist where there is an unknown-known with a matching pieces in other ‘unknown’ groupsPieces that move to the top right can be ‘played’ – i.e. used to drive a solutionSome pieces can only be played togetherOthers can only be played as a cluster
  • As these things solidify, we can pull “business value increments” or “minimal marketable features” or “customer-valued work-items” into a structure that makes it easy to incrementally deliver these in our product
  • As these things solidify, we can pull “business value increments” or “minimal marketable features” or “customer-valued work-items” into a structure that makes it easy to incrementally deliver these in our product
  • From the examples, we infer the rules.We arrive at a coherent set of examples for capturing e-mail… and realise that’s a story.We arrive at some more for sending the reminders
  • Chris, you want an e-mail address there?

Feature injection riverglide Feature injection riverglide Presentation Transcript

  • Feature Injection
    Lean Business Analysis
    Antony Marcano & Andy Palmer
  • @AntonyMarcano
    http://antonymarcano.com
    @AndyPalmer
    http://andypalmer.com
  • Credit where credit is due
    @PapaChrisMatts
    http://decision-coach.com
  • What is Business Analysis
    Understanding the business value sought
    Understanding the problem domain
    Exploring the roles, incentives and required product capabilities that solve the problems
    Facilitating growth of that understanding among others
  • What is Lean Business Analysis
    Accepting that we can’t have 20/20 foresight
    Evolve everyone’s understanding of the value & problem as the team evolves the solution
    Working in small product increments
    Remaining fully engaged on a project through to delivery – why?
  • Feature Injection
    Feature Injection helps us incrementally and Iteratively:
    Discover the real business value
    Explore the problem domain
    Explore the roles, incentives and required product capabilities
    Evolve’s everyone’s understanding of the problem as the solution also evolves
  • Feature Injection Overview
    Facilitate Growth
    in understanding
    Understand
    the value
    Understand the problem
    Explore
    A
    Solution
    Learn
  • Feature Injection in Practice
    Collaboration & Conversation
    Business Value
    The Problem
    (often communicated as a solution)
    Business Value
    Business Value
    Understand the Business Value
    A solution
    Understand the Problem(s)
    Example Driven Modelling
    Example Driven Modelling
    Example Driven Modelling
    Feature
    Feature
    Feature
    Feature
  • How?
  • Business Value
    The Problem
    (often communicated as a solution)
    Understand the Business Value
    Understand the value
  • “Users ultimately dictate solutions to us, as a delta from the previous set of solutions we’ve delivered them. That’s just human psychology
    – writer’s block when looking at a blank page, as compared to the ease with which we provide ‘constructive criticism’ on somebody else’s work.” – Udi Dahan
  • Business Value
    Increase
    <thing of value>
    Reduce
    <subtractor from value>
    Protect
    <thing of value>
    ?
  • A Useful Technique
    5 Whys
    Popping the “why” stack
  • Business Value
    Example Driven Modelling
    Example Driven Modelling
    Feature
    Feature
    Understanding the problem
  • Knowns
    Known unknowns
    Known knowns
    Unknowns
    Knowns
    Unknown unknowns
    Unknown knowns
    Unknowns
  • http://www.agilejournal.com/articles/columns/column-articles/1918-feature-injection-part-4
  • http://www.agilejournal.com/articles/columns/column-articles/1918-feature-injection-part-4
  • Aim to understand…
    That which helps achieve the business value:
    Who will use the product? (roles)
    What do we need them to do? (behaviours)
    Why would they want to do it? (incentives)
    How are user behaviours exhibited? (examples)
    As these things solidify, we can pull “business value increments”
    into a structure that makes it easy
    to incrementally deliver these in our product
  • What-if
    Example
    Discussing the resulting evolution to the model may
    then inspire more examples
    Reflect – in scope?
    Evolving
    Model
    Elaborated Example
    (Test)
    Feature
    Group of cohesive examples
  • Business Value
    Feature
    Feature
    Exploring the solutions
  • We now have an understanding of…
    Value: What is our motivation?
    Roles: Who will use our product?
    Behaviour: What do we need them to do?
    Incentives: Why would they want to do it?
    Examples: How are user behaviours exhibited?
  • <some business value sought>
    <some solution increment>
    <some role>
    <some product capability>
    <some benefit to the role>
    <some solution increment>
    <some role>
    <some product capability>
    <some benefit to the role>
  • User Stories
    Grouping of cohesive examples
    Explains the role, capability and incentive
    As <some role>
    I want <some capability>
    So that <some benefit to the role>
    XP Day 2001 session “Tuning XP” - Rachel Davies and Tim McKinnon
  • <Value sought>
    As <some role>
    I want <some capability>
    So that <some benefit to the role>
    As <some role>
    I want <some capability>
    So that <some benefit to the role>
    Should <achieve some
    outcome for
    some stimulae>
    Should <achieve some
    outcome for
    some stimulae>
    Should <achieve some
    outcome for
    some stimulae>
    Should <achieve some
    outcome for
    some stimulae>
    Examples
  • Example
    PrintCo – a Printer Manufacturer
    We need mandatory registration on our website
  • Why? Because we need more e-mail addresses
    Why? Because we want to e-mail more customers
    Why? Because 3% of them buy consumables and this will increase our consumable sales figures
    So ,we will increase revenue by increasing our mailing list
  • Role: PrintCo Customers
    Behaviour: Give us their e-mail addresses
    Incentive: Get special deals on consumables
    Printer Driver & Management Software Update?
    Reminder e-mail page?
  • Discuss Examples
    antony+somecomment@riverglide.com
    andy@riverglide.com
    nobody@example.com
    some.body@to.
  • Increase PrintCo Consumable Sales
    As PrintCo Customer
    I want to be asked for my e-mail address via the website
    So that I can get monthly e-mails with special deals on consumables
    As a PrintCo Customer
    I want to be e-mailed with deals specific to my printer
    So that I don’t have to wade
    through irrelevant info
    Should capture valid email address:
    name[+comment]@somwhere.com
    Should reject
    black-hole addresses: *@example.com
    Should contain
    Single ownership consumable deals
    Should contain multiple ownership consumable deals
    Examples
  • Feature Injection in Practice
    Collaboration & Conversation
    Business Value
    The Problem
    (often communicated as a solution)
    Business Value
    Business Value
    Understand the Business Value
    A solution
    Understand the Problem(s)
    Example Driven Modelling
    Example Driven Modelling
    Example Driven Modelling
    Feature
    Feature
    Feature
    Feature
  • Resources
    http://www.agilejournal.com/articles/columns/column-articles
    /1472-feature-injection
    /1684-feature-injection-part-2
    /1643-feature-injection-part-3
    /1918-feature-injection-part-4
    http://www.testingreflections.com/node/view/8556
  • Discussion
  • Twitter:
    @AntonyMarcano @AndyPalmer
    @RiverGlide
    E-mail:
    talktous@riverglide.com