UML Data modeling|
Designing data classes and generating Java/XSD source
Michael Härtfelder, 2010 <email@example.com>
Data modeling is an essential part of every software development. The impact on the total cost of software projects is often heavily undervalued. Possibly in very small projects data modeling can be a negligible. However the bigger the project and the more important the long term maintainability is, the more data modeling comes into focus.
Introducing systematic data modeling at an early stage of the software development life cycle avoids later vast and extensive unnecessary discussions. It helps minimizing re-implementation due to possible new requirements from customers and government stipulations.
Moreover using advanced UML tools for data modeling let the development team generate large parts of the source code e.g. for Java or XML/XSD schema based software.
We have successfully used in the past Sparx Enterprise Architect and MagicDraw for such UML class modeling tasks. As we found out in test investigations promising new tools for data modeling are Topcased and Innovator.