Model-driven software development with ModelAnt

ModelAnt is a practical open source tool to support a model-driven software development processes. It is an extension of Apache Ant that allows:

  • create models,
  • load models,
  • query models,
  • transform models,
  • export models,
  • reverse engineer to model
    • java code,
    • relational databases,
    • XML document type definitions (DTD),
    • XML Schema (XSD),
    • Ant scripts (projects and antlibs),
  • compare models and detect model changes,
  • generate textual artifacts from models:
    • java/any code,
    • SQL,
    • scripts,
    • configuration files, etc.
  • generate documentation of Ant scripts (for projects and antlibs)

Standards

ModelAnt tool for model-driven development extends ANT and integrates JMI
ModelAnt  extends ANT and integrates Java Metadata Interface (JMI)
ModelAnt uses industry standard technologies and Java APIs as a JMI 1.0, MOF 1.4, XMI 1.1 / 1.2, UML 1.3 integrated with Ant scripting front-end.

Code Generation

ModelAnt provides a powerful template engine to generate
  • code,
  • SQL scripts,
  • XML files,
  • textual descriptions
  • and many more.

ModelAnt includes practical  code generation templates for Java POJO.  ModelAnt does not provide a common off-the-shelf solution. It is not possible just to pick up and use immediately. Instead the code generation templates should be adapted for the concrete project, framework, conventions.

ModelAnt is a platform that really simplifies the creation of product-specific solution for code generation. Such a product-specific solution is used in our team at i:FAO AG since more than 10 years now and proves the value of ModelAnt itself and the Model-Driven Software Development in general.

Reverse Engineering

ModelAnt’s feature for reverse engineering of java code, relational databases, XML document type definitions (DTD), XML Schema (XSD) and ANT scripts extracts UML 1.3 model that are practical for:

  • generating documentation
  • generating code
  • comparing and revealing structural changes in databases, DTDs, XSDs
  • visualization and human comprehension

Actually, the documentation of ModelAnt itself is an example of ant.doc outcome.

Sharing Experience

We also collect and publish experience, practices, recommendations, ideas and usage of model-driven architecture (MDA) and model-driven software development (MDSD) for improvement of the software development process and raising the development abstraction level.

One thought on “Model-driven software development with ModelAnt

  1. Excellent post. I used to be checking constantly this weblog and I am inspired! Very useful information specifically the closing phase :) I maintain such information much. I used to be seeking this particular info for a long time. Thank you and best of luck.

Leave a Reply

Your email address will not be published.


four − 2 =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>