developing uncertain software

16
Developing UNCERTAIN Software Alline Watkins October 2011

Upload: alline-oliveira

Post on 01-Dec-2014

997 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Developing UNCERTAIN Software

Developing UNCERTAIN 

Software

Alline WatkinsOctober 2011

Page 2: Developing UNCERTAIN Software

AGENDA

      UNCERTAINTY

   LEAN CODE

UBIQUITOUS LANGUAGE

         LIVE SOURCE

   http://goLiveSource.blogspot.com   

Page 3: Developing UNCERTAIN Software

"A startup is a human institution designed to

deliver a new product or service under conditions of extreme

uncertainty"StartupLessonsLearned.com

 How to apply the Lean Startup concepts 

to the whole software development pr

ocess

 ?

Page 4: Developing UNCERTAIN Software

80% 

of the developed software is not being

used by anyone.

Page 5: Developing UNCERTAIN Software
Page 6: Developing UNCERTAIN Software

The  

Build  Measure   

Learn loop

theLeanStartup.com

Page 7: Developing UNCERTAIN Software

Build     Minimum amount of tasks in the Task Board          (just enough to support the next conversation with the end users) 

Measure     How the end users are using the software        (in a production environment)

Learn     Stay open to the new directions revealed by end users           (avoid getting stuck to your Product Backlog)

Page 8: Developing UNCERTAIN Software
Page 9: Developing UNCERTAIN Software
Page 10: Developing UNCERTAIN Software

"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."

Steve Jobs,  WWDC 1997

"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." 

Page 11: Developing UNCERTAIN Software

The AgileDevelopmentPoster

revised for

the UNCERTAINSoftware

Page 12: Developing UNCERTAIN Software

The     Lean 

         Code1. Ubiquitous Language

2. Isolated Minimum Viable Products

3. A tool to visualize the intent of the code

Page 13: Developing UNCERTAIN Software

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.

 

Page 14: Developing UNCERTAIN Software

 of the lifetime cost of a software involves

maintenance

2 / 3

Page 15: Developing UNCERTAIN Software

Ubiquitous 

Language

http://slideshare.net/allineoliveira/ubiquitous-language

Page 16: Developing UNCERTAIN Software

Minimum Viable Product

Just the necessary amount of 

features that will make the users use your software