Agile product development

Agile product development

Quality is expensive…. it requires planning, it requires testing and it requires detailed development…

If we buy something which will cost us money, we expect an appropriate amount of quality of this “product”… the amount of quality we expect depends on the price of the product and also on other circumstance… like the brand of the manufacturer… so for example if we buy something from apple our expectations for that “product” are quiet high. Because the “product” is normally expensive, and the brand “Apple” is also known as a “good quality brand”… on the other hand, if we buy something from a “cheap Noname manufacturer” from Japan or Taiwan, our expectations of the quality of this product a much lower then on the other example…

But why are these “products” from these big manufacturers so good?

Because they invested a lot of money into the development of these “products” and they also invested into testing these products before releasing these “products” to the market…

During the last few years companies noticed that these “detail development” costs are quiet expensive, so a lot of companies simply skipped these expensive detail development costs.

My personal opinion is that these companies adopted the programmer’s guideline:

  1. make it work. (create basic functionality)
  2. make it better (improve the functionalities… add additional functionalities)

a small example: like, creating a Package as a product from the scratch…

The version 1 is a simple package… nothing more, nothing less… (you are able to put stuff in there, and you are able to carry the package from “a” to “b”.
In version 2 we add wheels to the package, with wheels; it is easier to get the package from “A” to “B” (since we can simply push the package and we don’t need to carry it anymore).
In version 3 we attach handles to the left and right side, because customers experienced problems carrying this package upstairs…

Version 1               Version 2:            Version 3:

package

Well… it is much smarter to at first develop a “product” which has all of the basic functionalities (version 1.0) and then release it immediately to the market instead of investing a huge amount of time and money to release a “product” to the market which contains all of the basic functionalities and some more advanced functionalities (version 2.0 or even 3.0)… because maybe the development of this “advanced version” of this “product” will simply take to long, during this long time period a competitor could already release a almost same “product”, so in the end, the manufacturer invested a huge amount of effort and money into a “product” but is not able to sell it to customers…

You can compare this to a project, where you were hired to build a tower… it doesn’t make any sense to think about the colour and the shape of the flag which will be attached to the top end of this tower… as long, as the tower is not build… or the fundament of this tower is not designed properly. J

So, if the manufacturer has a good and close cooperation with his customers, he will be able to add more and more useful features and improve his product to the specific needs of his customers… which will lead into a “win + win” Situation (the customer gets exactly what he needs, and the manufacturer can improve his products)

The advantage of this method is, that these “products” will not be developed with unnessecary features…

The disadvantage is, that without this close cooperation and proactive communication with the customers, the customer will never get the necessary improvements for his “product”. So the customer will get never be really “happy” with this “product”. The customer could get into a bad mood, because the manufacturer uses him for testing and developing his “products”

Basically this is nothing more than the deming circle:

deming