Unified Modelling Language aids project success on any platform
- Posted:
- 15:09 03 May 2005
- Topics:
- Programming Languages | Architecture Design | Specification & Design
What is it?
Unified Modelling Language is used to analyse requirements and
design applications. It has been almost universally adopted in
application development suites such as IBM Rational Rose, Borland
Delphi Studio Architect, Microsoft Visual Studio .net and Oracle
JDeveloper.
Because of its origins in object-oriented development, UML is an
obvious choice for Java, C++ and C# , but it is also used for
modelling non-object-oriented languages such as Cobol and Visual
Basic.
Supporters claim that UML can model most types of application,
running on virtually any combination of hardware, operating system,
programming language, middleware and network. It can also be used
for business modelling, and almost any other kind of information
modelling.
Where did it originate?
By the early 1990s there were dozens of competing modelling
methodologies. Then three giants of modelling, Rumbaugh, Jacobson
and Booch, got together with the Object Management Group (OMG) to
provide an open, standard language that could be used to develop
and communicate application designs. UML was released in
1997.
The OMG defines and maintains the UML specification, which is
available to any provider of software tools.
What is it for?
Modelling improves the design, reusability and maintainability of
code, increasing the likelihood that large projects will succeed,
and making it easier to see why they fail. UML is also used in
small and medium-sized projects.
Models can be checked against end-user needs, business processes
can be verified in advance, and first steps towards security and
scalability can be taken before coding begins.
Some tools can execute models interpretatively to make sure they
work: others generate code from UML. Some can analyse existing code
and reverse-engineer it into a set of UML diagrams for
documentation and maintenance.
What makes it special?
UML is language-independent and is used by both J2EE and .net
developers, among others. UML models can be platform-independent or
platform-specific. Being universally understood, it supports
communication between developers, and between different application
development toolsets. A developer with UML skills is equipped to
work with any UML-compliant tool.
How difficult is it to master?
It depends whether you need just enough UML to get by with a
particular tool, or want to make use of its full potential.
Recruiters complain that many people who claim to know UML fit the
first category. The OMG recommends training that combines a
particular tool with a particular methodology, but a generic
approach would give you a better foundation for working with a
range of UML tools. The Institution of Electrical Engineers offers
a two-day introduction.
Where is it used?
In tools from Borland, Computer Associates, Honeywell,
IBM-Rational, Microsoft, Oracle, Sybase and a host of smaller
specialist companies. For a list, see www.objectsbydesign.
com/tools/umltools_byplatform.html.
What systems does it run on?
UML is platform- and language-independent.
What is coming up?
The current standard is UML 2.0. However, the OMG is still
finalising and rolling out parts of the specification, and UML 1.5
is still widely used.
Rates of pay
UML is used with a range of languages and development environments,
including .net, J2EE and C++, and in a variety of roles from junior
developer to software architect and business analyst. Salaries vary
accordingly.
Training
Courses are available from suppliers of UML tools, training
organisations and independent UML specialists. See the OMG's site
for a full list.
www.omg.org/uml
Links to free tutorials and downloadable material
www.tutorials.trireme.com
www.parlezuml.com