CaseComplete® 2009R2

Tutorial

Contents

CaseComplete®

Introduction

Installation

Create a new project

Explore the modeling process

Create a vision document

Open the Introduction to Use Cases PowerPoint presentation

Define actors

Add custom fields

Define actor goals

Convert goals to use cases

Change views

Add new use cases and actors

Add notes, open issues and related documents

Change use case priority

Add a glossary entry

Get an immediate definition of a glossary term

Add flow of events to use case

Use quick insert tool tips

Add extensions to a use case step

Add anytime extensions to a use case step

Add a use case reference

Manipulate steps in flow of events

Refactor a use case

Add additional details and access dynamic help

Create packages

Filter by package

Add Requirements

Add Requirement References

Create Child Requirements

Search

Generate reports

Working in Teams

Track changes

Clone project elements

Generate Test Plans

Create hyperlinks to use cases in other applications

Export data to UML tools

Create domain object cross reference tables

Incorporate Diagrams into your Project

Introduction

This tutorial walks you through many of the features found in CaseComplete®, and at the same time shows you the various steps of the use case modeling process. Throughout the tutorial, examples from a fictional doctor’s office appointment system are used. You are encouraged to try each step as you read along, however many screen shots are used so you can get a good feel for the capabilities from this document alone. For your convenience, this tutorial is available from both the Evaluation Guide and from the Help menu of CaseComplete.

Installation

Double click on the installation file (e.g. CaseCompleteSetup2009R2.msi), or select “Run” when downloading from the Internet. CaseComplete 2009 R2 requires Microsoft’s .NET framework version 2.0, with Service Pack 1. If you don’t have it installed on your system, you’ll get a message to that effect. You can download and install the .NET framework version 2.0 in one of two ways:

  • Via Windows update:
  • By installing the redistributable package: .NET version 2.0

Create a new project

On the opening screen you will be presented with a choice of opening an existing project or creating a new one. Click on “Create New Project”, or select “New…” from the File menu.

In the resulting dialog, type the name that you want to give to the project and indicate what folder it should be stored in. If you have an existing glossary from a previous project that is applicable to this project as well, you can browse to it. In this case, use the default glossary name. Leave the starting ID and prefix at their default values as well.

Explore the modeling process

After creating the new project, the start page displays the steps involved in the use case modeling process. By moving your mouse over each step, CaseComplete presents information about that step and provides navigation links to more information as well as links that take you to the corresponding location in CaseComplete.

Create a vision document

Before starting on a new project, it’s a good idea to create a short vision document. Click on the second step in the modeling process, “Create vision document”. This brings up Microsoft Word with a vision document template that contains guidelines and tips for what to include in the document. From this point forward, the document will be associated with this use case project and will be opened for each person that clicks on the link.

Open the Introduction to Use Cases PowerPoint presentation

If you have team members that aren’t familiar with use cases, use the PowerPoint presentation to bring them up to speed. From the Modeling Process start page, click on the “Teach Stakeholders” link to start the PowerPoint presentation:

Define actors

When creating a new use case project, you typically start out by identifying and describing the “actors” in the system. Click on the “Define Actors” link from the modeling processing page and enter the following actors:

Things to note:

  • The Description in the bottom left pane is showing the description for the AppointmentSystem top level package, which is selected in the project browser.
  • The Properties Window in the bottom right pane is showing the properties for the AppointmentSystem top level package. The Properties Window is used to view and change properties of selected item(s). You can turn it off or on from the View menu.
  • “systum” is squiggle-underlined, indicating a potential spelling error. If the spelling is correct, the word can be added to the custom dictionary by right clicking on it.
  • CaseComplete automatically underlines “doctor” indicating it is an actor. In addition it is a hyperlink which can be used to navigate to the details page for the actor. It also shows the description of the actor when you hover the mouse over it:

Add custom fields

You can add custom fields to use cases, actors, requirements and packages to hold information beyond that provided by predefined fields. For example, you could create a “Computer Access” field to indicate what type of computer access an actor has. From the Tools Menu, select Custom Fields to bring up the following screen:

Click on the New Field button and change the name to “Computer Access”. If desired, you can add a Default Value or Value Choices to your new field. A Default Value will be assigned to your custom field when a new item of the appropriate type is created (in this case, a new actor). If Value Choices are added, they will be presented and can be selected in the Properties Window of the selected use case.

You also have the ability to customize default values and value choices for the predefined fields such as “Use Case Status” or “Assigned To”. For example, you may want to enter the names of your project team members as value choices for the Assigned to field. From the Tools menu, select Predefined Fields. A dialog similar to the one shown above is presented.

Once you have created a set of custom fields or have customized your predefined fields, you can export them to a file for import into a different use case project or to share with other team members.

Define actor goals

As you create actors, start adding their goals. What do they expect to get out of the system? For this example, click on the Receptionist, then click on the Goals tab along the bottom and add to the bulleted list:

Convert goals to use cases

Once you have goals defined, you can start creating use cases. Since many of your goals will translate directly to use cases, CaseComplete allows you to create use cases from goals to save typing. From the Tools menu select “Create Use Cases from Actor Goals…”:

In this screen shot we see goals for all the actors, not just the receptionist goals created in the previous step. Note that for the selected goal we are specifying a different name for the generated use case so that it more accurately reflects the system responsibility. Click on the Create button – note that the ID’s of the generated use cases are added to the goal name so you can easily see which goals have already generated use cases should you later add more goals.

Change views

After generating the use cases, switch to the Use Cases tab to see them:

The view shown above is called the description view and is good when you want to quickly add new use cases during brainstorming or get an overview of the use cases defined so far. If you want to see more details for each use case, switch to the details view via the View menu or the corresponding button on the toolbar:


Note the primary actor field is already filled in. This is because the use cases were generated from actor goals.

By default, use cases are sorted alphabetically, but you can also sort on any column by clicking on the column header. Clicking on it again will reverse the sort order. Holding the Shift key while clicking on a different column header will allow you to set a secondary sort order (e.g. sort first by release, then by priority). You may sort up to 3 columns.

To add or remove columns, choose “Select Columns…” from the View menu or from the right mouse menu on the column headers. Choose the fields and their display order according to what makes most sense for your project. You may also set column sort order here as well (does the same thing as shift-click described above):

Add new use cases and actors

At any time, you can add a new use case, actor or requirement. There are many ways to do this. For example, you can add a new use case by:

  1. Clicking the New Use Case button on the toolbar:
  2. Selecting “Add Use Case” from the right mouse menu in the details list
  3. Selecting “Add Use Case” from the right mouse menu on a package in the project browser (packages discussed below)
  4. Clicking below the last use case in the description view (description view is described above in the “Change views” section).
  5. Hitting Enter when the cursor is positioned at the end of the use case name or description in the description view
  6. Selecting “New Use Case” on the Edit menu

Similar rules apply for actors and requirements.

Add notes, open issues and related documents

Select the desired tab along the bottom of the window to add or edit the description, notes, related documents, and open issues for the currently selected use case, actor, package or requirement. Notes can be anything from reviewer comments to reminders. For example, select the “View daily schedule” use case in any view or in the project browser and add the following note:

When writing use cases, you often will have questions that need to be researched or can’t immediately be answered. Add these to the Open Issues section. For example:

If you have external documentation for any given use case, actor, requirement, or package, you can add it to the related documents section. To add a new related document, you can either drag and drop the file from Windows Explorer into the related documents pane, or you can browse to it by selecting “Add related document…” from the right mouse menu. You can also enter a URL in the same manner:

If you add a standard image file, such as a .jpg, or a document that supports embedding, such as a Visio picture or PowerPoint slide, these pictures can automatically be displayed in generated Word reports. Control this behavior via the options button found on the Generate Word Report screen.

Change use case priority

Prioritizing use cases is helpful both for determining which use cases should be written first, and once written, which use cases should be implemented first. CaseComplete makes it easy to change the priority of use cases. In the details view, select one or more use cases and click the appropriate priority button on the toolbar, , or the ‘+’ and ‘-’ keys to increase or decrease the priority, respectively. In addition, you can change the priority for all the selected use cases in the Properties window. Recall you can sort on any column in the detail view by clicking on the column header, so it is easy to sort use cases by priority.

Add a glossary entry

As you encounter terms that are ambiguous or not widely known you should add them to the glossary. You should also add “domain objects” to the glossary, i.e. the real world entities that the system is responsible for, e.g. the patient history. This will become important later on when you want to do domain object modeling using UML or generate a domain object analysis report (both described below). You can add glossary entries in two ways. Via the glossary tab:

Or you can add a glossary entry for the current word or highlighted phrase while editing any text via the right mouse menu:

The following dialog is then displayed:

Get an immediate definition of a glossary term

Glossary entries are automatically displayed using a customizable color, and just as for actors, you can pop up the definition for a term by hovering your mouse over it:

Add flow of events to use case

The “meat” of a use case is its flow of events. Here you describe the main success scenario that an actor takes to achieve some goal. To edit the flow of events open the use case details form by double clicking on a use case in the details list or project browser, or via the “Open details…” right mouse menu:

A few things to note in this screen shot:

  1. You can use numbered steps or prose to document the flow of events.
  2. The text can be increased using the “A” button when using a conference room projector.
  3. The flow of events section and description can be expanded to use the entire window.
  4. You can change the size of the window and the fields will resize accordingly.

It should also be noted that you can have multiple use case windows open simultaneously allowing you to easily switch between 2 or more use cases. When you switch to another use case, or back to the main application, your changes will automatically be applied (although it is still up to you to save your changes to disk).

The steps for the Schedule Appointment use case might look something like this:

Use quick insert tool tips

Notice that “Receptionist” is used many times in the list of steps. CaseComplete provides “quick insert tool tips” to help speed up data entry. When CaseComplete recognizes that you are typing the start of an actor or definition, it presents you with the option of automatically inserting the rest of the word when you press enter:

Add extensions to a use case step

As implied by the name, the “main success scenario” describes the steps that are taken most of the time and when nothing goes wrong. In order to enter an alternate flow of events or an exception, add an extension to a step. Add extensions via the right mouse menu or via Ctrl+E. For example, let’s add an extension to the 2nd step:

Extensions start with a verifiable condition and are followed by a list of steps that are taken when the condition is true. For example:

Add anytime extensions to a use case step

If an extension can happen at any time, an asterisk (*) is used instead of the step number. CaseComplete allows you to add Anytime Extensions via the right mouse menu or via Alt+E. For example, if you know the network can go down at anytime, you could add this as an Anytime Extension:

Add a use case reference

Recall that we already have a use case that describes adding a new patient to the system. CaseComplete allows you to create a reference to that use case. While typing the text for the extension, select “Insert Use Case Reference…” from the right mouse menu, or type Ctrl+U. This will bring up the list of use cases defined so far. Type in the start of the desired use case name, or scroll to it with the arrow keys and press enter (in this case it’s the first one):

CaseComplete will insert the name of the use case and its ID which acts as a hyperlink. You are free to fix up the name of the use case so it is grammatically correct:

Just as with actor and glossary hyperlinks, you can navigate to the use case by clicking on the ID and you can see the description of the use case by hovering your mouse over it. You can insert a use case reference into any text field of CaseComplete, e.g. preconditions.

Manipulate steps in flow of events

You will undoubtedly need to manipulate the order and indentation of the steps in your flow of events. CaseComplete makes this extremely easy. For example, let’s say you later decide that the receptionist should first enter the scheduling portion of the system before looking up the patient name. Simply move the step up using Ctrl+UpArrow or via the right mouse menu:

After moving step 5 up to step 2, you end up with the following. Notice that the extension for the patient look up step (formerly step 2) was automatically renumbered to 3.a and “continue at step 3” was automatically renumbered to refer to step 4: