CEN4020: Software Engineering I up?

Eclipse and UML Tools

 

Contents

Introduction

This is a basic introduction to the Eclipse IDE and Model Developtment Tools (MDT).

There are many IDEs and UML tools, and UML tools integrated into IDEs. Some of these cost money, and some are either entirely free or available at little or no cost for student use. All of them require an investment of time to learn. The more powerful the tool larger the investments in time and money. In a business, these investments will be paid off, in the long run, through increased productivity.

In a university course, we have less time and money, and so must make some compromises. We will limit ourselves to free software. There are free UML tools, which can enable you to produce better UML diagrams, help you catch some errors errors, and make it easier to combine the work of team members at the end of the term. You will need to decide how much time you want to invest in learning such tools. A time investment up front may pay off before the end of the course, and may pay off more later, if you end up using the same or a similar tool after graduation.

Various UML Tools

There are several UML tools, which are either entirely free or have a limited version available free for educational use. Since different class members may be running Windows, Mac OSX, and Linux, it is desirable that such a tool run on all three platforms.

It is also desirable that all members of a team use the same tool, so that UML can be combined and cross-checked by the tool. At this point, it is not clear which of the available tools is best. This may become apparent a bit later in the term, after students have tried several and compared them.

The TA's for this course and I have tested several UML tools. Two stand-along tools that seem easy to install and use are BoUML and . However, it may be better to consider using one of the UML tools that is integrated with Eclipse.

Eclipse is well known and widely used open-source IDE, which runs on many platforms, including Linux, MS Windows, and Mac OSX. You can get information and free copies of the Eclipse code via links from www.eclipse.org. When I last checked there were 47 examples of Eclipse plug-ins that claim to support UML in some form. Many of these are commercial products. Some are free. In particular, there is a collection of UML tools that can be added plugged into any Eclipse installation.

Information on some of the UML plugins for Eclipse is provided below.

Basic Eclipse Modeling Tools (MDT)

You may want to start with Lars Vogel's tutorial UML with Eclipse Tutorial, which you may find useful. It is a little includes some screen shots of actual use, but is short of details on installation, saying just: "The UML2 Tools can be found under 'Modeling' in the update manager. Install the plugins via the update manager of eclipse."

The tool installation process will vary, depending on your computer system, so that it is not practical to provide a single generic "how to" explanation. I have installed Eclipse with UML support on both my MacBook and my Gentoo Linux workstation, which runs Gnome. I started by following the instructions I found on the web for Eclipse, and succeeded in getting it up and running pretty quickly.

Once you have some version of Eclipse up and running, you can use the built-in faculity for upgrades and plugin installations to get UML capabilities, as follows.

  1. Use the pull-down menu Help?Install_New_Software to get the following window. This screenshot shows what I got after clicking on the "V" icon to select "http://downlaod.eclips.org/releases/galileo" from the "Work with:" field, then scrolling the "Name" field to the "Modeling" entry and then clicking the box to select it.

    *

    I then clicked on "Next>", and followed instructions until the installation completed.

  2. A lot seems to depend on how the built-in Eclipse update/install mechanism is configured, by default, at the time of installation. The set of update/install sites in the search list seems to be critical. If you don't see anything in the "Work with:" menu or it does not include any sites that have what you want, you can click on the "'Available Software Sites'" link to get the following screen, which will allow you to hand-enter some URIs.

    *

    You can then use the "Add..." menu item to add URI's for update sites. I found that http://download.eclipse.org/releases/galileo was a good starting point for my Eclipse 3.5 (Galileo) installation. However, if you are using Eclipse 3.6 (Helios), you will find that the files are not available on the update sites. You will need to follow this guide to manually add and install them.

    If this still does not work, you may need to use the Window?Preferences pull-down, then the General?Capabilities pul-down, and check the Classic Update box. (I did this during one of my earlier unsuccessful experiments, and never set it back. I don't know whether it made any difference in my later success.)

  3. Now try creating a UML drawing. First use the "File?New?Project..." menu item, select the General?Project option, and give the name of the project you want to create. If you give no name the name will be "default".

    *
  4. Then use the "File?New?Other..." menu item, select the UML 2.1 Diagrams?Use Case Diagram option, and provide a name.

    *
  5. You should now be ready to draw. After minimizing some of the many subwindows that Eclipse gives you by default, which you can do using the small horizontal bar icon near the right corner of each window, you should have something like the following.

    *

Enjoy.

Papyrus

There is an Eclipse plug-in called Papyrus for UML, which is also available in a stand-alone version. Robert Hall has tested this produced an Papyrus tutorial.

UMLet

Another Eclipse plug-in for UML is "UMLet". You can download it from http://www.umlet.com/umlet_10_4/com.umlet.plugin_10.4.0.jar.

Rational/IBM Tools

By the way, if anyone is interested in using some heavy-duty professional-grade commercial UML tools, by IBM/Rational, let me know. I can get free copies of those, including the Rational "Rose" modeling tool, for free educational use.

References

($Id: eclipse.html,v 1.1 2010/08/22 16:01:44 baker Exp baker $)