The model of common business processes independent of the underlying hardware and software platform and tolerant to the emergence of new business requirements has been a Holy Grail of application development for decades.
Last month’s meeting, in Wellington, of the Worldwide Institute of Software Architects (WWISA) New Zealand chapter had an account of one local technique for building such models, the principles that underlie it, and the general philosophy of the model-driven approach (MDA) to development.
MDA, a recent direction taken by the influential Object Management Group, enshrines the structure of a system in an abstract model, or series of models and meta-models of an ever more general and abstract nature.The e-Gen development environment, created by speaker Craig Caminos (pictured) and his company Gentastic, has been successfully used in a number of local projects such as the integration of Peace Software’s utility customer information system (CIS) with more than 50 different interfaces across the operations of US client Xcel Energy.
Peace’s director of technology engineering, David Moles, acknowledges that the use of e-Gen shortened the time to generate the requisite APIs, from an expected year to six months.
E-Gen enables an abstract model to be defined in a standard language such as UML. This is used to generate a portal, which helps the designer firm up a design. The design can then automatically generate software deliverables — code, documentation and test data, Caminos claims. The model is initially developed independently of the underlying architecture to be used in a particular case.
As development takes place within a particular architecture, common features are identified and enshrined in a series of templates, which make future development easier.
The aim is to maximise flexibility in the face of technological and business change, while providing a firm base to ensure consistency of development across a team and increasing productivity.
“It’s not about getting rid of developers,” he insists; developers are an essential part of the equation — it’s about letting them get rid of some of the “guff” and the “wheel reinventing” that shouldn’t concern them.
The WWISA audience responded positively and many clearly thought the approach worth exploring, though some later questioned how really novel the approach was. The ideas underlying e-Gen had been around in one form or another for many years, said one long-term developer.
“They’re sound principles, but every so often someone thinks of a new language to use to explain them all again.”