Designing and testing software models is a highly specialized activity and so are the tools used for such purposes by developers. As is the case in any other field of development, the more powerful the utilities, the more facile becomes the process for the experienced users.
StarUML is one of the programs that was created to provide all the necessary components and functions for creating and editing projects that support the Unified Modeling Language (UML) standards and, consequently, are compatible with the Model-Driven Architecture (MDA) specifications.
A well structured GUI makes it possible for the user to build and explore all the components of a model, view the properties of the elements included in the project and a whole lot more. At first glance, the toolset may seem rather modest, but when exploring the menus the abundance of features is quite evident.
The modeling and diagram authoring functions of StarUML allow developers to add a variety of items like subsystems, packages, classes, interfaces or component instances, to name only a handful of such objects.
Extensible through add-ins, the application supports a wide variety of plugins designed with compatible programming languages. There are also some dedicated tools for C++ and C#, namely a code generator and a source code reverse engineering facility.
Each element included in a StarUML project can be formatted in great detail and inspected after it is selected from the 'Model Explorer' area. There are also some handy editors for tagged values, constraints and collections which are specific for every element of the diagram or model.
To sum things up, it's clear that StarUML is a developer's software by excellence and it provides a very strong feature set that will be most appreciated by specialists who are involved in UML and MDA project development.