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:

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

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

Changes Control
Version 0.1 1.0 Date revision Changes summary Draft Firs official version

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 3.3. 3.4. 3.5. 3.6. 3.7. 3.8. 3.9. New message ................................................................................................4 Choose receivers / User list ...........................................................................8 by Department .............................................................................................11 Advanced search by department .................................................................13 By edition of course .....................................................................................16 Advanced Search by Edition of course ........................................................18 Search .........................................................................................................22 Advanced Search.........................................................................................25
3.2.1. Prototype HTML.................................................................................................. 7 3.3.1. Prototype HTML................................................................................................ 10 3.4.1. Prototype HTML................................................................................................ 12 3.5.1. Prototype HTML................................................................................................ 15 3.6.1. Prototype HTML................................................................................................ 17 3.7.1. Prototype HTML................................................................................................ 21 3.8.1. Prototype HTML................................................................................................ 24 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. i

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. ii

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 1 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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 Name: Package: Version: Author: Domain Class of Kedros-LMS Domain Class in Kedros-LMS (layer Delegate) 1.0 Miguel A. Montañés

UML. Domain diagram classes of Kedros-LMS
Platform

1..

1..* 0..* Organization 1 1 1..* 1 0..* NoteBook ElementOrganization 0..* 0..* 0..* Edition * Write UserEditionRegister 1 Classifies 0..* User 1 1 Define the rol of 1 0..* Profile LabelMessages 1..* 1 Define the behavior of 1 Forum is a 0..* ConectionAlert 0..* ConectionPursuit 0..* Service * DateAccess 1 receive course in 1..* 1 1 have 1 1..* Group the course is the content training of a edition 1 1..* 1 1 Classifies Entity 0..* 1

1..* ThematicArea 1 1 Classifies * MediaLibrary

Classifies 0..* Course 1..

Message

Send and receive message

Organize to

1 is a 1

1

1 is a 1 Chat

368 Functionality

NoticeBoard

1 Containt messages of 0..* ForumElement

Page. 2 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.

System Functional Specification

3.1.

Use Cases.
Here I show the cases of use at messaging system.

uc Message Module Use Cases

Name: Package: Version: Author:

Message Module Use Cases Message 1.0 Miguel A. Montañés New message «include» Choose receiv ers / User list

by Department

Adv anced search by department

Remov e label

By edition of course

Adv anced Search by Edition of course

«include»

Apply label

Search «extend»

Adv anced Search «include» Delete message

Inbox

Message list

«include»

Mark as Read

Output tray «include» User logged in Kedros-LMS (from Use Case for Kedros-LMS) «include» Filter by last messages Create Label «include» View data of user Mark as Unread «include»

«include»

«include»

«include»

Labels

Management of labels

Rename label «include»

Read message Delete label

«include» «include» «include» Delete forev er

«include» Recycle Bin Message list in recycle Bin Mov e to Inbox «include»

Forw ard «include» «include»

Reply message

Print message

Read Message in Recycled Bin

«include»

Figure1: Message Module Use Cases

Page. 3 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 4 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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 email with all the message data, included the attachments using its

Page. 5 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 6 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 7 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 8 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 9 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.3.1.

Prototype HTML

Page. 10 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 11 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.4.1.

Prototype HTML

Page. 12 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 13 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

<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. 14 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.5.1.

Prototype HTML

Page. 15 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 16 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.6.1.

Prototype HTML

Page. 17 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 18 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 19 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- - 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. 20 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.7.1.

Prototype HTML

Page. 21 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 22 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 23 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.8.1.

Prototype HTML

Page. 24 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 25 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

<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. 26 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 27 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 28 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.9.1.

Prototype HTML

Page. 29 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

Page. 30 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 31 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 32 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.10.1. Prototype HTML

Page. 33 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 34 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.11.1. Prototype HTML

Page. 35 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 36 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.12.1. Prototype HTML

Page. 37 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 38 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.13.1. Prototype HTML

Page. 39 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 40 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.14.1. Prototype HTML

Page. 41 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 42 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.15.1. Prototype HTML

Page. 43 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 44 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.16.1. Prototype HTML

Page. 45 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 46 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 47 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 48 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 49 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.19.1. Prototype HTML

Page. 50 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 51 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.20.1. Prototype HTML

Page. 52 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 53 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 54 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 55 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 56 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 57 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 58 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.23.1. Prototype HTML

Page. 59 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 60 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

- 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. 61 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.24.1. Prototype HTML

Page. 62 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 63 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 64 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 65 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 66 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 67 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 68 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

<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. 69 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.30.1. Prototype HTML

Page. 70 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 71 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 72 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.31.1. Prototype HTML

Page. 73 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 74 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.32.1. Prototype HTML

Page. 75 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

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. 76 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

3.33.1. Prototype HTML

Examples…

Page. 77 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

Page. 78 of 79

Customer: SATEC Project: Kedros-LMS - JAVA Author: Miguel Ángel Montañés Document: Work order 02 for Kedros-LMS. Messages

Ref.: Date: 15/07/2008 State: Finish

4.

Database

The following tables and relations are relevants in module of Message:
class Partial_Model_Mail (MESSAGE_RECEIVE_SENDER = USER_ID) +PK_USERS USERS «column» *PK USER_ID: NUMBER(38) USER_ORGANIZAT ION: NUMBER(38) * USER_LOGIN: CHAR(25 BYT E) FK USER_ELE_ORGANIZATION: NUM BER(38) USER_PROFILE: NUMBER(38) * USER_PASSWORD: CHAR(10 BYTE) USER_CONEXION: CHAR(1 BYT E) USER_VIEW: CHAR(1 BYT E) USER_NAME: CHAR(50 BYTE) USER_NICK_NAME: CHAR(15 BYT E) USER_SURNAME_1: CHAR(50 BYTE) USER_SURNAME_2: CHAR(50 BYTE) USER_DELET E: CHAR(1 BYT E) USER_CONEXION_ACTIVE: CHAR(1 BYTE) USER_TYPE: CHAR(2 BYTE) USER_SESION: CHAR(400 BYT E) USER_PROFILE_TYPE: CHAR(2 BYT E) USER_EXPIRED_FLAG: CHAR(1 BYT E) USER_EXPIRED_INI: CHAR(8 BYT E) USER_EXPIRED_END: CHAR(8 BYT E) USER_ID_AICC: CHAR(256 BYTE) USER_ACT IVAT IONCODE: CHAR(40 BYTE) USER_CODE_EXT : CHAR(50 BYT E) USER_LAST _UPDAT E: CHAR(14 BYTE) USER_SCOPE: CHAR(2 BYTE) USER_QUESTION: CHAR(400 BYT E) USER_ANSWER: CHAR(400 BYTE) USER_SEND_STAT US: VARCHAR2(50 BYT E) «PK» + PK_USERS(NUMBER) «index» + IX_USERS(NUMBER, NUMBER, CHAR, CHAR, CHAR, CHAR, CHAR) + IX_USERS1(NUMBER, NUM BER, CHAR, CHAR) + IX_USERS2(NUMBER) + IX_USERS3(NUMBER, NUM BER, 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) «column» *FK MESSAGE_RECEIVE_SENDER: NUMBER(38) *FK MESSAGE_RECEIVE_MESSAGE: NUM BER(38) *FK MESSAGE_RECEIVER: NUMBER(38) MESSAGE_RECEIVE_DELETE: CHAR(1 BYT E) MESSAGE_RECEIVE_READ: CHAR(1 BYT E) MESSAGE_RECEIVE_DATE_READ: CHAR(14 BYT E) MESSAGE_RECEIVE_DATE_DELET E: CHAR(14 BYT E) MESSAGE_RECEIVE_USER_ALERT ED: CHAR(1 BYT E) 0..* +FK_RECEIVE__USER_RECE_USERS «index» + IX_RECEIVE_MESSAGE(NUMBER, CHAR, NUMBER) + IX_RECEIVE_MESSAGE1(NUMBER, NUM BER, CHAR) + IX_RECEIVE_MESSAGE2(NUMBER, CHAR, CHAR) + IX_RECEIVE_MESSAGE3(NUMBER, CHAR, CHAR, NUMBER, CHAR) «FK» + FK_RECEIVE__USER_RECE_USERS(NUM BER) + FK_RECEIVE__MESSAGE_R_M ESSAGE(NUMBER) + FK_RECEIVE__USER_SEND_USERS(NUM BER) +FK_RECEIVE__MESSAGE_R_MESSAGE 0..* LABEL «column» *PK LABEL_ID: NUMBER(38) * LABEL_NAME: CHAR(35) «PK» + PK_LABEL(NUMBER) +PK_LABEL +PK_MESSAGE 1 1 1 +FK_RECEIVE__USER_SEND_USERS 0..* RECEIVE_MESSAGE

+PK_USERS (MESSAGE_RECEIVER = USER_ID) 1

(MESSAGE_RECEIVE_MESSAGE = MESSAGE_ID)

MESSAGE «colum n» *PK M ESSAGE_ID: NUMBER(38) *FK M ESSAGE_CREAT OR: NUMBER(38) FK M ESSAGE_IMPORTANCE_LEVEL: NUM BER(38) M ESSAGE_SUBJECT : CHAR(400 BYT E) M ESSAGE_BODY: VARCHAR2(4000 BYT E) M ESSAGE_TYPE: CHAR(2 BYTE) (MESSAGE_CREAT OR = USER_ID) M ESSAGE_SEND_DELET E: CHAR(1 BYT E) M ESSAGE_DAT E_CREATION: CHAR(14 BYT E) 0..* M ESSAGE_AT T ACH: CHAR(1 BYT E) +FK_MESSAGE_SEND_M ESS_USERS M ESSAGE_GROUP_EDIT ION: NUMBER(38) «PK» + PK_MESSAGE(NUMBER) «index» + IX_MESSAGE(NUMBER, CHAR) + IX_MESSAGE2(NUMBER, CHAR) IX_MESSAGE3(NUMBER, NUMBER, CHAR) 1 + «FK» + FK_MESSAGE_MESSAGE_I_IMPORTAN(NUMBER) + FK_MESSAGE_SEND_M ESS_USERS(NUMBER) 0..*

(LABEL_MAP_LABEL_ID = LABEL_ID)

+PK_USERS

+PK_MESSAGE 1 +FK_LABEL_MAP_M ESSAGE_LABEL 0..*

1

LABEL_M AP_M ESSAGE (LABEL_MAP_MESSAGE_ID = MESSAGE_ID) «column» *PK LABEL_MAP_ID: NUMBER(38) *FK LABEL_MAP_LABEL_ID: NUMBER(38) *FK LABEL_MAP_MESSAGE_ID: NUM BER(38) 0..* «FK» +FK_LABEL_MAP_MESSAGE_MESSAGE + FK_LABEL_MAP_MESSAGE_LABEL(NUMBER) + FK_LABEL_MAP_MESSAGE_MESSAGE(NUMBER) «PK» + PK_LABEL_MAP_MESSAGE(NUMBER) +FK_MESSAGE_MESSAGE_I_IMPORT AN

+PK_MESSAGE

+PK_USERS

1

(AT T ACH_CREAT OR = USER_ID) +_AAAFK_AT T ACH_AT TACH_CR_USERS 0..* ATTACH «column» *pfK AT TACH_CREATOR: NUMBER(38) *pfK AT TACH_MESSAGE: NUMBER(38) *PK AT TACH_ID: NUMBER(38) AT TACH_PAT H: CHAR(255 BYT E) AT TACH_FILE: CHAR(100 BYTE) AT TACH_SIZE: NUMBER(38) AT TACH_EXT ENSION: CHAR(20 BYT E) AT TACH_T YPE_FILE: CHAR(50 BYT E) AT TACH_INT _FILE: CHAR(100 BYT E) «PK» + AT TACH_PKEY(NUMBER, NUMBER, NUMBER) «FK» + FK_ATT ACH_AT T ACH_ME_MESSAGE(NUM BER) + FK_ATT ACH_AT T ACH_CR_USERS(NUMBER)

(AT T ACH_MESSAGE = MESSAGE_ID)

+FK_ATT ACH_AT T ACH_ME_MESSAGE 0..*

(MESSAGE_IM PORT ANCE_LEVEL = IMPORT ANCE_LEVEL_ID)

+PK_IMPORT ANCE_LEVEL

1

IMPORTANCE_LEVEL «colum n» *PK IMPORTANCE_LEVEL_ID: NUMBER(38) IMPORTANCE_LEVEL_ICON: CHAR(50 BYT E) * IMPORTANCE_LEVEL_NAME: CHAR(50 BYT E) IMPORTANCE_LEVEL_DESCRIPT ION: CHAR(400 BYT E) «PK» + PK_IMPORTANCE_LEVEL(NUMBER)

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

Page. 79 of 79

Sign up to vote on this title
UsefulNot useful