1.              Introduction

1.1.         Purpose

This document provides the Class Models for the Tanager project.  The Class Models are generated from the Use Cases and Domain Model and show the static representation of the Tanager system.  The Class Model shows all the classes, interfaces, and associations in the Tanager system.

1.2.         Definitions, Acronyms, and Abbreviations

A complete list of definitions, acronyms, and abbreviations can be found in the Tanager Glossary.

1.1.         Diagrams

All diagrams in this document were generated using Gentleware’s Poseidon for UML tool.

1.2.         References

Fowler, Martin.  2004.  UML Distilled.  Boston MA: Addison-Wesley.  09 August, 2005 < http://www.awprofessional.com/bookstore/product.asp?isbn=0321193687&rl=1>.

Larman, Craig.  2005.  Applying UML and Patterns.  Westford, MA: Prentice Hall.  09 August, 2005 <http://www.phptr.com/title/0131489062>.

Poseidon for UML. 2005.  Gentleware AG.  20 January, 2007 <http://www.gentleware.com/uml-software-pe.html>.

 

2.              Application Class Model

(click on image for a scalable version)

 

3.              UI Class Model

(click on image for a scalable version)

 

4.              Revision History

Date

Version

Description

Author

15 Aug, 2006

1.0 – Elaboration Phase 1

Initial Revision.  Created from Use Case descriptions, SSDs, Sequence Diagrams, and Operation Contracts.

Bob Lavey

14 Sep, 2006

1.1 – Elaboration Phase 1

Added classes for Tanager UI

Bob Lavey

03 Dec, 2006

2.0 – Elaboration Phase 2

Added classes, operations, attributes, and associations to support Play Music and Pause Music Use Cases.

Bob Lavey

15 Jan, 2007

3.0 – Elaboration Phase 3

Added classes, operations, attributes, and associations to support Enter Menus, Exit Menus, Stop Music, View Playlist, Delete a Song, and Volume Adjustments Use Cases.

Bob Lavey

19 Jan 2007

3.1 – Elaboration Phase 3

Updated based on Dr. Leavens’ review.  Removed the menu-related classes, since they’re UI concepts.  Added UI Class Model.

Bob Lavey

 

20 Jan 2007

4.0 – Elaboration Phase 4

Renamed CSystemState class CStatus based on Dr. Leavens’ review of Elaboration Phase 3.  Refined aggregation and composition relationships.

Bob Lavey

 

25 Jan 2007

4.1 – Elaboration Phase 4

Updated with changes from Restart Current Song, Skip to Previous Song, and Skip to Next Song use cases.

Bob Lavey

 

30 Jan 2007

4.2 – Elaboration Phase 4

Updated with changes from refactoring of the CDisplay’s text pane.

Bob Lavey