Tuesday, August 12, 2008

Software Industry != Software-Industrialization

In my opinion somebody has been seriously confusing the production of material goods with the development of software.

Let's look at the example of Lego bricks. A lot of effort goes into setting up injection molding machines and a distribution network. Once the complex machinery is in place you produce millions of identical items by employing the same steps over and over, with very little human intervention.

This is not how software is being produced. The multiplication and distribution is the smallest problem. In the case of software created for a specific project and purpose the product might be installed only once. Pretty much all of the effort goes into the specification, design, and development of a single unique product.

Where is the industrialization in that? What is industrialization, anyways? Making a single item is expensive. Constructing a machine for creating a single item is even more expensive. But using that machine to make a lot of items reduces the cost per item enormously.

So what that is software industrialization then? The best analogy I can think is the use of tools like IDEs, debuggers, or maybe even MDA. And using standardized methods, tools, and processes. But the advantages of applying all this only go so far; creating software is done mostly by working with the head, not with tools.

This means that developing software is not an industrial process performed in an automated factory, but rather tool-assisted handcrafting in a manufacture, gladly employing sophisticated methods. This is not a bad thing; better methods and tools will help a lot to improve the quality of software, and to speed up the development process.

1 Comments:

Anonymous Mitch said...

Aloha Chris

I think you have the right idea there. I would like to think that software industrialization is all about the design process and not the manufacturing end.

Industrializing the software design process is akin to what happened in the engineering design industry many years ago where pen and paper drafting tables are now replaced by computer workstations of today using very sophisticated CAD software for engineering design, with reusable design elements. What took months, if not years, on the draft table, now takes days or weeks with AutoCAD.

That type of industrialization has yet to occur in the software world. To me, it is just a matter of time. Keep up the good writings!

5/19/2009 07:47:00 AM  

Post a Comment

<< Home