Entities

The following entities are used to manage user and the related functionality:

The following diagram represents the entity relationship model for the user entities through UML.

Figure 1. UML representation for user screen entities

The following sections describe the low level details of these entities – e.g. the set of attributes, the code table associations, and the primary and foreign key details.

User

The User entity represents the user whose personal information is being managed by the application. The following table provides further details about this entity:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

userID

Y

   

username

     

displayName

     

statusCode

   

RecordStatus

ToDo

The ToDo entity represents the information that forms a to-do. For simplicity, this entity contains the following information:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

toDoID

Y

   

description

     

startDate

     

endDate

     

categoryId

 

Category. categoryID

 

percentageComplete

     

statusCode

   

RecordStatus

groupName

   

GroupName

Note that the attribute categoryID has a foreign key relationship with the entity Category. Also, note that the columns statusCode and groupName have associations with the RecordStatus and GroupName code tables respectively.

UserToDoLink

This link entity provides association between User and ToDo entities. Since there exists a one-to-many relationship between a user and to-do items, the association between them is captured in this entity:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

userToDoLinkID

Y

   

userID

 

User.userID

 

toDoID

 

ToDo.toDoID

 

The Note entity represents the standard note that contains information such as subject, description, etc. The table below provides more information about this entity:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

noteID

Y

   

subject

     

description

     

folderID

 

Folder.folderID

 

statusCode

   

RecordStatus

Also, it is possible to associate a note with a folder. This is implemented via a foreign key relationship with the Folder entity, using the folderID attribute.

UserNoteLink

Since it is possible for a user to have many linked note items, the UserNoteLink entity is introduced in order to maintain an association between the User and Note entities:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

userNoteLinkID

Y

   

userID

 

User.userID

 

noteID

 

Note.noteID

 

Category

The ToDo, entity has a foreign key relationship with the Category entity through the attribute categoryID. The following table lists the information available on the Category entity:

Column Name

Primary Key Column

Foreign Key Details

Code Table Association

categoryID

Y

   

name

   

CategoryName

displayName

     

description