Email Moderation Engine
Software Requirements Specification
Version 1.0
Group Id:
Supervisor Name: Tanweer Arshad
Submitted By: Muhammad Irfan Jamil (mc090206487)
Revision History
Date Version Description Author
(dd/mm/yyyy)
1.0 E-Mail moderation Engine
Introduction- SRS
1.1 E-Mail moderation Engine
Introduction- SRS
Table of Contents
Revision History ........................................................................................................................... i3
Table of Contents ........................................................................... Error! Bookmark not defined.
1.0. Introduction ............................................................................................................................. 4
1.1. Purpose.......................................................................................................................................... 4
1.2. Scope of Project ............................................................................................................................. 4
2.0. Functional and Non-Functional Requirement .................................................. 5
2.1 Functional Requirement ............................................................................................................ 5
2.2 Non Functional Requirements ................................................................................................... 6
2.2.1 Authentication Checking.................................................................................................... 6
2.2.2 Security .............................................................................. Error! Bookmark not defined.
2.2.3 Portability.......................................................................................................................... 6
2.2.4 Development Tools............................................................................................................ 6
2.2.5 CMM Enviroment ............................................................................................................. 6
3.0. Use Case Daigram ......................................................................................................... 8
4.0. Use Case Scenarios ....................................................................................................... 9
4.0.1 Usage Scenarios ........................................................................................................................ 9
4.1 Login ........................................................................................................................................ 9
4.2 Email Flags ................................................................................ Error! Bookmark not defined.
4.3 High Priority Urgent Mail .......................................................... Error! Bookmark not defined.
4.4 High Priority Mail ...................................................................... Error! Bookmark not defined.
4.5 Low Priority Mail....................................................................... Error! Bookmark not defined.
4.6 Set reminder............................................................................... Error! Bookmark not defined.
4.7 High Priority with reminder date defined .................................... Error! Bookmark not defined.
4.8 Low Priority with reminder date defined ..................................... Error! Bookmark not defined.
4.9 Notifier ...................................................................................... Error! Bookmark not defined.
4.10 SMS Alerter ............................................................................... Error! Bookmark not defined.
SRS Document
1.0. Introduction:
1.1 Purpose:
The main purpose to develop this E-Mail Moderation Engine is to help a user by
prioritizing his/her daily e-mails. In large-scale organizations there is a lot of communication
with administration, employees or colleagues. E-mails are various in types and act to do in
nature. Some emails are high priority but with less urgency and some with less priority and
general notification. To sort their inbox and read important mails from a long list emails within
time its hard job. To avoid such mishap, this application acts for email moderation. It will help
the user to categorize their emails as per the e-mail’s urgency and priority level, and also help
user to notify him/her with SMS alert about important e-mails.
1.2 Scope:
In corporate organizations there is a lot of communication with administration,
employees or colleagues. This communication varies in nature and different in priority. E-mail is
easy and adoptive way to communicate on large scale. E-mails are various in types and act to do
in nature. Some are high priority but with less urgency and some emails are less priority and
general notification. In view of ever increasing amount of email trafficking in an organization, it
is often observed that some of the important emails that have high priority but have to be replied
on time. This program will help the user by
i. Categorizing/prioritizing e-mails according to user demand and organizational
ranks.
ii. Inform the user about his important mail through SMS (Short Messaging Service)
alert.
This software system will be E-mail moderation engine. This engine is designed to maximize the
user productivity time and workload. This email moderation engine is named as “Corporate Mail
Manager” or in short “CMM”.
2.0. Functional and non Functional Requirements:
2.1 Functional Requirement:
The “Corporate mail manager” will have following functional
components
Requirement Definition
User can login to his/her email through CMM (Corporate Mail Manager).
FR – 1
CMM will fetch the user emails from his/her inbox.
FR – 2
CMM will flags incoming mails automatically in following categories
i) High Priority Email Urgent Mail
ii) High Priority Email
FR – 3
iii) High Priority Email With Reminder Date Defined
iv) Low Priority Email
v) Low Priority Email with Reminder Date Defined.
User will get the pop up notification about number of high priority and low priority
FR – 4 emails must be replied today.
User reads his/her emails. All the emails will be displayed in separate panes of window in
FR – 5 horizontal Bars according to the flagged category of the email priority.
Provide the user an interface to flags the important Emails.
FR – 6
User will be sent mobile alert automatically for the emails that are schedules to be
FR – 7 replied today.
The confirmation email will be resent to the user in inbox after the user has received the
FR – 8 notification at mobile and pc.
There will be a separate mobile message alert for each high priority email.
FR – 9
User can logoff from inbox and exit from CMM
FR – 10
2.2 Non-Functional Requirement:
Non functional requirements of the “CMM” are as follows
2.2.1 Authentication Checking:
With this checking, the system will not allow unauthorized user to
perform functionalities that he/she does not allowed to do.
2.2.2 Security:
CMM does not allow users to view other user’s details for privacy and
security reason.
2.2.3 Portability:
CMM must be portable between Microsoft Windows and Linux.
2.2.4 Development tools:
“CMM” initially developed in
Language = Java and C++ Languages
Database = “My SQL” or “SQL server” as database to store and retrieve emails.
Mail Server = Apache or tomcat
OS = Windows XP Service Pack 2.
2.2.5 CMM Environment:
“CMM” will be cross platform application. This will support
Microsoft platform and *inux. Minimum hardware requirements are
Processor: Intel Pentium III or Higher
RAM: 512MB or Higher
Hard Disk: Min 1 GB
Supported OS: Microsoft platform (Windows XP, Vista and Window 7)
Red Hat Enterprise Linux 5.4 and CS OS 5.4 and other OS
which uses the kernel 2.6 (stable release).
3.0 Use Case Diagram:
4.0 Usage Scenarios:
Use Case ID Use Case Name
UCS - 1 Login
UCS - 2 Email Flag
UCS - 3 High Priority Urgent
UCS - 4 High Priority
UCS - 5 Low Priority
UCS – 6 Set reminder
UCS- 7 High Priority With Reminder Date Defined
UCS- 8 Low Priority With Reminder Date Defined
UCS- 9 Notifier
UCS- 10 SMS Alerter
4.1 LOGIN
Use Case ID: UCS-01
Use Case Title: Login
Requirement ID:
Actor: User
Action: User will put his ID and password.
Description: The user has to put his correct account ID and password a login
window to MMC.
Preconditions: Mail client will be running.
Alternative path: In case of wrong username or password user will show a message
box that you entered wrong username or password, try again.
Post conditions: User will login the “CMM” to use the system.
Exceptional Path: Mail Client may be not running.
User can enter wrong ID or password
4.2 EMAIL FLAGS
Use Case ID: UCS-02
Use Case Title: E mail flag
Requirement ID:
Actor: User
Action: User can set priority flags to his/her mails.
Description: Using this option, user will set the priories of e-mails.
Preconditions: User should be login to his mail account on ”CMM”.
Alternative path: None
Post conditions: Priority will be set for emails .
Exceptional Path: No email is there in inbox.
User do not select any email.
4.3 HIGH PRIORITY URGENT MAIL
Use Case ID: UCS-03
Use Case Title: HIGH PRIORITY URGENT
Requirement ID:
Actor: User
Action: User can set to high priority urgent mail.
Description: Using this option, user will set the priority of e-mails. This option will
set priority to high urgent e-mail
Preconditions: User should be login to his mail account on ”CMM”.
Alternative path: None
Post conditions: Now selected mail is set as highest priority.
Exceptional Path: No email is there in inbox.
User does not select any email.
4.4 HIGH PRIORITY MAIL
Use Case ID: UCS-04
Use Case Title: High Priority
Requirement ID:
Actor: User
Action: User can set to high priority mail.
Description: Using this option, user will set the priority of e-mails. This option will
set priority to high priority e-mail
Preconditions: User should be login to his mail account on ”CMM”.
Alternative path: None
Post conditions: Now selected mail is set as high priority.
Exceptional Path: No email is there in inbox.
User does not select any email.
4.5 Low PRIORITY MAIL
Use Case ID: UCS-05
Use Case Title: Low Priority
Requirement ID:
Actor: User
Action: User can set mail to low priority mail.
Description: Using this option, user will set the priority of e-mails. This option will
set priority to low priority e-mail
Preconditions: User should be login to his mail account on ”CMM”.
Alternative path: None
Post conditions: Now selected mail is set as Lowest priority.
Exceptional Path: No email is there in inbox.
User does not select any email.
4.6 SET REMINDER
Use Case ID: UCS-06
Use Case Title: Set Reminder
Actor: User
Action: User can set reminder for mail according to date and time.
Description: The user Set the reminder. When the date and time reaches, user will be
shown a pop up message if logged in
If user not logged in then a notification e-mail and sms will be
sent by mail client.
Preconditions: User should be login to his mail account on ”CMM”.
User should have some emails in inbox
Alternative path: If the user do not even read the mails after receiving the email
notifier then Email client sent the SMS on the user account.
Post conditions: The system remind the user to read his important mails
The user will read all his important mail
Exceptional Path: The system do not allow show the reminder if it is not set.
User does not select any email.
4.7 HIGH PRIORITY WITH REMINDER DATE DEFINED
Use Case ID: UCS-07
Use Case Title: High priority with Reminder date defined
Requirement ID:
Actor: User
Action: User can set reminder high priority with reminder date defined.
Description: Using this option, user will set the priority of e-mails. This option will
set priority to low priority e-mail
Preconditions: User should be login to his mail account on ”CMM”.
User should have some emails in inbox.
Alternative path: None
Post conditions: Now selected mail is set as High priority with reminder date defined.
Exceptional Path: No email is there in inbox.
User does not select any email.
No Reminder date or time defined for selected mail.
4.8 LOW PRIORITY WITH REMINDER DATE DEFINED
Use Case ID: UCS-08
Use Case Title: Low priority with Reminder date defined
Requirement ID:
Actor: User
Action: User can set reminder low priority with reminder date defined.
Description: Using this option, user will set the priority of e-mails. This option will
set priority to low priority e-mail with reminder date defined.
Preconditions: User should be login to his mail account on ”CMM”.
User should have some emails in inbox.
Alternative path: None
Post conditions: Now selected mail is set as low priority with reminder date defined.
Exceptional Path: No email is there in inbox.
User does not select any email.
No Reminder date or time defined for selected mail.
4.9 Notifier
Use Case ID: UCS-09
Use Case Title: High priority with Reminder date defined
Requirement ID:
Actor: Mail Client
Action: Mail client will notify to user about mails act to do today.
Description: When user logs in he/she will be showed a notification box about the
high priority emails by mail client
Preconditions: User should be login to his mail account on ”CMM”.
User should have some emails in inbox.
Alternative path: None
Post conditions: Now selected mail is set as High priority with reminder date defined.
Exceptional Path: No email is there in inbox.
Pop up will not show.
4.10 SMS alerter
Use Case ID: UCS-10
Use Case Title: SMS Alerter
Requirement ID:
Actor: Mail Client
Action: Mail client will send a shot message to user on his/her mobile.
Description: User will receive a alert message on his/her mobile for a specific
priority mail to be replied today
Preconditions: User should have some emails in inbox.
User receive a message for high priority mail
Alternative path: None
Post conditions: Now selected mail is set as High priority with reminder date defined.
Exceptional Path: No email is there in inbox.