Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Developing UNCERTAIN Software


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Developing UNCERTAIN Software

  1. 1. Developing  UNCERTAIN  Software Alline Watkins October 2011
  2. 2. AGENDA <ul><li>      UNCERTAINTY </li></ul><ul><li>    LEAN CODE </li></ul><ul><li>UBIQUITOUS LANGUAGE </li></ul><ul><li>          LIVE SOURCE </li></ul>   
  3. 3. &quot;A startup is a human institution designed to deliver a new product or service under conditions of extreme uncertainty &quot;   How to apply the Lean Startup concepts  to the whole   software development process   ?
  4. 4. 80%   of the developed software is not being used by anyone .
  5. 6. The    Build   Measure    Learn  loop
  6. 7. <ul><li>Build </li></ul><ul><li>      Minimum amount of tasks in the Task Board </li></ul><ul><li>          (just enough to support the next conversation with the end users)  </li></ul><ul><li>Measure </li></ul><ul><li>      How the end users are using the software          (in a production environment) </li></ul><ul><li>Learn </li></ul><ul><li>      Stay open to the new directions revealed by end users           (avoid getting stuck to your Product Backlog) </li></ul>
  7. 10. <ul><li>&quot;Some mistakes will be made along the way. That’s good because at least some decisions are being made along the way. And we’ll find the mistakes and we’ll fix them.&quot; </li></ul><ul><li>Steve Jobs ,  WWDC 1997 </li></ul>&quot;You gotta start with the customer experience and works backward to the technology. You can’t start with the technology and try to figure out where you are going to sell it.&quot; 
  8. 11. The  Agile Development Poster revised for the  UNCERTAIN Software
  9. 12. The      Lean             Code 1. Ubiquitous Language 2. Isolated Minimum Viable Products 3. A tool to visualize the intent of the code
  10. 13. In a nutshell,  Lean Code  is a software project that is short , independent and extremely organized .  The Lean Code can be easily maintained and its intention promptly understood by any participant in the software development process, including non-programmers .  
  11. 14.   of the lifetime cost of a software involves maintenance 2   /   3
  12. 15. Ubiquitous  Language
  13. 16. Minimum Viable Product Just the necessary amount of  features that will make the users use   your software