SlideShare a Scribd company logo
From Lust to Dust:  A Product’s Life Cycle  And the Roles that Make it All Worth It Jorge Boria
Our Purpose Tonight Answer the questions: What is Quality? How can quality be achieved? Is there more than development and maintenance?  Does it matter who does what?
Agenda Attempting to Define Quality The product life cycle  Defining Roles
Define Quality
Quality is… Different things to different people that’s what quality is! Quality is Subjective
Subjectivity in Quality Quality is not an attribute of a product it is an attribute of the relationship between a product and the person that perceives that quality it can be good or bad it can be measured for a set of people a population segment under certain hypothesis of uniformity of criteria if quality would be objective there would be no competing products
Quality is… Different things at different times that’s what quality is! Quality evolves with time
Evolution of Quality For a new product, ‘quality’ might be novelty As the product ages, ‘quality’ turns into availability and dependability Even later in the product’s life, support can be ‘quality’
The Underlying Premise The quality of a product is preeminently influenced by the quality of the processes used to develop, acquire, and maintain it. you should already have the best available you should already have the best available PROCESS PEOPLE TECHNOLOGY
How to Produce From the previous: there should be no one-size fits all process processes should take into consideration the stage of development focus on processes to drive innovation are expensive and counterproductive in the late stages of a project too much focus on engineering and documentation can stifle creativity in the initial steps
Agenda Attempting to Define Quality The product life cycle   Defining Roles
Products Have Life Cycles, Too We can compare software products to human beings
1: Pre-conceptual Stage  Influences are already in place External conditions technology market needs Internal conditions  skills  cultural drives  personal competencies of individuals, managers and line personnel
2: Research and Development Light in product requirements Large in customer needs Exploratory Time bounded Agility is preferred over sound engineering ‘good enough’, proof of concept, prototype
3: Initial Engineering Performed through a project Preferred firm product requirements Guided process Quality goals, time constrained Sound engineering is preferred over agility, still… Everyone expects the newcomer, no one is sure what it will look like, many expectations surround it, and it almost sure that it is going to keep us sleepless for many weeks after it arrives!
A New Product is Born!
Change Adoption And Time Time Early Adopters 13.5% Early Majority 34% Late Majority 34% Laggards 16% Innovators 2.5% The  Chasm
4: Deployment Stage  What is produced not always what is needed what they say, what they want, what they need; the requirements guessing game The product does not stand on its own Babbles when it wants to speak Has to be cleaned every few hours  Expect Visionaries to Adopt
5: Early Adoption Stage The  inception  stage,  many things go wrong but are overlooked  they will be soon solved  Versions act up destroy your expectations need urgent corrective measures.  Inception is a lot like adolescence.
6: Institutionalization  Users learn to trust it it is  institutionalized  into common use it has achieved maturity and reliability most changes are enhancements  not difficult to implement  adjustments to environmental changes
7 Decay The product ages  Many changes over long periods  New technological developments  The product is  progressively less reliable harder and harder to maintain cannot be adjusted to the new technology people tend to work around it, instead of through it
A Pictorial View of The Life Cycle tentative use  inception  institutionalization  decay childhood adolescence  maturity  old age CUSTOMER NEEDS     CHANGE REQUESTS birth PROJECT ENGINEERING engineering of version 1.0 deployment  new release new release new release new release  new product quick fixes controlled  changes INSTALLATION AND SUPPORT RESEARCH conception product TIME engineering of version 1.5 engineering of version 2.0 engineering of version 2.1 engineering of version n.57 engineering of version 1.0 of new product …
Development The process of producing new features for a product. it could be considered an addition to an existing product in iterative development, it is the way of the land
Maintenance The application to an existing product of  Additions   extensions to the product.  Fixes   changes done to the product to eliminate its defects.  Adjustments   changes done to the product to accommodate external changes Migrations   induced by changes in the underlying technology platform.
Support and Maintenance Good practice: during support only do (quick) fixes  create engineering projects for  additions,  adjustments,  large clusters of fixes,  migrations,  Treat these activities as part of the normal development cycle for new versions.
Development and Maintenance From the above, development and maintenance do not define whether you are in Engineering or Support.  you could conceivably do either in both CUSTOMER NEEDS     CHANGE REQUESTS PROJECT ENGINEERING quick fixes controlled  changes INSTALLATION AND SUPPORT
Controlled Changes If a customer requests a change, it can be rejected be postponed  be introduced immediately as a quick fix be added to the next release as a feature be introduced immediately AND added to the next release as a feature the team has to carefully merge changes in the current version with their work
Question to the Audience Does it matter who does what?
Agenda Attempting to Define Quality The product life cycle  Defining Roles
Roles in Engineering and Support Research and Exploration focus on innovation Engineering focus on quality and costs Quick Fixes immediate response
Comparing Roles Customer Loyalty Product Version Set of Inspirational Ideas, Prototype Outcome Patch’n’go Sequential or Spiral Evolutionary, Iterative Working Paradigm Variable Fixed Sunken Costs Very Lax Strict Lax Control  Reaction Time Discipline Individual exploration Ruling Principles Problem Patcher (on-the-fly fixes) Problem Solver (applied creativity) Creative (a solution in search of a problem) Personnel Characteristics Customer Satisfaction Quality and Personal Pride Spontaneity and Inspiration Guiding Force IMPLEMENTATION AND SUPPORT ENGINEERING RESEARCH AND EXPLORATION FEATURE ROLE
Kano’s Model of Customer Satisfaction Satisfied Customer Unsatisfied Customer Satisfied  Requirement Unsatisfied  Requirement Obligatory requirements implicit self evident not expressed obvious  Linear  Requirements expressed specific measurable technical Attractive requirements not expressed tailored to the customer cause delight cost of entry commodity differentiators
Without Creativity (R&E) Your product is not valuable Your cost of entry is very high You are stuck with faster – cheaper – better You better have LOTS of quality
Without Engineering Your product will have many defects Your support costs will go up these are variable costs! they depend on the number of customers,  not just the defects Your competitiveness will erode quickly You will probably stumble with the chasm
Final Conclusion If you want to control maintenance and support costs,  the only variable costs in all three modes Focus on the engineering role:  focus on quality increments fixed costs  lowers variable costs of the support role Counter intuitively, focusing on quality will raise productivity,  it eliminates costly re­work.
Bad Software Engineering Focus on  Delivery Date Low Quality Rework Late Delivery Vicious Cycle ©2007-2009 . worse practices bad practices defects
Good Software Engineering Focus on Quality Good Quality Little Rework Timely Delivery Virtuous Cycle ©2007-2009 . best practices good products better practices
Any Questions? thank you for your time [email_address] www.liveware.com

More Related Content

Product Lifecycles

  • 1. From Lust to Dust: A Product’s Life Cycle And the Roles that Make it All Worth It Jorge Boria
  • 2. Our Purpose Tonight Answer the questions: What is Quality? How can quality be achieved? Is there more than development and maintenance? Does it matter who does what?
  • 3. Agenda Attempting to Define Quality The product life cycle Defining Roles
  • 5. Quality is… Different things to different people that’s what quality is! Quality is Subjective
  • 6. Subjectivity in Quality Quality is not an attribute of a product it is an attribute of the relationship between a product and the person that perceives that quality it can be good or bad it can be measured for a set of people a population segment under certain hypothesis of uniformity of criteria if quality would be objective there would be no competing products
  • 7. Quality is… Different things at different times that’s what quality is! Quality evolves with time
  • 8. Evolution of Quality For a new product, ‘quality’ might be novelty As the product ages, ‘quality’ turns into availability and dependability Even later in the product’s life, support can be ‘quality’
  • 9. The Underlying Premise The quality of a product is preeminently influenced by the quality of the processes used to develop, acquire, and maintain it. you should already have the best available you should already have the best available PROCESS PEOPLE TECHNOLOGY
  • 10. How to Produce From the previous: there should be no one-size fits all process processes should take into consideration the stage of development focus on processes to drive innovation are expensive and counterproductive in the late stages of a project too much focus on engineering and documentation can stifle creativity in the initial steps
  • 11. Agenda Attempting to Define Quality The product life cycle Defining Roles
  • 12. Products Have Life Cycles, Too We can compare software products to human beings
  • 13. 1: Pre-conceptual Stage Influences are already in place External conditions technology market needs Internal conditions skills cultural drives personal competencies of individuals, managers and line personnel
  • 14. 2: Research and Development Light in product requirements Large in customer needs Exploratory Time bounded Agility is preferred over sound engineering ‘good enough’, proof of concept, prototype
  • 15. 3: Initial Engineering Performed through a project Preferred firm product requirements Guided process Quality goals, time constrained Sound engineering is preferred over agility, still… Everyone expects the newcomer, no one is sure what it will look like, many expectations surround it, and it almost sure that it is going to keep us sleepless for many weeks after it arrives!
  • 16. A New Product is Born!
  • 17. Change Adoption And Time Time Early Adopters 13.5% Early Majority 34% Late Majority 34% Laggards 16% Innovators 2.5% The Chasm
  • 18. 4: Deployment Stage What is produced not always what is needed what they say, what they want, what they need; the requirements guessing game The product does not stand on its own Babbles when it wants to speak Has to be cleaned every few hours Expect Visionaries to Adopt
  • 19. 5: Early Adoption Stage The inception stage, many things go wrong but are overlooked they will be soon solved Versions act up destroy your expectations need urgent corrective measures. Inception is a lot like adolescence.
  • 20. 6: Institutionalization Users learn to trust it it is institutionalized into common use it has achieved maturity and reliability most changes are enhancements not difficult to implement adjustments to environmental changes
  • 21. 7 Decay The product ages Many changes over long periods New technological developments The product is progressively less reliable harder and harder to maintain cannot be adjusted to the new technology people tend to work around it, instead of through it
  • 22. A Pictorial View of The Life Cycle tentative use inception institutionalization decay childhood adolescence maturity old age CUSTOMER NEEDS  CHANGE REQUESTS birth PROJECT ENGINEERING engineering of version 1.0 deployment new release new release new release new release new product quick fixes controlled changes INSTALLATION AND SUPPORT RESEARCH conception product TIME engineering of version 1.5 engineering of version 2.0 engineering of version 2.1 engineering of version n.57 engineering of version 1.0 of new product …
  • 23. Development The process of producing new features for a product. it could be considered an addition to an existing product in iterative development, it is the way of the land
  • 24. Maintenance The application to an existing product of Additions extensions to the product. Fixes changes done to the product to eliminate its defects. Adjustments changes done to the product to accommodate external changes Migrations induced by changes in the underlying technology platform.
  • 25. Support and Maintenance Good practice: during support only do (quick) fixes create engineering projects for additions, adjustments, large clusters of fixes, migrations, Treat these activities as part of the normal development cycle for new versions.
  • 26. Development and Maintenance From the above, development and maintenance do not define whether you are in Engineering or Support. you could conceivably do either in both CUSTOMER NEEDS  CHANGE REQUESTS PROJECT ENGINEERING quick fixes controlled changes INSTALLATION AND SUPPORT
  • 27. Controlled Changes If a customer requests a change, it can be rejected be postponed be introduced immediately as a quick fix be added to the next release as a feature be introduced immediately AND added to the next release as a feature the team has to carefully merge changes in the current version with their work
  • 28. Question to the Audience Does it matter who does what?
  • 29. Agenda Attempting to Define Quality The product life cycle Defining Roles
  • 30. Roles in Engineering and Support Research and Exploration focus on innovation Engineering focus on quality and costs Quick Fixes immediate response
  • 31. Comparing Roles Customer Loyalty Product Version Set of Inspirational Ideas, Prototype Outcome Patch’n’go Sequential or Spiral Evolutionary, Iterative Working Paradigm Variable Fixed Sunken Costs Very Lax Strict Lax Control Reaction Time Discipline Individual exploration Ruling Principles Problem Patcher (on-the-fly fixes) Problem Solver (applied creativity) Creative (a solution in search of a problem) Personnel Characteristics Customer Satisfaction Quality and Personal Pride Spontaneity and Inspiration Guiding Force IMPLEMENTATION AND SUPPORT ENGINEERING RESEARCH AND EXPLORATION FEATURE ROLE
  • 32. Kano’s Model of Customer Satisfaction Satisfied Customer Unsatisfied Customer Satisfied Requirement Unsatisfied Requirement Obligatory requirements implicit self evident not expressed obvious Linear Requirements expressed specific measurable technical Attractive requirements not expressed tailored to the customer cause delight cost of entry commodity differentiators
  • 33. Without Creativity (R&E) Your product is not valuable Your cost of entry is very high You are stuck with faster – cheaper – better You better have LOTS of quality
  • 34. Without Engineering Your product will have many defects Your support costs will go up these are variable costs! they depend on the number of customers, not just the defects Your competitiveness will erode quickly You will probably stumble with the chasm
  • 35. Final Conclusion If you want to control maintenance and support costs, the only variable costs in all three modes Focus on the engineering role: focus on quality increments fixed costs lowers variable costs of the support role Counter intuitively, focusing on quality will raise productivity, it eliminates costly re­work.
  • 36. Bad Software Engineering Focus on Delivery Date Low Quality Rework Late Delivery Vicious Cycle ©2007-2009 . worse practices bad practices defects
  • 37. Good Software Engineering Focus on Quality Good Quality Little Rework Timely Delivery Virtuous Cycle ©2007-2009 . best practices good products better practices
  • 38. Any Questions? thank you for your time [email_address] www.liveware.com

Editor's Notes

  1. This model, used by many, and discussed recently by Geoffrey Moore, shows an adoption curve that is a member of the “normal curve family.” The early and late majority generally fall within one standard deviation of the mean, with early adopters and laggards at two standard deviations, and a population of innovators at about 3 standard deviations. Appealing to different groups requires different tactics and timing. Innovators – ready to try anything; use them for concept exploration Early adopters –tolerant of change and revisions; use them for pilots and champions Early majority – practical people; want to see evidence this is useful; get them the results of the pilots and management support Late majority – they want to wait until the change is an established standard, management push and rewards may be necessary Laggards – want nothing to do with the new approach; will avoid as long as they can; don’t focus here The chasms shown here is one of two pointed out by Moore. There is also a smaller chasm between the early and late majority, reflecting the different approach to these two groups. However, the one between early adopters and early majority is more significant – those to the left are able to handle revolutionary change, while those to the right need evolutionary change.
  2. Role 1: Research and Exploration Ideas that end up in a product are often initially created by a group that is guided by spon­tane­ity and inspiration [Olso93]. This group works best following an evolutionary model, that is, building bits and pieces and tying them together into a less than completely coherent work product, often called a “proof of concept.” The emphasis of such a group lies in innova­tion. Exploration (of new technologies and ways to apply it) and redoing are encouraged. Control is lax, although these groups usually work un­der a fixed budget. Whatever they turn out is usually well received. The goals are set in long term visions. The costs incurred in research are sunken costs to the company, that is, they are incurred without immediate accountability. Role 2: Engineering The economic viability of a software product lies in its quality and in its develop­ment costs. If quality is low, the product is not viable (see role 3 for an explanation.) If the development costs are too high, there might not be enough market to compensate these costs. When people work in this role they should be less concerned about innovation and more about quality. This role is best managed through a well defined process model, in which a requirements-gathering phase precedes the design phase, that in turn precedes the imple­mentation phase. (Although this so-called “waterfall model” is strictly se­quential, it is seldom the case that the developers “run” the activities in such clear-cut or­der. They usually go back and forth from requirements to design. They might even move forward to im­plement a little, then back to gathering requirements. However, the nature of each activity and where each belongs in a documentation scheme should be kept clear at all times.) Exploration is dis­couraged and rework is considered a necessary evil. Control is strict, and budgetary con­straints are strongly tied to project man­agement. Goals are now midterm, counted in the order of months, not years. The costs of activities performed in this role are fixed, but not sunken. A product is ex­pected as an outcome, and the costs of the product are indirectly (as we shall see when we look at Role 3) dependent on the ex­penses of the phase. Role 3: Quick Fixes Under this role, only urgent patches are tackled. Larger fixes and enhancements are then rewoven into the fabric of the product through newer versions developed in an iteration of role 2 (version n, n>1.0). In role 3, the process changes to “fix and ship,” the emphasis at this time residing in immediate response. Exploration and redoing are now punished, because otherwise control is even less attainable. The lack of control tied to this role is linked to the fact that the costs for the role are a function of the quality of the product. Products with poor quality are harder to maintain and enhance, incrementing the costs of repair. This is truly bad, since now these costs are variable costs, a function of both the number of problems found during operation and the number of corresponding calls received.