Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Feature InjectionLean Business AnalysisAntony Marcano & Andy Palmer
@AntonyMarcanohttp://antonymarcano.com@AndyPalmerhttp://andypalmer.com
Credit where credit is due@PapaChrisMattshttp://decision-coach.com
Feature injection - Antony Marcano & Andy Palmer
Lean Business AnalysisSo, what is it?
What is Business AnalysisUnderstanding the business value soughtUnderstanding the problem domainExploring the roles, incentives and required product capabilities that solve the problemsFacilitating growth of that understanding among others
Feature injection - Antony Marcano & Andy Palmer
What is Lean Business AnalysisAccepting that we can’t have 20/20 foresightEvolve everyone’s understanding of the value & problem as the team evolves the solutionWorking in small product incrementsRemaining fully engaged on a project through to delivery – why?
Feature InjectionFeature Injection helps us incrementally and Iteratively:Discover the real business valueExplore the problem domainExplore the roles, incentives and required product capabilitiesEvolve’s everyone’s understanding of the problem as the solution also evolves
Facilitate Growth in understandingUnderstandthe valueUnderstand the problemExploreASolutionLearn
Collaboration & ConversationBusiness ValueThe Problem(often communicated as a solution)Business ValueBusiness ValueUnderstand the Business ValueA solutionUnderstand the Problem(s)Example Driven ModellingExample Driven ModellingExample Driven ModellingFeatureFeatureFeatureFeature
How?
Understand the valueBusiness ValueThe Problem(often communicated as a solution)Understand the Business 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 ValueIncrease<thing of value>Reduce<subtractor from value>Protect<thing of value>?
A Useful Technique5 WhysPopping the “why” stack
Understanding the problemBusiness ValueExample Driven ModellingExample Driven ModellingFeatureFeature
KnownsKnown unknownsKnown knownsUnknownsKnownsUnknown unknownsUnknown knownsUnknowns
Modelling
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-ifExampleDiscussing the resulting evolution to the model may     then inspire more examplesReflect – in scope?EvolvingModelElaborated Example(Test)FeatureGroup of cohesive examples
Exploring the solutionsBusiness ValueFeatureFeature
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 examplesExplains the role, capability and incentiveAs <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 forsome stimulae>Should <achieve some outcome forsome stimulae>Should <achieve some outcome forsome stimulae>Should <achieve some outcome forsome stimulae>Examples
ExamplePrintCo – a Printer ManufacturerWe need mandatory registration on our website
Why? Because we need more e-mail addressesWhy? Because we want to e-mail more customersWhy? Because 3% of them buy consumables and this will increase our consumable sales figuresSo ,we will increase revenue by increasing our mailing list
Role: 			PrintCo CustomersBehaviour:	Give us their e-mail addressesIncentive:	Get special deals on consumablesPrinter Driver & Management Software Update?Reminder e-mail page?
Discuss Examplesantony+somecomment@riverglide.comandy@riverglide.comnobody@example.comsome.body@to.
Increase PrintCo Consumable SalesAs PrintCo CustomerI want to be asked for my e-mail address via the websiteSo that I can get monthly e-mails with special deals on consumablesAs a PrintCo CustomerI want to be e-mailed with deals specific to my printerSo that I don’t have to wade through irrelevant infoShould capture valid email address:name[+comment]@somwhere.comShould reject black-hole addresses: *@example.comShould contain Single ownership consumable dealsShould contain multiple ownership consumable dealsExamples
Resourceshttp://www.agilejournal.com/articles/columns/column-articles/1472-feature-injection/1684-feature-injection-part-2/1643-feature-injection-part-3/1918-feature-injection-part-4http://www.testingreflections.com/node/view/8556
Discussion
Twitter:@AntonyMarcano @AndyPalmer@RiverGlideE-mail: talktous@riverglide.com

More Related Content

Feature injection - Antony Marcano & Andy Palmer

Editor's Notes

  1. Antony Marcano &amp; Andy PalmerExperienced Agile Developers &amp; Coaches for hireCreated http://pairwith.usCreated Narrative Fixture
  2. Let’s get a discussion going here.
  3. 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 &amp; 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
  4. Understanding the business value soughtUnderstanding the problem domainExploring the roles, incentives and required product capabilities that solve the problemsSharing that understanding with others
  5. In non commercial settingsIncrease &lt;something of value&gt;Reduce &lt;some inhibitor or subtractor&gt;Protect &lt;something of value&gt;
  6. 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.
  7. 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 -&gt; ku Questions that identifywho to ask? Answers: Move pieces ku -&gt; kk And pieces from uk-&gt;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
  8. We naturally model things in our mind. It’s useful to have a way of sharing that with others so that they can challenge our understanding…We want to share that model in a way that makes it easy for anyone to change.
  9. 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
  10. 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
  11. 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
  12. Chris, you want an e-mail address there?