The main entities are Member, Group and Gathering.

The organization has one or more Member. Each member belong to zero or more Group. Each group has zero or more Gathering.

Member

Name Type Rules Description
Id Number Unique; Automatic counter from 1 This is the identity for the member. Couldn't be changed after created. This is automatically given to a new member when the member is added.
FirstName Alphanumeric Max 40 characters; Could not be empty
LastName Alphanumeric Max 80 characters; Could not be empty
BirthDate Date Date when the member is born. Could be empty if member don't want to registerer this information.
MemberDate Date Not earlier than BirthDate; Could not be empty Date when the member become a member
MemberEndDate1 Date Not earlier than MemberDate Date when the member resign from this organization
Address2 Alphanumeric Multiline; Max 1000 characters The address where the member lives
Email Alphanumeric A valid email address; Max 100 characters Format: yyyyyyy@xxxxxx.zz
Phone Alphanumeric Max 100 characters We do no validation on this field
Mobile Alphanumeric Max 100 characters We do no validation on this field


Comments
1) This means that an active Member is a member that have null in MemberEndDate.
2) In this version av Aspen we are trying not to get into globalization issues with Address. The Address format is flexible and stored in on alphanumeric string. In the next version we will extract the address information into an own value object so we could easier record which members are living on the same Address.

Group

Name Type Rules Description
Id Number Unique This is automically given when the group is created
Name Alphanumeric Max 50 characters; Could not be empty
Description Alphanumeric Max 2048 characters
CreationDate Date When the group was created

Gathering

Name Type Rules Description
Id Number Unique This is automically given when the gathering is created
GatheringForGroup Reference to Group A Gathering could only belong to one Group; Could not be empty
TitleOfGathering Alphanumeric Max 256 characters; Could not be empty
Description Alphanumeric Max 2048 characters
StartDateAndTimeOfGathering Date and Time Date and time when the Gathering is taking place
EndDateAndTimeOfGathering Date and Time This time can't be earlier than StartDateAndTimeOfGathering Date and time when the Gatheringen ends

AttendeesOfGathering

To record which Members are attending a Gathering.
Name Type Rules Description
Gathering Reference Reference to gathering
Member Reference Reference to member

GroupMembers

To record which Groups a Member is engaged in.
Name Type Rules Description
Group Reference Reference to group
Member Reference Reference to member
DateWhenMemberEnteredThisGroup Date Couldn't be earlier that MemberDate in Member Date when a member is being a participiant in this group
TypeOfResponsibility Enum Couldn't be null (if null then enum None) Enum: Leader; Supporter; Active; Passive; None

Last edited Mar 21, 2010 at 7:33 AM by buzzfrog, version 26

Comments

No comments yet.