This library of reusable relations/associations provides a simple and practical tool for building model driven architectures. It combines three innovations which, together, lead to rapid softare development of industrial-strength code, with a major improvement (2x or more) of software quality and productivity:
This site provides two parallel implementations with identical functionality in C++ and in Java . This is all basic "core" programming which is platform independent. The software was developed under WinXP, but it was written in a style which should require no or minimal conversion to UNIX. Also, porting of this library to C# should be trivial.
If you want to contribute additional data structures to this library, we'll givbe you full credit on this website with a list of your publications. For implementation style and technical details, look at additional data structures and/or design patterns.
The main entries into the three subprojects are:
- alib - C++ library of relations/associations,
- jlib - Java library of relations/associations,
- Layout - generates the UML diagram from an ASCII file produced by either library or other external sources.
The methodology has been successfully used on many complex commercial projects.
The idea has potential for stirring up a new software revolution, similar to the one caused by the introduction of structured programming. For more details, look at "The inevitable Cycle: Graphical Tools and Programming Paradigms", by Soukup J. and Soukup M., IEEE Computer, Aug.2007.
For the proposal to add a similar capability to all OO languages, go to Proposals.