Model based Application Development

Model based application development is the promise to deal with the application backlog and to move from programming (aka hacking) to a design based process, from a vertical silo-application view to service oriented architectures.

Information Models and Data Models arethe very foundation of application development. Informations models (conceptual models) establish a common languageand understanding of the problem domain for all stakeholders. (Physical) data models describe the implementation. They are derived from information models for performance reasons. 

Instance Data are traditionally detached from the information model which creates the so called "impedance mismatch"  between implementation and concepts. Metasafe is a direct implementation of an "executable conceptual model".

Applications: The integration of the model and the instance data avoids the impedance mismatch and enables a new breed of flexible applications.

erSQL - the Access Language and the Java API match the structure of the data (=information) model (as indicated by the red path).

 

(1) Create the Data Model more...

to describe the information and to establish a common language for all stakeholders of the domain. Metasafe provides the metaModeler to develop and document data models. Data models are stored in the Metasafe repository.

(2) Manage Instance Data more...

Load / edit  instance test data into the repository as part of the development process. Metasafe provides tools to import Excel sheets (metaEXL) and XML-Files and to edit instance data (metaEditor). The test data are used to test the validity of the data model. Without a thorough test data models degenerate to mere pictures which are forgotten as soon as development is under way.

Metasafe manages mutiple manifestations (Revisions, Variants) of instance data.

(3) Test and improve the Data Model more...

Test data are used for a static test of the data model. The data requirements of the business use cases are described with the erSQL-query language to perform also a dynamic test of the model. erSQL-queries relate directly to the data model. They are clear and understandable descriptions of the data access.

(4) Application Implementation

Metasafe as a development and prototyping tool: The data and important parts of the application can be implemented quickly on top of Metasafe. Such a Metasafe based application may go into preproduction for further validation. It may then be moved to the final production environment based on the completed and tested prototype.

Reports and BI-Crosstables: Flexible and high quality reports are easy to create with the erSQL-language and the Metasafe-interface to BIRT (Business Intelligence and Reporting Tool). more...

Metasafe as a production enviroment: For a broad range of applications there is no need to move to an RDBMS. The application moves into production on the Metasafe platform. Future changes are much easier, faster and more reliable.