Non-Functional Requirements Modeling Tool

The Softgoal UML Profile for StarUML

Author: Sam Supakkul
The University of Texas at Dallas

Current release: version 1.2 | What's New
Previous release: version 1.1
System Requirements | Download and Installation Guide | User Guide | License | Help | Announcement


 

softgoal-profile
Figure 1. A Softgoal Model (SIG) using the Softgoal Profile for StarUML

This preliminary NFRs modeling tool supports the notations from the NFR Framework [book, paper, draft]. It is implemented as a UML profile, which we call the Softgoal Profile, to extend an open-source UML modeling tool called StarUML. Figure 1 shows an example of a softgoal model ( called Softgoal Inter-dependency Graph or SIG in the NFR Framework). The model file for Figure 1 is available here, which can be opened by double-clicking the file once StarUML and the Softgoal Profile have been installed.

At this stage, the tool lacks syntactic checking due to the limited OCL support by the underlying StarUML tool for implementing the necessary well-formedness rules. We hope to be able to incorporate some syntactic checking in the future.

System Requirements

The Softgoal Profile is implemented using the XML that seems to be StarUML-specific. For this reason, StarUML is required. Additionally, since StarUML is a Microsoft Windows COM-dependent implementation, the Softgoal Profile works only on Windows platforms. The current version has been tested on StarUML version 5.0 and Windows XP.

Back

Download and Installation Guide

  1. Download and install StarUML.
  2. Download the Softgoal Profile zip file.
  3. Unzip the zip file to the "modules" folder under StarUML installation folder (e.g. C:\Program Files\StarUML\modules). Figure 2 shows the folder structure after both StarUML and the Softgoal Profile have been installed.


Figure 2. StarUML Installation Folder with the Softgoal Profile

Back

A Brief User Guide

1. Start StarUML. A dialog titled "New Profile By Approach" will be displayed. If the cloud icon representing the NFR Framework Approach is not included in the available Approaches, please check the StarUML installation directory to make sure the softgoal folder has been properly extracted from the zip file.


Figure 3. The First Dialog after Launching StarUML

2. Click "The NFR Framework" Approach (with a cloud icon as shown in Figure 3). A Softgoal model will be created with a panel on the left showing the icons representing the concepts in the NFR framework, such as NFR and Operationalization, AND, OR, HELP, MAKE, HURT, etc.


Figure 4. Tool Panel and a Caution on Name Modification

3. To create a softgoal, click an icon (e.g. NFR cloud) on the panel then click the work area in the diagram, a model element of the selected icon will be created. The name of the new softgoal will be pre-assigned by StarUML, but the cursor will be placed where the name may be changed at this time (see the note below for an important tips). Repeat this step for other desirable softgoals.

Important
When changing the name of the softgoals in the work area, make sure to keep the stereotype prefix intact (e.g. "<<NFRSoftgoal>>" or "<<OpSoftgoal>"); otherwise, StarUML will no longer recognize them as softgoals thus will not display them using the cloud icons. Figure 4 shows an example of the stereotype prefixes that must be kept intact.

4. To create a contribution (e.g. decomposition or MAKE, HELP), click a contribution icon (e.g. an arrow with ++) on the panel, then click an offspring softgoal. Without releasing the left mouse button, drag to a parent softgoal, then release the left button. A contribution link will be created between the two softgoals. Repeat this step for other desirable contribution links and/or repeat step 3 to create other softgoals.

5. To edit softgoal criticality or satisficing label, select a desirable softgoal, click "Tagged Values" button or press Ctrl+F7. A Tagged Value Editor dialog is displayed. Select "Proposition" Tag Definition Set, then select the desirable values for the softgoal criticality (Critical, VeryCritical) and satisficing label (Denied, WeaklyDenied, Undecided, WeaklySatisficed, Satisficed, Conflict). Figure 5 shows the Tagged Value button and the Tagged Value Editor dialog. Select other softgoals to edit the criticality and label as needed.

tagged-value-dialog

Figure 5. Tagged Value Button and Tagged Value Editor Dialog

Back

What's New

Version 1.2


License

The Softgoal Profile for StarUML is free of charge but provided "as is" without any expressed or implied warranty.

Help and Discussion

Problems or questions may be posted to the Softgoal Profile Google Group or emailed to ssupakkul (at) ieee.org -- replace (at) with @. Any comments or general discussions are also welcome.

Google Groups
The Softgoal Profile
Visit this group

Announcement

Annoucements related to the Softgoal Profile such as new releases will be posted in this group. You may subscribe for email notification.

Google Groups
Subscribe to The Softgoal Profile Annoucement
Email:
Visit this group

Back


© 2007-2008 Sam Supakkul
Updated Jan. 20, 2008

eXTReMe Tracker