1 Mar 2003 taj   » (Master)

I read the CASE tool debate with interest. The problems that most people seem to have with them coincide with my own thoughts on the shortcomings of many of these tools. Most of these involve poor support of many of the activities involved in system implementation, eg implicit or missing inter-language transformation mappings, no support for human-readable deltas or debugging, UI deficiencies making them more inconvenient to use than tools based on 3GLs, incompleteness of the UML metamodel for purposes of modelling many "real-world" programming language techniques etc.

Personally, I'm waiting for tools that

  • support user-defined domain specific languages. There are examples of useful DSELs in the programming world, eg BNF/EBNF. In the right lighting and after a few strong drinks, XML schemas and many config file formats begin to look like declarative DSELs, some of which are "nicer" for expressing certain problems than a general-purpose programming language.
  • Support formal, bi-directional mapping rulesets for the transformation of abstract syntax trees in one supported language to another. XSL etc are beginning to be used for this but surely there is a nicer way to do this than typing huge XML documents by hand...
  • Provide customizeable user interfaces for the viewing and editing of elements in supported languages, in turn supported by real-time, incremental transformation
I guess I'm hinting at a CASE tool that supports various features of IDEs and design tools - development support environments that "understand" the problems you are working on using strict ontologies in the form of metamodels, and provide you with the ability to look at your project and its artifacts from a number of levels.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!