Professional Documents
Culture Documents
Specification
for
Prepared By:
Premsing Rathod
181070049
1
Index & Tables
1) Introduction:............................................................................................................................. 3
1.1) Purpose:............................................................................................................................ 3
1.2) Scope:............................................................................................................................... 3
1.3) Abbreviations:.................................................................................................................. 3
1.4) References:....................................................................................................................... 5
1.5) Technologies:.................................................................................................................... 5
2) Overall Description:................................................................................................................. 6
Product Perspective:................................................................................................................. 6
2.1) Software Interface:......................................................................................................... 7
2.2) Hardware Interface:........................................................................................................ 7
2.3) Communication Interface:.............................................................................................. 7
2.4) Product Function:............................................................................................................ 7
2.5) User Characteristics:....................................................................................................... 8
2.6) Constraints:..................................................................................................................... 8
2.7) Use-Case Model Survey:................................................................................................ 8
2.8) Architecture diagram:................................................................................................... 10
2.10) Database design:........................................................................................................... 11
2.11) Assumptions and Dependencies:..................................................................................14
3) Specific Requirements:........................................................................................................... 14
3.1) Use-Case Reports:.......................................................................................................... 14
3.2) Supplementary Requirements:........................................................................................ 43
1) Introduction:
1.1) Purpose: Contact Management is for establishing and sustaining the business relationships
by maintaining valuable customer information. It also integrates the Support Desk, which gives an
overall view of all the customer relationships. The central repository enables to track account -
level data, service level agreements, user contact information and product ownership details.
1.2) Scope:
Create different system users and assign different roles with related permissions.
Manage all the account details such as user name, company, phone numbers, address
websites, email addresses of all the customer from one central location.
Track all the customers and their contact details.
Maintain the services provided to the customer through Service Level Agreements.
Track all the payment details of the customer and their product ownership detail.
Group the contacts together in a single account according to some criteria.
Capture, View and edit all user transactions, including email, chats, and services calls in a
single system.
Confirmation of end user identity and will verify which users are authorized to receive
support.
Maintain history of each customer and their related information about the product sale,
SLA & support related transactions.
Anticipate the need and potential of sales opportunities.
View all the details of all the interactions made with the customer.
Activities like updations, creations done in the system by the system users will be
maintained in the form of logs for auditing and maintaining the integrity of the system.
1.3) Abbreviations:
SLA: SLA is a formal written agreement made between two parties .The service provider &
the service recipient. It defines the term of engagement - the fundamental rules that
will govern the relationship.
Support transaction: Communication between support manager and customer regarding
service provided, query & feedback for the product.
Payment transaction: Transaction between account manger and customer for all the
payment of it’s purchase of product and services.
Personal details: Details of customer such as username, company, phone number, address,
website, e-mail address etc.
Contact details: Details of contact persons associated with the company (customer).
Sales transaction: Transaction between sales manager and customer of the product sold.
J2EE: Java 2 Enterprise Edition is a programming platform— part of the Java Platform
— for developing and running distributed multitier architecture Java applications,
based largely on modular software components running on an application server.
DB2: DB2 Database is the database management system that delivers a flexible and cost-
effective database platform to build robust on demand business applications.
WAS: Web sphere application ser ver is an application server that runs business applications
and supports the J2EE and web services standards.
WSAD: Web sphere studio application developer is a toolkit which is designed for the
creation of more complex projects, providing fully dynamic web application
utilizing EJB’s . This consist of EJB tools , CMP ,data mapping tools & a universal
test client that is designed to aid testing of EJB’s.
HTTPS: Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer).
TCP/IP: Transmission Control Protocol/Internet Protocol, the suite of communication
protocols used to connect hosts on the Internet. TCP/IP uses several protocols, the
two main ones being TCP and IP.
1.4) References:
IEEE SRS Format
Problem Definition (Provided by IBM)
CT Arrington. Enterprise Java with UML. OMG Press.
1.5) Technologies:
J2EE: Application Architecture
DB2: Database
WSAD: Development Tool
WAS: Web Server
Rational: Design Tool
Client
HTTP/HTTPS
(Customer)
WAS
DB2
Client Software
(System User)
TCP/IP
Application Database
Server Server
Client Side
The web pages are present to provide the user interface on customer client side.
Communication between customer and server is provided through HTTP/HTTPS
protocols.
The Client Software is to provide the user interface on system user client side and for this
TCP/IP protocols are used.
On the server side web server is for EJB and database server is for storing the information.
2.2) Software Interface:
Client on Internet: Web Browser, Operating System (any)
Client Side
Processor RAM Disk Space
Internet Explorer Pentium II at 500 64 MB 1 GB
6.0 MHz
Server Side
Web sphere Pentium III at 1 512 MB 2 GB
application server GHz
V5.0
DB2 V8.1 Pentium III at 1 512 MB 1GB (Excluding
GHz data size)
Service Level Agreements: It contains the agreements of providing the services related to
product and customer.
User Contact Information: It maintains all the details (Personal, Official, Contact, and
Company) of the customer.
Product Ownership Details: It maintains the information that does which customer own
which product.
Track Support Transactions: Maintenance of transactions related to the services provided
to the customer in the form of support.
Maintaining Logs: Activities of the System Users can be tracked through the logs, which is
maintained by the system.
2.6) User Characteristics: Every user should be comfortable of working with computer and net
browsing. He must have basic knowledge of English too.
2.7) Constraints:
GUI is only in English.
Login and password is used for identification of customer and there is no facility for guest.
This system is working for single server.
There is no maintainability of back up so availability will get effected.
Limited to HTTP/HTTPS.
Manage Groups
Admin module: This is the main module where the administrator logins into the database.
All the admin details are stored with user id and password.
Contact module: This module allows the user to enter all the details like name, phone
number, address, website, facebook account details.
Insert module: In this module, all the details regarding contacts are inserted.
View module: This module allows the user to view a specific contact detail.
Search module: This module allows to search for the contact details by just entering its
name.
Software Requirements
Java
Class Diagram:
1. Administrator: Responsible for managing system users, viewing logs and managing standard groups of
the system.
Manage System Users: The Administrator will create different roles. The system users will be
created and will be assigned with the different roles. More than one task and permissions can be
granted or revoked from the system users.
View Logs: Responsible for checking the logs of different system user for auditing and
maintaining the integrity of the system.
Manage Standard Groups: Standard groups will be created and updated by the administrator,
which will be visible to all the system users.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
2. Sales Manager: Responsible for managing customer details, sales transaction, managing products, service
catalogs and grouping the related customers.
Manage Customers: Record details of new customers, update and view its details.
Create Sales Transaction: Record details of product sold, customer id, terms and conditions and
service level agreements.
Manage Product/Service Catalogue: Creation and updation of product/service details.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
Manage Groups: Categorize the customers into local groups according to some criteria.
3. Account Manager: Manage all the payment details (of the product or services purchased). Group the
customer according to some criteria.
Manage Payment Transaction: Store all the payment transactions made by the customer and
update the payment information.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
Manage Groups: Categorize the customers into local groups according to some criteria.
4. Support Manager: Responsible for entering details of daily service transactions with customer. He can
view customer's personal, official, payment details. He can view history of all the customers, edit the
customer transactions and can group the related customer.
Manage Service Transactions: Record and edit the details of the daily transactions of the
customer for a service.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
Manage Groups: Categorize the customers into local groups according to some criteria.
5. Customer: Person/ Company who is facilitated by the system.
View Own Details: Customer can view his personal details, payment details,
details about services provided and the transaction details for the services.
2.9) Architecture diagram:
Application Layer Business Layer Data Layer
Receivable_UI Receivable
Receivable
Product_UI Product
Product
10
SLA_UI SLA
SLA
Service_UI Service
Service
Service Service
Transaction_UI Transaction Service Transaction
11
2.10) Database design:
System_Role ISA
Role_ID
Role_Name
System_Log
System User Has User_ID
System_Role_Task Activity
User_ID
Date/Time
Role_ID Task_ID Login_name
Password_valu
Group_User
e First_Name Group_ID
Makes
Last_Name User_ID
E-mail Modified
Created
Group Group_ID
Group_Name
Group_Description
Sales SLA
Customer SLA Sales
Group Group_Customer
Contact_Person Group Group_User
Receivable Group_User
Support Manager
SLA Support_Transaction
3) Specific Requirements:
i) Administrator: Responsible for managing system users, viewing logs and managing standard groups
of the system.
Manage System Users: The Administrator will create different roles. The system users will
be created and will be assigned with the different roles. More than one task and permissions
can be granted or revoked from the system users.
View Logs: Responsible for checking the logs of different system user for auditing and
maintaining the integrity of the system.
Manage Standard Groups: Standard groups will be created and updated by the
administrator, which will be visible to all the system users.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
<<include>>
View System Users
<<include>>
14
Name of use case: View System Users
Description: View the list of system users in a role and view the details of
roles, tasks and permissions assigned to a system user.
Preconditions:
Administrator is already logged in.
System users have already been created and assigned some roles, tasks and permissions.
Normal flow of events:
The system user or a role will be selected.
Query will be submitted.
Relevant output will be displayed (If system user is selected then roles, tasks and
permissions assigned to one will be displayed and if role is selected then list of system
users assigned to that role will be displayed).
Alternate flow of events: None.
Post Condition: None.
[System
User]
Details of roles, tasks
and permissions of
selected user
Name of use case: Create System Users
Description: To create system users (Giving them a login name, password
and assign roles, tasks and permissions to them).
Preconditions: Administrator is already logged in.
Normal flow of events:
New Login name, password, details, roles, tasks and permissions will be entered.
Save the details.
Alternate flow of events:
A message appears for duplicate login name.
The administrator has to fill the details again.
Post condition: A login id is generated with its details.
User successfully
created
Select user
name
Select Date
MANAGE CUSTOMERS
A d d n e w c o n ta c t p e r s on s
A d d a n e w c o n ta c t s pe c i f i c nee d
Ask for a
customer
select customer
S tore changes
Add updation
i nformation in the log
Select customer
<<include>>
Add purchase details
<<include>>
<<extend>>
<<include>>
Create a SLA
<<include>>
Update SLA
Name of the use case: Add purchase details.
Description: Store the details of the product sold, customer id and supply details.
Precondition: Sales Manager is already logged in. The customer and the product are already
present.
Normal flow of events:
Select a customer.
Select a product.
Enter purchase details.
Save new data.
Creation of the purchase details will be entered in the log.
Alternate flow of events:
If the customer is not present, create the customer.
If the product doesn’t exist, create the customer.
Post condition: Product id is generated.
Ask for
customer
Select customer
invalid
Create
customer
Valid
Select product
invalid
Create
product
Valid
Store new
data
As k for
c ust omer
S e lect customer
invalid
Create
c ust omer
Valid
As k for
produ c t
S e lect product
invalid
Create
product
V a lid
As k for a dat e
S e lect date
P ur c ha s e details
shown
S to re update
information in the logs
Ask for
customer
Select customer
invalid
Create
customer
Valid
Select product
Create invalid
product
Valid
Select date
Purchase details
Shown
Select customer
invalid
Create
customer
Valid
Select product
Create invalid
product
Valid
Select service/s
Ask for
customer
Select customer
invalid
Create
customer
Valid
Select product
Create invalid
product
Valid
Select date
SLA details
Shown
MANAGE GROUPS
<<include
>> Create a
group
Manage <<include
>>
groups
Group the related customers
As k fo r group
name
S tore add
information in log
Ask for a
group name
Select customer
Add adition
information in the log
Name of the use case: View the customers in the selected group.
Description: The customers added in a group can be viewed.
Precondition: Group name and customer should be already present.
Normal flow of events:
Select group name.
The customers in the selected group is shown.
Alternate flow of events:
If the group doesn’t exists, create a group name
If the customer is not present, create the customer.
Post condition: None.
Ask for
group name
<<include
>>
Create
product/service
<<include details
>>
<<include>>
Manage product/service Update product/service details
catalogue
[update
ok]
[system Displa
Creation
error] y error
information
stored in logs
[Duplicate product found]
Display conflict
As k for new
service data
[update ok]
[system error] Dis play
C reation information
stored in log s error
Dis p la y conflict
A s k f o r as
ervice
s e le c t s e r v i c e D i
s p la y th e d e t a il s
o f th e s e r v i c e
s e r v i c e d e ta il s u p d a t e d
S to r e c h a n g e s
Addupdation
i n fo r m a t i o n i n th e lo g
A s k for a
p rodu c t
s e le c t p rodu c t D i
s p la y the d e ta i ls
o f th e produ c t
p rodu c t d e ta i ls upda te d
S tore c h a n g e s
A d d u p d a t ion
i n fo rm a t ion i n the l o g
Manage Groups: Categorize the customers into local groups according to some criteria.
Manage Payment Transaction:
<<include <<extend
>> >>
{or} Add payment
transaction
<<include>> details <<extend
Manage payment >> Update the account
transaction details of customer
Store the
Receivables
[Found error]
D isplay
error
[submission OK]
Update account of
customer
Upda te a cc ount of c u
st o m e r
iv) Support Manager: Responsible for entering details of daily service transactions with
customer. He can view customer's personal, official, payment details. He can view history of all
the customers, edit the customer transactions and can group the related customer.
Manage Service Transactions: Record and edit the details of the daily transactions of the
customer for a service.
View All Details: View the customer details, payment details, purchase details, daily service
transaction details.
Manage Groups: Categorize the customers into local groups according to some criteria.
<<include>>
AddService Transaction
Edit Service
Transaction
Name of use case : Add Service Transaction
Description : To add new transaction with a customer.
Normal flow of event :
Select the customer or enter name of responder
Select the contact person
Select SLA No
Enter the mode of transaction
Mode of transaction may be
e-mail
chats
service calls
meetings
Enter date and time
customer entered
SLA
SLA entered
Record add
transaction in log
A s k fo r
C u s to m e r
C u s to m e r e n te r e d
A s k fo r c
o n ta c t
c ona tc t e n te r e d
A s k fo r S L A
S L A e n te r d
D i s p la y
tr an s a c t i o n
E d i t th e
tr a n s a c t i o n
S t o r e u p d a te d tr
an s a c t i o n
R e c o rd e d i t
e n te r y i nt o lo g
Name of use case : View history of customer
Description : Support manager can view history of customers according to many
criteria, like
Customer name
Contact person
Product/ Service
Date
Time
Transaction mode
e-mail
chat
service calls
meetings
Subject
Feedback
Discussion of product/service
Name of the service provider
Name of support manager
Normal flow of events :
Select a criteria stated above
History will be visible to support manager
Support manager can delete transaction
Post condition: Activities are registered in Log.
Assumptions: Use cases Manage customer, Create sales transaction, Manage product/ service
catalog has been created.
Ask for customer
Customer entered
Askfor date/time/ subject/ modeof
Ask for SLA transaction/
serviceprovider/supportmanager
SLA entered Select
Display
Transaction
DIsplay
transactio
n
Recovering
entry into log
Record
view entery
in Log
Ask for customer
Ask for
service Customer entered Ask for
cotact
Display Display
transactio transaction
n