cahier de charges e-learning

83
Avda. de Europa, 34 A - 28023 Aravaca, Madrid. Tel: (+34) 91 708 90 00 / (+34) 91 211 03 00 Fax: (+34) 91 708 90 90 / (+34) 91 211 03 90 Empresa Certificada según las normas UNE-EN ISO 9001:2000 y UNE- EN ISO 14001:2004 con Nº de Registro ER-0134/1999 y GA-2004/0432, respectivamente SATEC Kedros-LMS to JAVA J2EE Number project: INTERN Work order for Kedros-LMS. Messages Level of security: N1 Version: 1.0 15/07/08 Template version: 3.0 Author Miguel Ángel Montañés Approbation:

Transcript of cahier de charges e-learning

Page 1: cahier de charges e-learning

Avda. de Europa, 34 A - 28023 Aravaca, Madrid.

Tel: (+34) 91 708 90 00 / (+34) 91 211 03 00 Fax: (+34) 91 708 90 90 / (+34) 91 211 03 90

Empresa Certificada según las normas UNE-EN ISO 9001:2000 y UNE- EN ISO 14001:2004 con Nº de Registro ER-0134/1999 y GA-2004/0432, respectivamente

SATEC Kedros-LMS to JAVA J2EE

Number project: INTERN

Work order for Kedros-LMS. Messages

Level of security: N1

Version: 1.0

15/07/08

Template version: 3.0

Author

Miguel Ángel Montañés

Approbation:

Page 2: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Changes Control

Version Date revision Changes summary

0.1 Draft

1.0 Firs official version

Page 3: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. i

Index

1. Introduction.......................................................................................................1

2. Description and development scope. .............................................................2

2.1. Scope for this development. Messages .........................................................2

3. System Functional Specification.....................................................................3

3.1. Use Cases. ....................................................................................................3

3.2. New message ................................................................................................4 3.2.1. Prototype HTML.................................................................................................. 7

3.3. Choose receivers / User list ...........................................................................8 3.3.1. Prototype HTML................................................................................................ 10

3.4. by Department .............................................................................................11 3.4.1. Prototype HTML................................................................................................ 12

3.5. Advanced search by department .................................................................13 3.5.1. Prototype HTML................................................................................................ 15

3.6. By edition of course .....................................................................................16 3.6.1. Prototype HTML................................................................................................ 17

3.7. Advanced Search by Edition of course ........................................................18 3.7.1. Prototype HTML................................................................................................ 21

3.8. Search .........................................................................................................22 3.8.1. Prototype HTML................................................................................................ 24

3.9. Advanced Search.........................................................................................25 3.9.1. Prototype HTML................................................................................................ 29

3.10. Inbox............................................................................................................31 3.10.1. Prototype HTML................................................................................................ 33

3.11. Output tray ...................................................................................................34 3.11.1. Prototype HTML................................................................................................ 35

3.12. Filter by last messages ................................................................................36 3.12.1. Prototype HTML................................................................................................ 37

3.13. Labels ..........................................................................................................38 3.13.1. Prototype HTML................................................................................................ 39

3.14. Management of labels..................................................................................40 3.14.1. Prototype HTML................................................................................................ 41

3.15. Create Label ................................................................................................42 3.15.1. Prototype HTML................................................................................................ 43

3.16. Rename label...............................................................................................44 3.16.1. Prototype HTML................................................................................................ 45

3.17. Delete label..................................................................................................46

Page 4: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. ii

3.17.1. Prototype HTML................................................................................................ 46 3.18. Recycle Bin..................................................................................................47

3.18.1. Prototype HTML................................................................................................ 47 3.19. Message list in recycle Bin...........................................................................48

3.19.1. Prototype HTML................................................................................................ 50 3.20. Read Message in Recycled Bin ...................................................................51

3.20.1. Prototype HTML................................................................................................ 52 3.21. Delete forever ..............................................................................................53

3.22. Move to Inbox ..............................................................................................54

3.23. Message list .................................................................................................55 3.23.1. Prototype HTML................................................................................................ 59

3.24. Read message.............................................................................................60 3.24.1. Prototype HTML................................................................................................ 62

3.25. Mark as Unread ...........................................................................................63

3.26. Mark as Read ..............................................................................................64

3.27. Delete message...........................................................................................65

3.28. Apply label ...................................................................................................66

3.29. Remove label...............................................................................................67

3.30. Forward........................................................................................................68 3.30.1. Prototype HTML................................................................................................ 70

3.31. Reply message ............................................................................................71 3.31.1. Prototype HTML................................................................................................ 73

3.32. Print message..............................................................................................74 3.32.1. Prototype HTML................................................................................................ 75

3.33. View data of user .........................................................................................76 3.33.1. Prototype HTML................................................................................................ 77

4. Database..........................................................................................................79

Page 5: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 1 of 79

1. Introduction

This document gives to the JAVA developer the necessary information to create the SATEC E-learning Platform components

For each component or platform module, a work order like this one will be created. UML language will be used to lean the requirements specification.

The document will use the structure as follows:

• Description and development scope.

• Use Cases

• Database

Page 6: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 2 of 79

2. Description and development scope.

2.1. Scope for this development. Messages

The eLearning platform of SATEC Java version, it will need an internal messaging module to achieve a personal communication between users.

The functioning of the internal messaging of Kedros-LMS is very similar to a mail system managed by email.

This module allows the user to send messages to other users, in addition to delete, move, print and assign labels to messages

Below I show the Diagram of Class of domain Kedros. It highlights the relevant classes involving this module.

class Domain Class of Kedros-LMS

Platform

ElementOrganization

User

Profile

Functionality

Entity

DateAccess

NoteBook

Edition Course

ThematicArea MediaLibrary

Group

ConectionAlert ConectionPursuit Service

Forum NoticeBoard Chat

UserEditionRegister

UML. Domain diagram classes of Kedros-LMS

Organization

ForumElement

Message

LabelMessages

1

Classifies

*

1..*

1

1

0..*

0..*Classifies1

1 receive course in 1..*

1

Write

0..*

1

Define therol of

*

1..*

1

368

Define the behavior of

1

1..*1

1

0..*

0..*

Classifies

1

1..*

1..

1..

the course is thecontent training ofa edition*

0..*

Containt messages of

1

1..*

1

1

0..*

1..*

1

1

have

0..*

0..*

1

0..*

1

0..*

1

Send and receive message

0..*

Classifies

1

1

is a

1

1

is a

1

1is a

1

0..*

Organize to

1

Name:Package:Version:Author:

Domain Class of Kedros-LMSDomain Class in Kedros-LMS (layer Delegate)1.0Miguel A. Montañés

Page 7: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 3 of 79

3. System Functional Specification

3.1. Use Cases.

Here I show the cases of use at messaging system.

uc Message Module Use Cases

User logged in Kedros-LMS

(from Use Case for Kedros-LMS)

Inbox

Message list

Read message

Print messageReply message

New message

Forward

Search

Filter by last messages

Labels Management of labels

Output tray

Recycle Bin

Advanced Search

Delete forever

Move to InboxMessage list in

recycle Bin

Delete message

Mark as Read

Mark as Unread

Rename label

Delete label

Choose receiv ers / User list

by Department

By edition of courseApply label

Read Message in Recycled Bin

Create Label

View data of user

Remov e labelAdv anced search by

department

Adv anced Search by Edition of course

«include»

«include»

«include»«include»

«include»

«include»

«include»

«include»

«include»

«extend»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

Name:Package:Version:Author:

Message Module Use CasesMessage1.0Miguel A. Montañés

Figure1: Message Module Use Cases

Page 8: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 4 of 79

3.2. New message

Send a new message to others user/s

Constraints

Pre-condition

Permission for profile The user only view the button "New message" if the assigned profile to the user has to have permissions to: Allow new message. This is the functionality Id 22001 ='1'

Pre-condition

Clicked "New" button The "new message" button has been clicked

Post-condition

Sent Message A message should be sent to the selected users.

Events flow

Basic Path

Show form The system shows a form with all the necessary fields to send a message.

Basic Path

Fill in the form. Choose receiver/s Choose receivers will be clicked by the user to look for the message receivers See use case “Choose Receivers". It will give back a list of selected used ids. Using the back list ids from "Choose receivers", the system will show all the receivers full names in the TEXTAREA. Property shows DISABLE now. <Validations> - The receivers list CAN NOT BE empty (void).

Basic Path

Fill in the form. Attach

Page 9: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 5 of 79

PRIORITY ---------------- The user will select the message priority among these 3 options:: -Low -Average -High TOPIC ---------- The user enters the text with a message Topic. <Validations> - Max length = 70 MESSAGE ----------------- The user enters the text with the body message. <Validations> - Max length = 4000

Basic Path

Fill in the form. Rest of fields PRIORITY ---------------- The user will select the message priority among these 3 options:: -Low -Average -High TOPIC ---------- The user enters the text with a message Topic. <Validations> - Max length = 70 MESSAGE ----------------- The user enters the text with the body message. <Validations> - Max length = 4000

Basic Path

Send Message The system will send a message to the receivers and it will register the time and date message delivery. Important: If any user fulfils the following requirements : 1. Has established as preferences that received messages have to be resend to the user email account. 2. The user has a valid e-mail address. Then the system will send to the receiver user, using his favourite language, an e-mail with all the message data, included the attachments using its

Page 10: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 6 of 79

To obtain these preference use the QUERY SELECT preferences_user_redirec, preferences_user_language, preferences_user_owner FROM preferences_user WHERE preferences_user_owner = ?? (userId of the receiver user)

Page 11: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 7 of 79

3.2.1. Prototype HTML

Note: In all prototypes html in this document, the border of the tables in red color indicate that its contents will be between <div> and </div>.

For example:

Page 12: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 8 of 79

3.3. Choose receivers / User list

Obtaining the messages receivers Ids List

Responsibilities (internal requirements)

Reusing IMPORTANT. This module will be used in the future to select the users to enrol in an edition. Put this component in domain class "User"

Constraints

Pre-condition

Choose receiver/s The user will select the message receiver users.

Post-condition

Getting an users list We will get a selected users identifiers list

Pre-condition

Permissions profile By Edition (only registered) By Edition (only registered and active editions) By Organization (all users of organization)

Events flow

Basic Path

Showing options. The system shows the two users to select filter options - By Department (using the use case "By department" - By Edition of course (using the case use "By edition of course")

Basic Path

Filter users list.

Page 13: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 9 of 79

The filtered users will be shown. The following fields will be shown - Sel - Full name - Profile. - At the column "Full name" the full user name will be shown (by user preferences formatted) - At the column Profile the icon representing the sender user profile will be shown.

Basic Path

Users Selection At the column “Sel” a checkbox will be shown in every table row. The user can select the wanted registers to do any action over them. If we click on the column head, where "Sel" is set, all the screen visible registers will be selected automatically. - When clicking "Select users for sending messages" the system returns the user list to send a message.

Page 14: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 10 of 79

3.3.1. Prototype HTML

Page 15: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 11 of 79

3.4. by Department

Filter user by department

Events flow

Basic Path

Filter by departments. - Permission for profile. The user only view the link "By department" if the assigned profile to the user has to have permissions to: By Organization (all users of organization) This is the functionality Id 22014 ='1' - The system shows the organization departments tree - The user can click on a department. Then a list with the users belonging to that selected department will be shown. On the users list head, the following dynamic text will appear: "Visualizing all users in department: Department 1"

Page 16: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 12 of 79

3.4.1. Prototype HTML

Page 17: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 13 of 79

3.5. Advanced search by department

Advanced search

Events flow

Basic Path

Show form The system shows the advanced searching form.

Basic Path

Fill in the form. On the form head the following text will be shown:: " Advanced Search for users in department: Department 1" The user can fill in the following fields: - Include sub departments (checkbox) If selected, then all the users belonging to descendants departments from the selected will be included in the searching. <Validations> - not obligated - Name. <Validations> - not obligated - maxlength = 50 - 1st Surname <Validations> - not obligated - maxlength = 50 - 2st Surname <Validations> - not obligated - maxlength = 50 - Profiles (List of the organization existing profiles) <Validations> - not obligated - User login <Validations> - not obligated - maxlength = 25 - Data identifier

Page 18: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 14 of 79

<Validations> - not obligated - maxlength = 8 - Mail <Validations> - not obligated - only accept format of correct mail - maxlength = 120 - To bear in mind when searching - The searching boundary is set over the present selected department. - - It will be searched any event containing the searched text. Lowercase or Caps will not mind. (WHERE UPPER(NAME_FIELD) LIKE '%stringToSearch%') - The following accented words and symbols will not mind either at the searching. á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,â,ê,î,ô,û,ã,õ they will be performed as a,e,i,o,u Example: If the entered searching string is "camión" and there is a message which contains "camión" word on its TOPIC , then that message will appear as a result of the searching.

Basic Path

Showing results. They system shows the searching obtained results . The searching will be set at the selected department. At the found users list head, the following dynamic text will be shown: "Search results for: Include sub departments: [yes], Name:[text in name] 1st Surname:[text fill in 1st Surname], 2st Surname:[text fill in 2st Surname], Profile :[profile selected]... rest of fields" And then only the filled in fields will appear at the dynamic text.

Page 19: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 15 of 79

3.5.1. Prototype HTML

Page 20: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 16 of 79

3.6. By edition of course

Filter users by edition of course

Events flow

Basic Path

Filters by courses editions. - Permission for profile. The user only view the link "By Edition of course" if the assigned profile to the user has to have permissions to: By Edition (only registered) --> functionality Id 22007 ='1' or By Edition (only registered and active editions) --> functionality Id 22021 ='1' - If Functionality id 22007 = '1' then, The systems shows the courses editions list where the user is enrolled. - If Functionality id 22021 = '1' then, The system shows the courses editions list where the user is enrolled. The user can join those lists because the access dates on its profile allows him to do it. . - The user can click over an edition, then a list with the users belonging to the selected course edition will be shown. On the user list head the following dynamic text will be shown: "Visualizing all users enrolled in: Edition 1"

Page 21: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 17 of 79

3.6.1. Prototype HTML

Page 22: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 18 of 79

3.7. Advanced Search by Edition of course

Advanced Search

Events flow

Basic Path

Showing the form. The system shows the advanced searching form.

Basic Path

Fill in the form. At the form head the following text will be shown.: "Advanced Search for users enrolled in: Edition 11" The user can fill in the following fields: - Name. <Validations> - not obligated - maxlength = 50 - 1st Surname <Validations> - not obligated - maxlength = 50 - 2st Surname <Validations> - not obligated - maxlength = 50 - Profiles ((List of the organization existing profiles) <Validations> - not obligated - User login <Validations> - not obligated - maxlength = 25 - Data identifier <Validations> - not obligated - maxlength = 8 - Mail <Validations> - not obligated

Page 23: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 19 of 79

- only accept format of correct mail - maxlength = 120 -: " Advanced Search for users in department: Department 1" The user can fill in the following fields: - Include sub departments (checkbox) If selected, then all the users belonging to descendants departments from the selected will be included in the searching. <Validations> - not obligated - Name. <Validations> - not obligated - maxlength = 50 - 1st Surname <Validations> - not obligated - maxlength = 50 - 2st Surname <Validations> - not obligated - maxlength = 50 - Profiles (List of the organization existing profiles) <Validations> - not obligated - User login <Validations> - not obligated - maxlength = 25 - Data identifier <Validations> - not obligated - maxlength = 8 - Mail <Validations> - not obligated - only accept format of correct mail - maxlength = 120 - To bear in mind when searching - The searching boundary is set over the present selected department.

Page 24: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 20 of 79

- - It will be searched any event containing the searched text. Lowercase or Caps will not mind. (WHERE UPPER(NAME_FIELD) LIKE '%stringToSearch%') - The following accented words and symbols will not mind either at the searching. á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,â,ê,î,ô,û,ã,õ they will be performed as a,e,i,o,u Example: If the entered searching string is "camión" and there is a message which contains "camión" word on its TOPIC , then that message will appear as a result of the searching.

Basic Path

Showing results. - The system shows the obtained searching results. - The searching boundary is about the course edition selected at the present. - On the found users lists, the following dynamic text will be shown "Search results for: Name:[text in name] 1st Surname:[text fill in 1st Surname], 2st Surname:[text fill in 2st Surname], Profile :[profile selected]... rest of fields" then only the filled fields in will appear in the dynamic text.

Page 25: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 21 of 79

3.7.1. Prototype HTML

Page 26: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 22 of 79

3.8. Search

Search messages

Constraints

Pre-condition

Permission for profile The user only view the button "Search" and field for search if the assigned profile to the user has to have permissions to: Allow message search This is the functionality Id 22008 ='1'

Post-condition

Obtaining results The user obtains the messages containing the searched text

Events flow

Basic Path

Show form The system shows the simple searching form with only one field to type the searched text.

Basic Path

Fill in the form The user enters the searching text in the field and the clicks on “Search” button. <Validations> - The search field CAN NOT be empty (void). - Max length = 200

Basic Path

Searching for messages - The system will search entered string into the user messages. - The searching will be done over the following fields only: - Name - 1st Surname - 2st Surname - Topic - Message body - To bear in mind at the searching:

Page 27: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 23 of 79

- It will be searched any event containing the searched text. Lowercase or Caps will not mind. (WHERE UPPER(NAME_FIELD) LIKE '%stringToSearch%') - The following accented words and symbols will not mind either at the searching. á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,â,ê,î,ô,û,ã,õ they will be performed as a,e,i,o,u Example: If the entered searching string is "camión" and there is a message which contains "camión" word on its TOPIC, then that message will appear as a result of the searching.

Basic Path

Showing results The system shows in the case of use "Message List" the obtained results at the search. The following dynamic text will appear at the head of the list of messages. "Search results for: stringSsearched" If the last messages filter is activated then the following text will be added: "in messages from dd/mm/yyyy to today (messages into last xx days)"

Alternate

Text not found A message appears as: "Text not found at the messages"

Page 28: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 24 of 79

3.8.1. Prototype HTML

Page 29: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 25 of 79

3.9. Advanced Search

Advanced search for messages

Constraints

Pre-condition

Permission for profile The user only view the button or link named "Advanced Search" if the assigned profile to the user has to have permissions to: Allow message search This is the functionality Id 22008 ='1'

Post-condition

Obtaining results The user obtains the messages containing the searched text.

Events flow

Basic Path

Showing the form The system shows the advanced search form.

Basic Path

Fill in the form The user can fill in the following fields: - Name. <Validations> - not obligated - maxlength = 50 - 1st Surname <Validations> - not obligated - maxlength = 50 - 2st Surname <Validations> - not obligated - maxlength = 50 - Topic

Page 30: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 26 of 79

<Validations> - not obligated - maxlength = 50 - Message body <Validations> - not obligated - maxlength = 50 - Date from <Validations> - not obligated - maxlength = 10 - Check a valid date - Date to <Validations> - not obligated - maxlength = 10 - Check a valid date - Has Attachment (checkbox) If selected then the searching has to have included the messages which contain any attachment. <Validations> - not obligated - Scope (SELECT with following options:) - All Messages - Inbox - Output Tray - Recycled Bin - Read messages - Unread messages - Label 1 (Label created by the user) - Label 2 (Label created by the user) - Label 3 (Label created by the user) The filter selected in field Scope, will be applied to search : " Advanced Search for users in department: Department 1" The user can fill in the following fields: - Include sub departments (checkbox) If selected, then all the users belonging to descendants departments from the selected will be included in the searching. <Validations> - not obligated - Name. <Validations> - not obligated - maxlength = 50

Page 31: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 27 of 79

- 1st Surname <Validations> - not obligated - maxlength = 50 - 2st Surname <Validations> - not obligated - maxlength = 50 - Profiles (List of the organization existing profiles) <Validations> - not obligated - User login <Validations> - not obligated - maxlength = 25 - Data identifier <Validations> - not obligated - maxlength = 8 - Mail <Validations> - not obligated - only accept format of correct mail - maxlength = 120 - To bear in mind when searching - The searching boundary is set over the present selected department. - - It will be searched any event containing the searched text. Lowercase or Caps will not mind. (WHERE UPPER(NAME_FIELD) LIKE '%stringToSearch%') - The following accented words and symbols will not mind either at the searching. á,é,í,ó,ú,à,è,ì,ò,ù,ä,ë,ï,ö,ü,â,ê,î,ô,û,ã,õ they will be performed as a,e,i,o,u Example: If the entered searching string is "camión" and there is a message which contains "camión" word on its TOPIC , then that message will appear as a result of the searching.

Basic Path

Showing results The system shows in the case of use "Message List" the obtained results at the searching. The following dynamic text will appear at the head of the list of messages: "Search results for:

Page 32: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 28 of 79

Name:[text in name] 1st Surname:[text fill in 1st Surname] 2st Surname:[text fill in 2st Surname] Topic [text fill in Topic] Message body[text fill in Message body] Date from[date fill in Date from] Date to[date fill in Date to] " and only the filled in fields will appear at the dynamic text. if the filter of the last messages is activated then the text will be added. "in messages from dd/mm/yyyy to today (messages into last xx days)"

Alternate

Text not found A message will appear as follows: "Text not found at the messages"

Page 33: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 29 of 79

3.9.1. Prototype HTML

Page 34: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 30 of 79

Page 35: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 31 of 79

3.10. Inbox

Show messages in Inbox

Responsibilities (internal requirements)

Functional

1.- Do not implement the folder ALERTS The folder ALERT will not appear in the new Java version anymore.

Functional

2.- Relocate messages which belongs to the folder ALERTS For Java version, a TAG called “old alerts” will be created for all the users. The messages concerning to ALERTS will be associated to it. With this, all the users who used to use the folder ALERTS can keep located all the messages contained on it. The messages contained on ALERTS folder (table MESSAGE, field MESSAGE TYPE) have the value "AL".

Functional

3.- ALERTS. Providing updating script. The developer will provide to the Head of Team the script or development which makes the association of the ALERT messages to the LABEL “old alerts”. It will be ready to be executed into production environments. On those environments the platform JAVA version will be already updated. In this case the updater should be documented to be executed without any incident.

Constraints

Pre-condition

Link "Inbox" Clicked The user clicked on link "nbox"

Events flow

Basic Path

View option for filter messages When the user logs into the messages module will have always available the following elements in order to locate the messages: - Input box (selected by default when the user logs into the messages module )

Page 36: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 32 of 79

- Output tray - Filter by last messages - Recycled Bin - Labels

Basic Path

Show messages in Inbox The system shows in the case of use "Message List" the obtained results at the Inbox. Filter to set: It contains all the user RECEIVED messages and in addition it has to bear in mind if the "Filter by last messages" is activated. The following text will appear at the head of the list of messages: "Visualizing all messages in Inbox " but if the "Filter by last messages" is active then the following text will appear at head: "Visualizing messages from dd/mm/yyyy to today in Inbox "

Page 37: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 33 of 79

3.10.1. Prototype HTML

Page 38: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 34 of 79

3.11. Output tray

Output tray

Constraints

Pre-condition

Link "Output tray" Clicked The user clicked on "Output tray"

Events flow

Basic Path

Show messages in "Output tray" The system shows in the case of use "Message List" the obtained results at the Output tray Filter to set: It contains all the user SEND messages and in addition it has to bear in mind if the "Filter by last messages " is activated. The following text will appear at the head of the list of messages: "Visualizing all messages in Output tray " but if the "Filter by last messages" is active then the following text will appear at head: "Visualizing messages from dd/mm/yyyy to today in Output tray"

Page 39: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 35 of 79

3.11.1. Prototype HTML

Page 40: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 36 of 79

3.12. Filter by last messages

That filter will limit the number of messages to view depending of it age

Events flow

Basic Path

Filter Selection The user will select the type of filter to be applied in the message list. (Inbox, Output Tray and labels). There are 2 options that can be selected by a radio button. Option 1: View all messages. If the user chooses that option no filter will be applied to the messages list. Option 2: View the last days messages only. If the user chooses that option must to fill in the field with the number of days (n) to filter. Then, the list of messages will be filtered in order to view the last (n) days messages.

Basic Path

Apply filter The user clicks on the filter button, then the filter is applied to the showed list of messages at this moment. Then the screen would be refreshed.

Page 41: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 37 of 79

3.12.1. Prototype HTML

Page 42: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 38 of 79

3.13. Labels

Filter of labels

Constraints

Pre-condition

The user clicked on a label link The user clicked on some label link.

Events flow

Basic Path

Showing options. The system shows the options to label management. The existing labels and a managing link will be shown.

Basic Path

Show messages with label selected The system shows in the use case "Message List" the obtained results at the label selected Filter to set: It contains the user messages SEND AND RECEIVED that have the preselected assigned label and in addition it has to bear in mind if the "Filter by last messages " is activated. The following text will appear at the head of the list of messages: "Visualizing all messages with Label 1" but if the "Filter by last messages" is active then the following text will appear at head: "Visualizing messages from dd/mm/yyyy to today with Label 1" At the list result "Sender" column, if any message appear as "Output tray", then the word "me" will be shown.

Alternate

Label Management selected. The user enters to the use case "Management of Labels"

Page 43: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 39 of 79

3.13.1. Prototype HTML

Page 44: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 40 of 79

3.14. Management of labels

Management of labels

Events flow

Basic Path

Seeing label list. They system shows to the user the available labels. At this screen, it is possible to create, to delete and renaming the available labels

Page 45: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 41 of 79

3.14.1. Prototype HTML

Page 46: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 42 of 79

3.15. Create Label

Create new Label

Events flow

Basic Path

Show form The system shows to the user with an only field to enter the label name.

Basic Path

Create label When clicking "Create" a new label will be created and then the screen will be refreshed.

Page 47: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 43 of 79

3.15.1. Prototype HTML

Page 48: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 44 of 79

3.16. Rename label

Rename Label

Events flow

Basic Path

Rename Label The system will show the field with the filled label name. The user can change the label name clicking on "rename The screen will be refreshed.

Page 49: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 45 of 79

3.16.1. Prototype HTML

Page 50: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 46 of 79

3.17. Delete label

Delete Label

Events flow

Basic Path

Delete Label When clicking “delete Label”, the label will be deleted.

3.17.1. Prototype HTML

Page 51: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 47 of 79

3.18. Recycle Bin

Show messages in Recycled Bin

Events flow

Basic Path

Select recycle Bin The user has selected "Recycled Bin" and the system redirects it to the use case "Messages list in recycle Bin" .

3.18.1. Prototype HTML

Page 52: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 48 of 79

3.19. Message list in recycle Bin

Message list in recycle Bin

Constraints

Pre-condition

Recycled Bin Selection When selected "Recycled Bin"

Events flow

Basic Path

Showing messages list - The system shows the messages list on "Recycled Bin" - On the messages list head the following text will be shown "Visualizing all messages in Recycled Bin " - "Filter by last messages" activation will be not bear in mind, so ALL the "Recycled Bin" messages will be visualized. - The following columns will be shown: Sel. ,Sender, Topic, Profile ,date, Priority , Number of attach , Filter to apply: It contains the SEND and RECEIVED user messages sent previously to "Recycled Bin". It will be not bear in mind the activation of "Filter by last messages". - The field Topic will be a link where when clicking on it, the message content through the use case "Read Message in Recycled Bin" will be shown. - AT the column "Sender" If there is any message that belongs to "Output tray" then the word "me" will be shown. - At the column profile the icon representing the user profile who sent the message will be shown. - At the field Date the message sending data will be shown. When the mouse is close, the message sending time will be shown as well. -At the column Priority the icon representing the sent message priority will be shown. High = red, Medium = yellow, low = green - At the column Number of attach, the number of attached messages file will be

Page 53: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 49 of 79

shown.

Basic Path

Selecting messages The user can select the wanted registers to do any action over them. If we click on the column head, where "Sel" is set, all the screen visible registers will be selected automatically.

Basic Path

Showing possible actions to do The system will show to the user the possible actions to do with the selected messages. Those are: - Move to Inbox - Delete forever

Page 54: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 50 of 79

3.19.1. Prototype HTML

Page 55: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 51 of 79

3.20. Read Message in Recycled Bin

Read Message in Recycled Bin

Constraints

Pre-condition

Selecting messages. The user had to select a message.

Events flow

Basic Path

View the message The system shows to the user the selected message from the "Recycled bin" with the following information: - Topic - Sender (formatted name with the user preferences) - Date (date and time) - Priority low - Message - Attach (name of all attach files and links)

Basic Path

Download attach The user can download the attached file clicking on it.

Basic Path

Showing actions possible to do. Those are: - Move to Inbox - Delete Forever

Page 56: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 52 of 79

3.20.1. Prototype HTML

Page 57: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 53 of 79

3.21. Delete forever

Delete forever

Constraints

Pre-condition

Selecting the message. The user had to select one or more messages

Events flow

Basic Path

Delete message forever When the user clicks on “Delete forever”, the selected message or messages will be deleted forever.

Page 58: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 54 of 79

3.22. Move to Inbox

Move to Inbox

Constraints

Pre-condition

Selecting the message. The user had to select one or more messages.

Events flow

Basic Path

Move to Inbox The selected message(s) are sent to "Inbox"

Page 59: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 55 of 79

3.23. Message list

Show a user messages list.

Responsibilities (internal requirements)

Display

1- Truncating strings taking more than one line. Referring to the table showing the registers, when the text to type in a cell is going to take more than one line or the width is going to be changed, then the text will be truncated. Then the text will take only one line at the cell and in addition tree ellipsis will be set at the end. When the user approaches the mouse, then the complete content of the cell will be shown. For example: Correct:

No correct

IMPORTANT: The class to be created for this requirement will be reused by all the application. The class should be set at the "es.satec.kedros.logica.bean.common" package with FormatString.java method = truncateString()

Page 60: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 56 of 79

Display

2 - Formatting names The names format for other users shown at the screen are conditioned by the user preferentes. . They are 4 format options. - name - surname1 - surname2 --> value in database = 1 - name - surname1 - surname2 - ID --> value in database = 3 - surname1-surname2-name --> value in database = 2 - surname1-surname2-name-ID --> value in database = 4 To get those preferences the following QUERY has to be used SELECT preferences_user_format_name, FROM preferences_user WHERE preferences_user_owner = ?? (userId owner of preferences ) IMPORTANTE. MPORTANT: The clase to be created for this requirement will be reused by all the application. The clase should be set at "es.satec.kedros.logica.bean.common"package in Names.java method formatName() IMPORTANTE: All the dates showed on Kedros has to be formmated with this requirement.

Display

3 - Formatting dates The date is always shown with the format that user established on his preferentes. When approaching the mouse, the message sending time will be shown. They are two format options: - Data format European (dd/mm/yyyy) --> value in database = 1 - Data format American (mm/dd/yyyy) --> value in database = 2 To get those preferences the following QUERY has to be used:: SELECT preferences_user_dateformat, FROM preferences_user WHERE preferences_user_owner = ?? (userId owner of preferences ) IMPORTANTE. The clase to be created for this requirement will be reused by all the application. The clase should be set at the"es.satec.kedros.logica.bean.common" package in Dates.java method formatDate() IMPORTANT: All the dates showed on Kedros has to be formatted with this requirement.

Display

4 - Obtain icon of profile

Page 61: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 57 of 79

In some lists a column with the user profile is shown. To get the icon with a profile assigned following QUERY has to be executed. SELECT profile_icon_key FROM profile_icon, PROFILE WHERE (profile_id = profileIdForExtractKeyIcon) AND (profile_icon = profile_icon_id) In addition to the obtained string we set “.gif” then we have the icon name. The path for all the icons is \pages\css\stylexxx\images where xxx is the ide of the style in use. When the profile icon is shwon at the screen and we bring near the mouse, the profile name should be obtained with an “Alt” IMPORTANTE. The clase to be created for this requirement will be reused by all the application. The clase should be set at the “es.satec.kedros.logica.bean.common” package in ProfileIcon.java method getProfileIcon

Constraints

Pre-condition

Pre-selecting group of messages The user had to have executed one of the following items: - Search - Advanced Search - inbox - Output tray - Filter by last messages - Label selected

Pre-condition

Obtaining list of messages. The user displays the subject list of the messages in folder pre-selected

Events flow

Basic Path

Show list of messages - The system shows the list of messages Appling the previously selected criteria. - On the messages list head the selected criteria corresponding text will be shown. The following columns will be showed. Sel. ,(Sender or to), Topic, Profile ,date, Priority , Number of attach ,

Page 62: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 58 of 79

- The non read messages will appear in bold and the read ones will keep normal. - At the Sender field the full name of the sender user will be showed. IMPORTANT. Only when finding the output tray, then it will be showed at this column the legend TO. It contains the message receiver name. (If there are more than one receiver, then the word MANY will appear. When the mouse is close to this word a list of names are showed). - At the field Date the delivery date will be showed. When the mouse gets close the time of the delivery is showed. - When clicking in the Topic field, the system shows the message content through the use case “Read Message”. - At the Profile column an icon representing the message sender user profile will be shown. -At the column Priority an icon representing the sent message priority will be shown. High = red, Medium = yellow, low= green. - At the column Number of attach, the messages attached files will be shown.

Basic Path

Selecting messages. At the column Sel. A checkbox will be shown in every table row. The user can select the wanted registers to do any action over them. example : delete, mark as read, mark as unread, apply label. If we click on the column head, where “Sel” is set, all the screen visible registers will be selected automatically.

Basic Path

Showing possible actions to do The system will show to the user the possible actions to do with the selected messages. Those are: - Read message - Delete Message - Mark as read - Mark as unread - Apply Label (all the user label appear as available)

Page 63: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 59 of 79

3.23.1. Prototype HTML

Page 64: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 60 of 79

3.24. Read message

Read the message

Constraints

Pre-condition

Selecting the message. The user had to select a message.

Events flow

Basic Path

View the message The system shows to the user the selected message at the messages list with the following information.: - Topic - Sender (formatted name with the user preferences) - Date (date and time) - Priority low - Message - Attach (name of all attach files and links)

Basic Path

Download attach The user can download the attached file clicking on it.

Basic Path

Showing possible actions to do The system shows to the user the possible actions to do with the present reading message. Those are: - Reply - Forward

Page 65: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 61 of 79

- Print - Delete - Mark as read - Mark as unread - Apply Label ( Only the non-assigned labels to the message will be shown) - remove Label (Only the message assigned labels will be shown)

Page 66: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 62 of 79

3.24.1. Prototype HTML

Page 67: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 63 of 79

3.25. Mark as Unread

Mark messages as unread.

Constraints

Pre-condition

Selecting a message. The user had to select one or more messages.

Events flow

Basic Path

Apply unread. The message (s) are marked as unread and the screen will be refreshed.

Page 68: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 64 of 79

3.26. Mark as Read

Mark messages as read.

Constraints

Pre-condition

Selecting a message. The user had to select one or more messages.

Events flow

Basic Path

Apply read The message (s) are marked as read and the screen will be refreshed.

Page 69: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 65 of 79

3.27. Delete message

Send messages to the Recycled bin.

Constraints

Pre-condition

Permission for profile The user only can delete messages if the assigned profile to the user has to have permissions to: Allow message delete This is the functionality Id 22005 ='1'

Pre-condition

Selecting a message. The user had to select one or more messages.

Events flow

Basic Path

Delete mesage When the user clicks on "delete" button, the selected message(s) are sent to the "Recycle Bin" and the screen will be refreshed.

Page 70: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 66 of 79

3.28. Apply label

Apply label

Constraints

Pre-condition

Selecting the message. The user had to select one or more messages.

Events flow

Basic Path

Apply label. The selected message (s) are marked with this label.

Page 71: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 67 of 79

3.29. Remove label

Remove the label to the message.

Constraints

Pre-condition

Visualizing the message. The user has to be reading the message.

Pre-condition

Selected label to remove. The user had to select on the actions “select” the label name to remove from the message.

Events flow

Basic Path

Remove Label The system removes the label of the message.

Page 72: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 68 of 79

3.30. Forward

Forward a message

Constraints

Pre-condition

Permission for profile The user only can delete messages if the assigned profile to the user has to have permissions to: Allow send again This is the functionality Id 22004 ='1'

Events flow

Basic Path

Show form Show form The system shows a form with all the necessary fields to Forward a message. - in field "Topic" , will the original text of the "Topic", but adding the prefix "Fwd: " - in field "Attach". If exist attachments, then show all attachments with a check box pre-selected. The messages selected will be sent. - in field "Message" will the original text of the "Message", but adding the prefix "------ FORWARDED MESSAGE------ Message sent the day: 09/07/2008 Sent by : Administrador General del Campus To: name of user original receiver message Message:"

Basic Path

Fill in the form. Add receiver/s Fill in the form. Choose receiver/s Choose receivers will be clicked by the user to look for the message receivers See case of use “Choose Receivers”. It will give back a list of selected used ids. Using the back list ids from “Choose receivers”, the system will show all the receivers full names in the TEXTAREA. Property shows DISABLE now.

Page 73: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 69 of 79

<Validations> - The reveivers list CAN NOT BE empty (void).

Basic Path

Fill in the form. Attach - in field "Attach". If exist attachments, then show all attachments with a check box pre-selected. the messages selected will be sent. <Validations> - The user can only send files that will allow its profile (types and sizes. see validations in use case "New message")

Basic Path

Fill in the form. Rest of fields PRIORITY ---------------- The user will select the message priority among these 3 options:: -Low -Average -High TOPIC ---------- The user enters the text with a message Topic. - Max length = 70 MESSAGE ----------------- The user enters the text with the body message. - Max length = 4000

Basic Path

Forward message The user forward the message

Page 74: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 70 of 79

3.30.1. Prototype HTML

Page 75: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 71 of 79

3.31. Reply message

Reply a message

Constraints

Pre-condition

Permission for profile The user only can delete messages if the assigned profile to the user has to have permission to: Allow answer This is the functionality Id 22003 ='1'

Events flow

Basic Path

View form The system shows a form with all the necessary fields to reply a message. - In field “To,” view the sender of message - in field "Topic" , will the original text of the "Topic", but adding the prefix “Re: “ - in field "Message" will the original text of the "Message", but adding the prefix "------ ORIGINAL MENSSAGE------ Message sent the day: dd/mm/yyyy sent by : Administrador General del Campus Message:"

Basic Path

Fill in the form. Add receiver/s Choose receivers will be clicked by the user to look for the message receivers See case of use “Choose Receivers”. It will give back a list of selected used ids. Using the back list ids from “Choose receivers”, and adding the original sender of message, the system will show all the receivers full names in the TEXTAREA. Property shows DISABLE now. <Validations> - The receivers list CAN NOT BE empty (void).

Page 76: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 72 of 79

Basic Path Fill in the form. Attach The user can attach a maximum of 3 files <Validations> same like use case "new message"

Basic Path

Fill in the form. Rest of fields PRIORITY ---------------- The user will select the message priority among these 3 options:: -Low -Average -High TOPIC ---------- The user enters the text with a message Topic. <Validations> - Max length = 70 MESSAGE ----------------- The user enters the text with the body message. <Validations> - Max length = 4000

Basic Path

Reply Message The user reply the message

Page 77: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 73 of 79

3.31.1. Prototype HTML

Page 78: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 74 of 79

3.32. Print message

Print message

Constraints

Pre-condition

Permission for profile The user only can delete messages if the assigned profile to the user has to have permissions to: Allow pirnt Print Message This is the functionality Id 22020 ='1'

Events flow

Basic Path

Show message printing The system show the message formatted for printing

Basic Path

Print message The system, automatically displays the dialog box browse to print.

Page 79: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 75 of 79

3.32.1. Prototype HTML

Page 80: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 76 of 79

3.33. View data of user

The data to show will be obtained via ajax.

Responsibilities (internal requirements)

Via AJAX The data will be obtained with AJAX technology

Constraints

Pre-condition

Selected User A user has been selected previously or the mouse has been set over the name but no clicks on it.

Events flow

Basic Path

Showing window. The system shows a window (div) at the mouse position.

Basic Path

Showing information. The system shows the following information at the window: Name Profile City Country Department Picture with face of user (If the user has not a picture assigned an image will be set to default).

Page 81: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 77 of 79

3.33.1. Prototype HTML

Examples…

Page 82: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 78 of 79

Page 83: cahier de charges e-learning

Customer: SATEC Ref.:

Project: Kedros-LMS - JAVA Date: 15/07/2008

Author: Miguel Ángel Montañés State: Finish

Document: Work order 02 for Kedros-LMS. Messages

Page. 79 of 79

4. Database

The following tables and relations are relevants in module of Message:

class Partial_Model_Mail

ATTACH

«column»*pfK ATTACH_CREATOR: NUMBER(38)*pfK ATTACH_MESSAGE: NUMBER(38)*PK ATTACH_ID: NUMBER(38) ATTACH_PATH: CHAR(255 BYTE) ATTACH_FILE: CHAR(100 BYTE) ATTACH_SIZE: NUMBER(38) ATTACH_EXTENSION: CHAR(20 BYTE) ATTACH_TYPE_FILE: CHAR(50 BYTE) ATTACH_INT_FILE: CHAR(100 BYTE)

«PK»+ ATTACH_PKEY(NUMBER, NUMBER, NUMBER)

«FK»+ FK_ATTACH_ATTACH_ME_MESSAGE(NUMBER)+ FK_ATTACH_ATTACH_CR_USERS(NUMBER)

IMPORTANCE_LEVEL

«column»*PK IMPORTANCE_LEVEL_ID: NUMBER(38) IMPORTANCE_LEVEL_ICON: CHAR(50 BYTE)* IMPORTANCE_LEVEL_NAME: CHAR(50 BYTE) IMPORTANCE_LEVEL_DESCRIPTION: CHAR(400 BYTE)

«PK»+ PK_IMPORTANCE_LEVEL(NUMBER)

MESSAGE

«column»*PK MESSAGE_ID: NUMBER(38)*FK MESSAGE_CREATOR: NUMBER(38) FK MESSAGE_IMPORTANCE_LEVEL: NUMBER(38) MESSAGE_SUBJECT: CHAR(400 BYTE) MESSAGE_BODY: VARCHAR2(4000 BYTE) MESSAGE_TYPE: CHAR(2 BYTE) MESSAGE_SEND_DELETE: CHAR(1 BYTE) MESSAGE_DATE_CREATION: CHAR(14 BYTE) MESSAGE_ATTACH: CHAR(1 BYTE) MESSAGE_GROUP_EDITION: NUMBER(38)

«PK»+ PK_MESSAGE(NUMBER)

«index»+ IX_MESSAGE(NUMBER, CHAR)+ IX_MESSAGE2(NUMBER, CHAR)+ IX_MESSAGE3(NUMBER, NUMBER, CHAR)

«FK»+ FK_MESSAGE_MESSAGE_I_IMPORTAN(NUMBER)+ FK_MESSAGE_SEND_MESS_USERS(NUMBER)

RECEIVE_MESSAGE

«column»*FK MESSAGE_RECEIVE_SENDER: NUMBER(38)*FK MESSAGE_RECEIVE_MESSAGE: NUMBER(38)*FK MESSAGE_RECEIVER: NUMBER(38) MESSAGE_RECEIVE_DELETE: CHAR(1 BYTE) MESSAGE_RECEIVE_READ: CHAR(1 BYTE) MESSAGE_RECEIVE_DATE_READ: CHAR(14 BYTE) MESSAGE_RECEIVE_DATE_DELETE: CHAR(14 BYTE) MESSAGE_RECEIVE_USER_ALERTED: CHAR(1 BYTE)

«index»+ IX_RECEIVE_MESSAGE(NUMBER, CHAR, NUMBER)+ IX_RECEIVE_MESSAGE1(NUMBER, NUMBER, CHAR)+ IX_RECEIVE_MESSAGE2(NUMBER, CHAR, CHAR)+ IX_RECEIVE_MESSAGE3(NUMBER, CHAR, CHAR, NUMBER, CHAR)

«FK»+ FK_RECEIVE__USER_RECE_USERS(NUMBER)+ FK_RECEIVE__MESSAGE_R_MESSAGE(NUMBER)+ FK_RECEIVE__USER_SEND_USERS(NUMBER)

USERS

«column»*PK USER_ID: NUMBER(38) USER_ORGANIZATION: NUMBER(38)* USER_LOGIN: CHAR(25 BYTE) FK USER_ELE_ORGANIZATION: NUMBER(38) USER_PROFILE: NUMBER(38)* USER_PASSWORD: CHAR(10 BYTE) USER_CONEXION: CHAR(1 BYTE) USER_VIEW: CHAR(1 BYTE) USER_NAME: CHAR(50 BYTE) USER_NICK_NAME: CHAR(15 BYTE) USER_SURNAME_1: CHAR(50 BYTE) USER_SURNAME_2: CHAR(50 BYTE) USER_DELETE: CHAR(1 BYTE) USER_CONEXION_ACTIVE: CHAR(1 BYTE) USER_TYPE: CHAR(2 BYTE) USER_SESION: CHAR(400 BYTE) USER_PROFILE_TYPE: CHAR(2 BYTE) USER_EXPIRED_FLAG: CHAR(1 BYTE) USER_EXPIRED_INI: CHAR(8 BYTE) USER_EXPIRED_END: CHAR(8 BYTE) USER_ID_AICC: CHAR(256 BYTE) USER_ACTIVATIONCODE: CHAR(40 BYTE) USER_CODE_EXT: CHAR(50 BYTE) USER_LAST_UPDATE: CHAR(14 BYTE) USER_SCOPE: CHAR(2 BYTE) USER_QUESTION: CHAR(400 BYTE) USER_ANSWER: CHAR(400 BYTE) USER_SEND_STATUS: VARCHAR2(50 BYTE)

«PK»+ PK_USERS(NUMBER)

«index»+ IX_USERS(NUMBER, NUMBER, CHAR, CHAR, CHAR, CHAR, CHAR)+ IX_USERS1(NUMBER, NUMBER, CHAR, CHAR)+ IX_USERS2(NUMBER)+ IX_USERS3(NUMBER, NUMBER, NUMBER, CHAR)+ IX_USERS4(NUMBER)+ IX_USERS5(NUMBER, CHAR, NUMBER)+ IX_USERS6(NUMBER, , , , , NUMBER, CHAR)+ IX_USERS7(NUMBER, CHAR, CHAR, CHAR)+ IX_USERS8(, NUMBER)

«FK»+ FK_USERS1(NUMBER)

LABEL

«column»*PK LABEL_ID: NUMBER(38)* LABEL_NAME: CHAR(35)

«PK»+ PK_LABEL(NUMBER)

LABEL_MAP_MESSAGE

«column»*PK LABEL_MAP_ID: NUMBER(38)*FK LABEL_MAP_LABEL_ID: NUMBER(38)*FK LABEL_MAP_MESSAGE_ID: NUMBER(38)

«FK»+ FK_LABEL_MAP_MESSAGE_LABEL(NUMBER)+ FK_LABEL_MAP_MESSAGE_MESSAGE(NUMBER)

«PK»+ PK_LABEL_MAP_MESSAGE(NUMBER)

+FK_LABEL_MAP_MESSAGE_MESSAGE0..*

(LABEL_MAP_MESSAGE_ID = MESSAGE_ID)

+PK_MESSAGE

1 +FK_LABEL_MAP_MESSAGE_LABEL 0..*

(LABEL_MAP_LABEL_ID = LABEL_ID)

+PK_LABEL 1

+FK_RECEIVE__USER_SEND_USERS 0..*

(MESSAGE_RECEIVE_SENDER =USER_ID)

+PK_USERS 1

+FK_RECEIVE__USER_RECE_USERS

0..*

(MESSAGE_RECEIVER = USER_ID)

+PK_USERS

1

+FK_RECEIVE__MESSAGE_R_MESSAGE 0..*

(MESSAGE_RECEIVE_MESSAGE =MESSAGE_ID)

+PK_MESSAGE 1

+FK_MESSAGE_SEND_MESS_USERS

0..*

(MESSAGE_CREATOR = USER_ID)

+PK_USERS

1

+FK_MESSAGE_MESSAGE_I_IMPORTAN 0..*

(MESSAGE_IMPORTANCE_LEVEL =IMPORTANCE_LEVEL_ID)

+PK_IMPORTANCE_LEVEL 1

+_AAAFK_ATTACH_ATTACH_CR_USERS 0..*

(ATTACH_CREATOR =USER_ID)

+PK_USERS 1

+FK_ATTACH_ATTACH_ME_MESSAGE

0..*

(ATTACH_MESSAGE = MESSAGE_ID)

+PK_MESSAGE

1

its has been created two news tables. This are, LABEL and LABEL_MAP_MESSAGE. The script for created them is attachment with this document.