Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Lean Features Development

Lean Features Development

Many teams in almost every company implement awesome features. They implement them to provide the best quality, to cover all the known possible scenarios and to enter into the market - and they believe they're going to work perfectly. The users will love it... right?

But the truth is, in most cases, things don't work as expected. Users do unpredictable things and the company could potentially waste a lot of time and resources on a feature that doesn't work.

I'll be telling you about some approaches and techniques that will help you to avoid these scenarios - and save some money in the process!

Alexis Santos Pérez

April 11, 2018
Tweet

More Decks by Alexis Santos Pérez

Other Decks in Programming

Transcript

  1. How many times a developer has to implement a feature

    that will be the next game changer?
  2. From developer point of view • Move fast • Unit

    tests • Automatic tests • Technical debts tasks • Release
  3. • Also called MVP • Only includes core part of

    the feature and no more Minimum Viable Product
  4. • Also called MVP • Only includes core part of

    the feature and no more • Allows to verify correct or wrong assumptions Minimum Viable Product
  5. • Also called MVP • Only includes core part of

    the feature and no more • Allows to verify correct or wrong assumptions • Accelerate learning Minimum Viable Product
  6. • Also called MVP • Only includes core part of

    the feature and no more • Allows to verify correct or wrong assumptions • Accelerate learning • Is often less expensive to implement an MVP Minimum Viable Product
  7. Is the smallest thing you can build that delivers customer

    value (and as a bonus captures some of that value back) Minimum Viable Product
  8. Of course, you can’t measure if you don’t have a

    tool or SDK to report statistics In-House Solution
  9. Split tests • Also known as A/B/C/… tests • Different

    versions of the feature with identical purpose introducing variants between them
  10. Split tests • Also known as A/B/C/… tests • Different

    versions of the feature with identical purpose introducing variants between them • Control the amount of users on every version
  11. Split tests • Also known as A/B/C/… tests • Different

    versions of the feature with identical purpose introducing variants between them • Control the amount of users on every version • Test different hypothesis to detect the most effective
  12. Discard the feature Is possible that the feature didn’t work

    well, in that case is time to think in removing it because is could be distracting the user
  13. Tune the feature Use all the measurements, validate the results

    and tune the feature. Add possible modifications, improvements, polish UI, ...
  14. Don’t forget the technical debt • Maybe some technical debt

    was created during the implementation of the MVP
  15. Don’t forget the technical debt • Maybe some technical debt

    was created during the implementation of the MVP • Do some extra clean up if possible
  16. Don’t forget the technical debt • Maybe some technical debt

    was created during the implementation of the MVP • Do some extra clean up if possible • Split tests non-winner variants code to be removed
  17. Summarize • Build ▪ MVP, start learning process • Measure

    ▪ Split tests, remote feature flags • Learn ▪ Discard or persevere ▪ Tech debt and clean up pending tasks