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.

5 thoughts 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.

    1. Hello,
      I used Goggle WebMaster Tools and especially PageSpeed Insights (https://developers.google.com/speed/pagespeed/insights) to analyze the .css and .js files the site pages load. As a result I excluded (manually) the .css for all WP plugins it used to include in any page and the corresponding not needed scripts (including the whole jQuery). Moved any other .js loads to the bottom of the HTML page. At the end installed W3 Total Cache to merge and minify the .css files and .js files the public pages still use and cache them. As a result the pages started loading fast.
      With best regards
      Rusi Popov

  2. Your style is very unique in comparison to other folks I’ve read stuff from.
    Thanks for posting when you’ve got the opportunity, Guess I’ll just bookmark this
    site.

    Feel free to surf to my web page; games offer (Elwood)

  3. Thanks a bunch for sharing this with all people you really underrstand what you’re talking about!
    Bookmarked. Kindly also talk over with my web site =).
    We could have a link trade arrangement among us

Leave a Reply

Your email address will not be published.