Meta Resource Management System

Static Model

René Freude (707168)

Daniel Sadilek (707297)

Stephan Weiß (706830)

2003-05-19

Revision History
Revision 0.12003-05-19
Initial public release.

Abstract

This document contains the class diagrams and class descriptions that resulted from the static analysis.


Table of Contents

1. Data and Meta Data Management Classes
1.1. Resource
1.2. ResourceType
1.3. AttributeType
1.4. NumberAttributeType
1.5. TextAttributeType
1.6. Attribute
1.7. NumberAttribute
1.8. TextAttribute
1.9. Link
1.10. LinkRule
1.11. CardinalitySpec
2. User Management Classes
2.1. User
2.2. Role
2.3. AccessRight
2.4. ResourceAccessRight
2.5. AttributeAccessRight
3. Extensive Overview

1. Data and Meta Data Management Classes

The following diagram depicts the data and meta data structures of the MRMS.

Figure 1. Data and Meta Data Classes

Data and Meta Data Classes

1.1. Resource

Description

A Resource is composed of its Attributes and is an instance of a ResourceType which specifies which Attributes the Resource may have.

Attributes

---

1.2. ResourceType

Description

A ResourceType specifies (by composition) the Attributes that a Resource of this type has.

Attributes

name: the name of the ResourceType

1.3. AttributeType

Description

Abstract base class for attribute types that a ResourceType aggregates.

Attributes

name: the name of the AttributeType

onlyPredefinedValuesAllowed: if true, the user may only select the predefined values for an Attribute that has this type; if false, he may enter another value as well

mandatory: if true, the user must enter a value for Attributes of this type

frozen: if true, the user may not change the value of Attributes of this type

1.4. NumberAttributeType

Description

Concrete AttributeType for NumericalAttributes.

Attributes

predefinedValues[]: an array specifying predefined values for Attributes of this type

minValue: the minimum value Attributes of this type may have

maxValue: the maximum value Attributes of this type may have

1.5. TextAttributeType

Description

Concrete AttributeType for TextAttributes.

Attributes

predefinedValues[]: an array specifying predefined values for Attributes of this type

minSize: the minimum number of characters Attributes of this type may have

maxSize: the maximum number of characters Attributes of this type may have

1.6. Attribute

Description

Abstract base class for attributes that a Resource aggregates.

Attributes

---

1.7. NumberAttribute

Description

Concrete Attribute for a numerical property characterisation of a Resource.

Attributes

value: numerical property characterisation of a Resource

1.8. TextAttribute

Description

Concrete Attribute for a textual property characterisation of a Resource.

Attributes

value: textual property characterisation of a Resource

1.9. Link

Description

A Link references the two Resources that are linked together by it. Its consistency is checked by the LinkRule.

Attributes

---

1.10. LinkRule

Description

A LinkRule defines the characteristics of a consistent Link. It references two ResourceTypes whose instances (Resources) may be linked together and aggregates two CadinalitySpecs that define the allowed cardinalities for links between the two ResourceTypes.

Attributes

name: name of the LinkRule.

1.11. CardinalitySpec

Description

Specifies the minimum and maximum cardinality for one end t1 of a link rule. Example: Two ResourceTypes t1 and t2 are taking part in a LinkRule. If there is the cardinality specification min=1 and max=4 for t1, this means that one specific Resource of type t2 must have at least 1 and may have up to 4 Links to Resources of type t1. In the specification of the cardinality for ResourceType t1 a NumberAttributeType of the ResourceType t1 may be referenced.

Attributes

minCardinality: value for the minimum cardinality; may be overriden by a reference to a NumberAttributeType

maxCardinality: value for the maximum cardinality; may be overriden by a reference to a NumberAttributeType

2. User Management Classes

The following diagram depicts the classes for user management of the MRMS.

Figure 2. User Management Classes

User Management Classes

2.1. User

Description

Class for user accounts of the MRMS. Its instances may play Roles in the system.

Attributes

name: username

password: password of the user

realname: real name of the user

2.2. Role

Description

A Role defines which AccessRights its players (Users) have.

Attributes

name: name of the Role

isAdministratorRole: defines if Users of the Role have administration rights

2.3. AccessRight

Description

Abstract base class for access rights. If a Role is associated with an AccessRight we say it owns the AccessRight. Users have the AccessRights which the Roles they play own.

Attributes

---

2.4. ResourceAccessRight

Description

Concrete AccessRight that defines owner's authority of working with Resources that are of a specific ResourceType.

Attributes

canCreate: defines if Resources of the referenced ResourceType may be created

canDelete: defines if Resources of the referenced ResourceType may be deleted

canLink: defines if Resources of the referenced ResourceType may be linked

2.5. AttributeAccessRight

Description

Concrete AccessRight that defines owner's authority of accessing Atrributes of Resources that are of a specific ResourceType.

Attributes

canRead: defines if Attributes of the referenced AttributeType may be read

canWrite: defines if Attributes of the referenced AttributeType may be written

3. Extensive Overview

Figure 3. All Classes

All Classes