Thursday, 21 January 2010

Technology roadmap - engineer or manufacture?

In October 2009 I went to a talk on “Enterprise Design Objectives - Complexity and Change” where John Zachman gave a talk on his framework. John is a very charismatic character and I would say it is worth going to one of his talks.

There were several related topics during his talk that stuck in my mind(1) engineering or manufacturing, (2) ontology (3) late binding / loose coupling.  While John’s talk was specifically about Enterprise Architecture and not software development there are similarities.

The definition of engineer and manufacturer, as I recollect, were:

Engineer – builds primitive models and templates for mass produced solutions

Manufacturer – takes primitive model or template and produces the final product, “creates an instance of an engineered solution”.

As a small organisation it is important to identify the balance between engineering and manufacturing, don’t re-invent the wheel. A balance between engineering to achieve a competitive edge and using existing products to accelerate the manufacturing process has to be achieved.

Altio has spent many years of effort engineering a framework for implementing RIA applications using Java, as a small business this is costly and makes maintaining momentum difficult. That is why the focus of future Altio releases is now on engineering only the features that provide the greatest value to existing and future customers. As many features as possible will be implemented using high quality products from third party sources.

As an organisation Altio is changing the balance of development effort from engineering to manufacturing.


Identifying items to engineer and those that can be re-used as part of a manufacturing process is achieved by defining capabilities, how each capability relates to another, and the features of each capability. In effect defining an ontology for the framework.

During the talk on Enterprise Architecture a statement was made that it is impossible to engineer the enterprise, the answer to this was the Periodic Table, an ontology of atoms. Very complex structures can be created from basic, loosely coupled atoms, humans are probably the best example of this. This was the justification for defining Altio capabilities and features, thus enabling us to generate a product backlog to begin development.

The key to delivery will be ensuring each capability is loosely coupled thus enabling late binding of solutions and modular implementation of each capability.

The value add to our partners and customers will be knowledge, support and framework capabilities that accelerate the delivery of high quality solutions.