Enterprise Ontology Driven Software Engineering

Model Driven Engineering (MDE) has been with us for quite some time, the most well known MDE approach being OMG’s Model Driven Architecture. Current MDE approaches suffer from two major shortcomings. First, they are unable to deliver domain models that comprise all functional requirements. Second, the models to be produced during the system development process, are not formally defined. One of the theoretical pillars of Enterprise Engineering (EE) is the Generic System Development Process (GSDP). It distinguishes between the using system and the object system, and it states that any software development process should start from the ontological construction model of the using system. In addition, EE’s systemic notion of Enterprise Ontology provides us with a formalized ontological model of an organization that satisfies the C4E quality criteria (Coherent, Consistent, Comprehensive, Concise, and Essential). An operational application software generator is presented that takes this ontological model, with some extensions, as source code input and executes the model as a professional software application. Changes in the software, as required by any agile enterprise, are brought about ‘on the fly’, through regeneration, based on the modified ontological model of the enterprise’s organization.