IEEE Home Search IEEE Shop IEEE IEEE Web Account Contact IEEE IEEE
IEEE Membership IEEE Publications IEEE Services IEEE Standards IEEE Conferences IEEE Careers/Jobs
IEEE2407 website
   Text Size: Small Text Normal Text Larger Text

IEEEP2407 Home
About IEEEP2407 About IEEEP2407
Documents on Standard Documents on Standard
Frequently Asked Questions Frequently Asked Questions
Business Model for P2407 Business Model for P2407
Target Use Cases Target Use Cases
Glossary of Terms Glossary of Terms
Reference Implementation Reference Implementation
Working Groups Working Groups
Tools Used by IEEEP2407 Tools Used by IEEEP2407
Discussion Forum - PENDING Discussion Forum - PENDING
Contribute to Project Contribute to Project


Who Are You?
Academic Researcher Academic Researcher
Community Advocate Community Advocate
Consumer of Health Services Consumer of Health Services
Content Provider Content Provider
Government Agency Government Agency
Health Provider Health Provider
Service Provider Service Provider
Software Developer Software Developer

 

Target Use Cases

Introduction to UML and Use Cases

This section provides a brief introduction to the Unified Modeling Language (“UML”). UML will be used extensively throughout this working group's activities and throughout the development of the reference implementation of the IEEEP2407 standards.

[NOTE: The material in this section is extracted from an excellent document by Sinan Si Alhir, available at http://www.methodsandtools.com/PDF/DMT0100.pdf (p. 10-16). Sinan’s personal website is available at http://home.comcast.net/~salhir/

The UML is an evolutionary general-purpose, broadly applicable, tool-supported, and industry-standardized modeling language for specifying, visualizing, constructing, and documenting the artifacts of a system-intensive process. The language is broadly applicable to different types of systems (software and non-software), domains (business versus software), and methods and processes. The UML enables and promotes (but does not require nor mandate) a use-case-driven, architecture-centric, iterative, and incremental process that is object oriented and component based. The UML enables the capturing, communicating, and leveraging of knowledge: models capture knowledge (semantics), architectural views organize knowledge in accordance with guidelines expressing idioms of usage, and diagrams depict knowledge (syntax) for communication.

..Models are complete abstractions of systems. Models are used to capture knowledge (semantics) about problems and solutions. Architectural views are abstractions of models. Architectural views are used to organize knowledge in accordance with guidelines expressing idioms of usage. Diagrams are graphical projections of sets of model elements. Diagrams are used to depict knowledge (syntax) about problems and solutions.

Within the fundamental UML notation, concepts are depicted as symbols and relationships among concepts are depicted as paths (lines) connecting symbols.

..Use Case Diagrams

To successfully apply use case diagrams, we must first understand the types of elements used in use case diagrams.

Actors

Actor classes are used to model and represent roles for “users” of a system, including human users and other systems. Actors are denoted as stick person icons.

..Use Cases

Use case classes are used to model and represent units of functionality or services provided by a system (or parts of a system: subsystems or classes) to users… Use case classes have use case instances or objects called scenarios that represent specific interactions. Scenarios represent a singe sequence of messages and actions.

.. Relationships

Association relationships between actor classes and use case classes are used to indicate that the actor classes participate and communicates with the system containing the use case classes.

..Use Cases

When modeling use cases, we ought to be aware of the following guidelines:

  • Use cases should be named using verb-noun phrases.
  • Use cases should be described, indicating how they are started and end, any conditions that must be satisfied before the use case starts (pre-conditions), any conditions that must be satisfied when the use case ends (post-conditions), the sequence of exchanged messages and performed actions, the data exchanged, and any non-functional characteristics (reliability, performance, supportability, etc. constraints). This description may be captured using text and other UML diagrams.
  • Use cases define the scope of a system and define the functionality provided by the system and those elements on which the system depends in order to provide the functionality.
  • Use cases should facilitate actors in reaching their goals. Use cases are system functionality or responsibilities (requirements) that actors use in order to reach or satisfy their goals. Use cases are not simply actor goals…
  • Use cases should facilitate the architecture of a system. Use cases may be organized and partitioned using includes, extends, and generalization relationships to identify, extract, and manage common, optional, and similar functionality…
  • Use cases provide flexibility and power throughout the life-cycle process. They provide the freedom to work with a use case as a whole or any subset of a use case via scenarios…
  • Use cases may be used as the basis for planning. Time and resource estimates may be associated with use cases.
  • Use cases may be used as the basis for analysis, design, and implementation.
  • Use cases may be used as the basis for testing.
  • Use cases may be used as the basis for documentation since use cases capture how users will use the system.

IEEEP2407 Use Cases

This is the latest version of the Case Use Cases developed by the working group:

How to Modify the IEEEP2407 Use Cases

You can take the source UML file (Use Case UML source file (UML)) and modify it at will.

spacer
Copyright © 2006-2007 IEEE-SA | (Webmaster: Jose C. Lacal, IEEE2407 Chair) | Last modified on Thursday February 01 2007 at 9:00pm GMT-05:00
spacer