Please take a moment to read the License Agreement, if you haven’t done so already.
If you’re using the freeware version of UMLStudio, you can upgrade it to a licensed version by paying the License Fee. We will then provide you with a valid Serial Number and Key Code which will remove the save restriction of the freeware version. By doing so, you will qualify for Product Support.
If you have any comments, questions, or suggestions, please contact Pragsoft Corporation via email: help@pragsoft.com.
We continually enhance UMLStudio and make new releases. Please visit our web site, www.pragsoft.com, to download new releases as they become available. Licensed users and those who join our email list will be automatically informed via email of new releases.
So rather than describing a software system in text, pictures are used to express the system at various levels of abstraction. The level of formality of these pictures can range from totally informal to a formally-specified graphical language. The advantage of formal graphical notations is that they can be analysed by the CASE tool and useful textual information (e.g., program code) automatically generated from them. Informal notations, on the other hand, have the advantage of not being as much constrained in their syntax and hence completely open to the user’s interpretation and needs.
A CASE tool typically provides the following capabilities:
Based on their notations, CASE tools support specific analysis and design methods. Earlier generation of CASE tools supported Structured Analysis and Design methods. These methods are now largely obsolete and are replaced by Object-Oriented Analysis and Design methods, which are in turn supported by the more recent CASE tools.
Because notations are defined visually, you do not need any specialized skills to define them. With UMLStudio, you can define and start using a new notation in a matter of minutes.
Unlike most other CASE tools, UMLStudio’s graphical notations are not hard-coded into it. Instead, each notation is stored in a notation template file. These templates are analogous to Microsoft Word document templates. (By creating a Microsoft Word template you can define a unique document style. This template can then be used to create documents that share the specified style. If you ever decide to adjust the style, you simply modify the template and the change can be automatically applied to the documents that use it.)
Similarly, a notation template in UMLStudio can be used to create diagrams that conform to that notation. You can adjust the notation at any point in time by modifying the template, and all the diagrams that are based on that notation will change automatically. Like in Word, you can also apply a different template to your drawings to instantly transform them into a different notation. For example, you can create a Booch class diagram and then automatically transform it to UML or some other OO notation.
By using templates, UMLStudio makes it easy to design new notations and share them with others. Most CASE users often face the problem of confronting a problem for which they have no appropriate notation. With UMLStudio, you’re never limited. If the task is best served by designing a completely new notation to address it, then you can do so quickly and consistently.
UMLStudio also provides the necessary tools for creating arbitrary and informal diagrams and to link and mix these with your formal diagrams. UMLStudio’s advanced grouping feature allows you to create arbitrarily complex objects of your own design and to formalize these objects as you see fit. You can put your designs in a library and make them available for quick reuse via the library menu.
In UMLStudio, we usually use the term model instead of a diagram or a drawing. A model is an abstraction of a concept. For example, a design model is an abstract representation of a design idea. Models are represented as drawings. For example, a software design model may be represented by a class diagram.
We also use the terms object (or entity) to refer to the logical components of a model, and the term drawable to refer to the visible representation of an object in a model’s drawing. However, these terms are also used interchangeably, but the intent will be clear from the context.
The following is a summary of UMLStudio’s key features:
UMLStudio has very modest memory and disk space requirements. If you have sufficient memory for Windows to operate comfortably, then this will be more than adequate for UMLStudio.
To install UMLStudio on your PC, run the installation executable, and follow the Setup instruction steps.
The objective of this exercise is to create a model of the workers in a hypothetical company. This model consist of two classes:

Employee will have the following attributes and methods:
Attributes: name : String hireDate : Date Methods: Terminate (date : Date) : void DaysInService () : Integer
To create the project:
The UMLStudio main window will appear on the screen and it will contain a blank project document, named Untitled. We will use the UML notation for this exercise. If the current template is not UML.not, choose File:Switch To Template, and then double-click the UML.not template.
Click on the icon of the Untitled model in the explorer pane to select it.
Click on the Class tool in the custom toolbar to select it.
Click the mouse button.
As soon as you create the place, the pointer tool will be selected in the main toolbar and the mouse pointer will revert to the usual shape.
When you create an object, it is always automatically selected. For a place object, this is indicated by 4 black knobs positioned at the corners of an imaginary rectangle enclosing the object. Selecting an object is a very useful and common operation, because in order to edit an object in any way, it needs to be selected first.
We want to edit the place we just created by giving it a different name. If you place the mouse pointer over the object, you will notice that the pointer changes to an I-bar cursor. This indicates that what’s under the cursor is editable text.
Click the mouse while positioned over the class text.
Type "Employee".
Click outside the object.
You will notice that as soon as you deselect the class, it is automatically resized to fit around the text.
The first step in creating the Employee class is now complete. Follow the same steps to also create the Manager class.
Note how the two classes created also appear in the lister page of the info pane. Each place has an associated master that defines the object denoted by the place. The lister provides a list of all masters you create in your project.
Our next task is to create the inheritance relationship between Manager and Employee.
Click on the Inheritance tool in the custom toolbar to select it.
Position the mouse pointer on the Manager class, hold the mouse button down, and drag (don’t release the mouse button yet).
Drag until the pointer is positioned over the Employee class and release the mouse button.
As before, the link is initially selected. This is indicated by two knobs at the start and end of the link. Clicking outside the link will deselect it.
The diagram created so far should look like this:

We will now create the aggregation relationship between Employee and Manager. To avoid this link overlapping the previous one, we will create it with two intermediate points.
Click on the Bi-Aggregation tool in the custom toolbar to select it.
Place the mouse pointer on the Employee class, hold the mouse button down, and drag to a point outside the right of the class and release the mouse button.
Finally, move the pointer over the Manager class and click the mouse button.
The selected link has a knob at its start, at its end, and at its intermediate points. Additionally, there is a knob at the bottom-right corner of an invisible text box that represents the area where the link label (if any) will appear.
Click on the link text box and type "reports to".

Double-click the link you just created.
After entering the cardinality and pressing the OK button, your diagram will look like this:

The only thing left to do is defining the attributes and methods of the Employee class. We can do this using the class property sheet.
Double click the Employee class.
Click on the Attributes tab to select it.
Click on the Methods tab to select it.
Press OK to close the parameters dialog, and press Add to add the method to the list of methods. Repeat this for the next method. Press OK to confirm your changes to the property sheet and to close it.
As soon as the property sheet of the class is closed, the class is resized to show the added attributes and methods. You may need to adjust the other objects around the place to cater for the increased size of the place.
Your diagram should now look like this:

Choose File:Save As to save your project.
This completes our simple exercise.
\UMLStudio\Projects\
If you’re a new user, it’s a good idea to have a look at these projects and to explore the models inside them.
You can open a project in two ways:
Click on the various models in the explorer pane of the project to view them.
Copyright © 1996-2009 PragSoft Corporation (www.pragsoft.com)