Introducing the UML (Unified Modeling Language)

As the world becomes more complex, the computer-based systems that inhabit the world also must increase in complexity. They often involve multiple pieces of hardware and software, networked across great distances, linked to databases that contain mountains of information. If you want to make systems that deal with this, how do you get your hands around the complexity?

The key is to organize the design process in a way that clients, analysts, programmers and other involved in system development can understand and agree on. The UML provides the organization.

Consider this: Would you tell a building contractor that you want a 4 bedroom, 3 bath home, about 2000 square feet - Start building it!  We'll hammer out the details as we go along?   We all know this is ludicrous.  But sadly, this method of development is all too common in the software industry.  Just as you would work with an architect to design a blueprint that would diagram exactly how the house is to be built, you will work with us on an UML diagram that will document exactly how your custom software system will be built.

The UML was released in 1997 as a method to diagram software design.  It was designed by a consortium of the best minds in object oriented analysis and design.   It is by far the most exciting thing to happen to the software industry in recent years.  Every other engineering discipline has a standard method of documentation.   Electronic engineers have schematic diagrams, architects and mechanical engineers have blueprints and mechanical diagrams.  The software industry now has UML. 

Before we move on next lesson consider some of the benefits of UML:

1 Your software system is professionally designed and documented before it is coded.   You will know exactly what you are getting, in advance.
2 Since system design comes first, reusable code is easily spotted and coded with the highest efficiency.  You will have lower development costs.
3 Logic 'holes' can be spotted in the design drawings.  Your software will behave as you expect it to.  There are fewer surprises.
4 The overall system design will dictate the way the software is developed.  The right decisions are made before you are married to poorly written code.  Again, your overall costs will be less.
5 UML lets us see the big picture.  We can develop more memory and processor efficient systems. 
6 When we come back to make modifications to your system, it is much easier to work on a system that has UML documentation.  Much less 'relearning' takes place.  Your system maintenance costs will be lower.
7 If you should find the need to work with another developer, the UML diagrams will allow them to get up to speed quickly in your custom system.  Think of it as a schematic to a radio.  How could a tech fix it without it?
8 If we need to communicate with outside contractors or even your own programmers, it is much more efficient.

Uml2.gif (2126 bytes)Using The Unified Modeling Language will result in lower overall costs, more reliable and efficient software, and a better relationship with all parties involved.  Software documented with UML can be modified much more efficiently.   Your software will have a future.