Sparks, Brian
 

U.M.L. Designer

 

Abstract

 

By Brian Sparks

May 2003

Professor Joseph Daugherty

 

 

Background

 

UML or the Unified Modeling Language was adopted in November of 1997 to be used as a standard, industry wide development tool for designers. Its techniques were based on best known practices for the design and development of software with object-oriented features. However, the flexibility and power of UML also makes it equally complex. Because of this, normal UML development tools (such as Rational Rose) range from the hundreds to thousands of dollars, taking them well out of the affordability range for most students. The purpose of this application was to create a simple UML program with less design features that provided ease of use and accessibility.

 

Description

 

This application can behave both standalone and as an applet accessible from the Internet. Taking advantage of Java, the application offers a flexible and easy way to create Case, Class, Sequence and State diagrams, as well as supporting saving and printing options. Originally, both application and applet were to include the same features, but given the difficulties of security in most browsers, the applet only includes printing features as I/O. However, the small size of the application makes it easy to download and use by anyone with Java 1.2 runtime or higher.

 

Upon executing the application or applet, users have several options available. The left portion of UML Designer contains four tabs, one for each diagram type. Most items in each tab can simply be placed in the drawing area by clicking where you want them to appear. Lines are the exception, where dragging is used to place them on the screen. When in the drawing portion, objects can be edited, manipulated, and deleted.

 

Conclusion

 

The application and applet are still in the process of evolving. I hope to eventually incorporate more design elements, and more flexibility into the program. The creation of UML Designer has provided me with a number of new skills as a programmer and has offered the challenging experience of designing a program from the ground up.