Sunday, November 22, 2009

SW development is empirical

One should learn from previous experiences and previous mistakes. Even better, one should learn from others experiences and mistakes. In SW development, we have been very good at adapting knowledge from other industries. This has been especially the case with the manufacturing industry. From the Taylorism to the more recently influences of Lean thinking, the SW development theories and practices have borrowed a lot from the manufacturing industry.

But we need to be very aware of the differences in our industries. Manufacturing typically deals with repeatable processes, while SW development is empirical.

In manufacturing, a repeatable process converts consistent inputs into consistent outputs. Repeatable means that the conversion of inputs to outputs can be replicated with little variation. In repeatable process, a small variation on inputs typically translates to a small variation to the outputs. But this is not the case with SW development.

SW development is really creation. And creation is not a highly predictable and repeatable thing. There is too much complexity and variability in the SW creation process; SW creation is an empirical activity.

Dictionary.com Empirical definition:
1. derived from or guided by experience or experiment.
2. depending upon experience or observation alone, without using scientific method or theory, esp. as in medicine.
3. provable or verifiable by experience or experiment.

In manufacturing, a great deal of work is about putting pieces together to build a specific thing. Whereas, in SW development, these pieces are often created, re-created, or customized every time. This is not to simplify the kind of work going on a manufacturing assembly line. My point is that the manufacturing discipline and its pieces of work are more mature, stable and well understood than the SW discipline, and its pieces of work.

Further, in SW development a small variation on inputs can result into a big variation to the outputs. For example, small changes in requirement or the architecture can result in huge differences in the software development and its output.


9 comments:

Esko Luontola said...

A big different between software development and manufacturing industry is that in software the cost of building something is zero. The equivalence of an engineer designing a blueprint is a programmer writing the code - it is the documentation that describes in detail that what should be manufactured. The difference is that building a physical thing based on a blueprint (such as a car, airplane or skyscraper) costs lots of money, but building software is fully automated - a compiler does it in a few seconds with practically no costs.

http://www.bleading-edge.com/Publications/C++Journal/Cpjour2.htm

thomson said...
This comment has been removed by a blog administrator.
thomson said...
This comment has been removed by a blog administrator.
Sophia said...

Hi,
I am Programmer with Chessboss.com. Chessboss.com is absolutely FREE chess server where you can play chess,create your own tournament with players online. No Gambling and explicit talk. This website is purely meant to increase the fan-base of chess and for entertainment. I Need your help to promote the FREE chess server around the world. I would like to be on your blog as i found it a useful and informative resource. By adding chessboss.com you will recognized and added as a top resource on our chess server. I really believe in FREE flow of information. I have included the code and title.

Please email me back with subject line of your URL for the featured resource code. This is to avoid spam and to make sure you get the award.

I hope you understand and co-operate with us.

Thank you,
Sophie Vierra
Programmer
www.chessboss.com.

angelyu said...

ACER TravelMate 3280 Series Laptop batteryACER TravelMate 3280 Series Laptop battery
ACER Aspire 5550 Series Laptop batteryACER Aspire 5550 Series Laptop battery
ACER Aspire 5560 Series Laptop batteryACER Aspire 5560 Series Laptop battery
ACER Aspire 3640 Laptop batteryACER Aspire 3640 Laptop battery
ACER Aspire 3670 Laptop batteryACER Aspire 3670 Laptop battery
ACER Aspire 5540 Series Laptop batteryACER Aspire 5540 Series Laptop battery
ACER Aspire 5590 Laptop batteryACER Aspire 5590 Laptop battery
ACER Extensa 3100 Laptop batteryACER Extensa 3100 Laptop battery
ACER TravelMate 2420 Series Laptop batteryACER TravelMate 2420 Series Laptop battery

angelyu said...

ACER TravelMate 3280 Series Laptop batteryACER TravelMate 3280 Series Laptop battery
ACER Aspire 5550 Series Laptop batteryACER Aspire 5550 Series Laptop battery
ACER Aspire 5560 Series Laptop batteryACER Aspire 5560 Series Laptop battery
ACER Aspire 3640 Laptop batteryACER Aspire 3640 Laptop battery
ACER Aspire 3670 Laptop batteryACER Aspire 3670 Laptop battery
ACER Aspire 5540 Series Laptop batteryACER Aspire 5540 Series Laptop battery
ACER Aspire 5590 Laptop batteryACER Aspire 5590 Laptop battery
ACER Extensa 3100 Laptop batteryACER Extensa 3100 Laptop battery
ACER TravelMate 2420 Series Laptop batteryACER TravelMate 2420 Series Laptop battery

贝贝 said...

The Tax Return Crack-Up<3>
Granted, there are usuallyMicrosoft Office 2010write-ups when presidential contenders make their tax returns available, but the coverage falls far short of the Office 2010
full court press (pardon the pun) that the Clintons have received. What's Microsoft Office 2007different now?Office 2007One possibility is that most upper middle class Democrats, and therefore most Microsoft OfficeOffice 2007 keyeditors and reporters of our nation's big papers as well as Office 2007 downloadtelevision producers, are Obama supporters who think that Hillary should hurry up Office 2007 Professionaland drop out of the race already.Microsoft outlook
Microsoft outlook 2010Whom elite liberals are pulling for really does shape political coverage in ways

GuildWars2Items said...

Death, old age, are words without a meaning, that pass by us like the idle air which we regard not Diablo 3 Gold Sale, It takes strength to do what must be done when the work is unpleasant and uncomfortable Diablo 3 Gold, it takes strength to persist in the face of obstacles, when it would be much easier to simply give up Buy Diablo 3 Gold.

GuildWars2Items said...

Promise me you'll never forget me because if I thought you would I'd never leave IMVU Credits, Sometimes when I say "I'm OK" I just want someone to look me in eyes, hug me tight, and say"I know you're not IMVU Credit, to me, the past is black and white, but the future is always color IMVU Credits.