Professional Documents
Culture Documents
Contact Management
Software Requirements Specification
Team
Rhyzome
Team Members
Anita Kumawat
Meenakshi Garg
Sanjukta Sarkar
Shrinkhla Mishra
Project Guide
Mr. Vikas Manoria
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
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.
3
? 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.
? HTML: Hypertext Markup Language is a markup language used to design static web
pages.
? 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 server 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).
4
? 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
5
2) Overall Description:
Describe the general factors that affect the product and its requirements.
HTML
Client
HTTP/HTTPS
(Customer)
WAS DB2
Client
Software
(System User) TCP/IP
Application Database
Server Server
Client Side
? The web pages (XHTML/JSP) 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.
6
2.02) 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
7
maintained by the system.
2.06) User Characteristics: Every user should be comfortable of working with computer and net
browsing. He must have basic knowledge of English too.
2.07) 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
9
2.09) Architecture diagram:
Application Layer Business Layer Data Layer
Receivable_UI Receivable
Receivable
Product_UI Product
Product
SLA_UI SLA
SLA
Service_UI Service
Service
Service Service
Transaction_UI Transaction Service Transaction
System_Role ISA
Role_ID
Role_Name
System_Log
System User Has User_ID
System_Role_Task Activity
User_ID Date/Time
Role_ID Login_name
Task_ID Password_value
First_Name Group_User
Last_Name Makes Group_ID
User_ID
E-mail
Modified
Created
Group
Group_ID
Group_Name
Group_Description
System_Task System_task_Permission
Group_Customer
System_Permission Group_ID
Task_ID Task_ID Permission_ID
Task_Name Permission_ID Customer_ID
Permission_Name
11
Customer SLA
Customer_ID Contact _Person Receivables SLA_ID
Login_name Contact_ID Receivable_no Customer_ID
Password Contact_Name Receivable_for Product_ID
Company_Name Person_ID Date SLA_Name
Phone Department_Name Type_of_Payment Left_amount
Extension Have Salutation Mode_of_Payment Total_Cast
Fax Phone Check# SLA_Description
Address Extension Check_Bank SLA_Rule
City Mobile Check_Issue_date Resolution_Time
State Fax Check_Expiry_date Days
Country Address Check_Amount Time
Zip Code City DD# Minutes
Website State DD_Bank Terms_&_Conditions
E-mail Country DD_Issue Amount_left
Zip_Code DD_Expiry_Date
E-mail DD_Amount
Messanger_ID Cash_Amount
Reference_by Card#
Bank SLA_Service
Amount SLA_ID
Service_ID
Product
Sales Product_ID
Bill_No Description
Customer_ID Profit% Support_Transaction
Product_ID Unit_Measure SLA_ID
Purchase_Date Qty_in_Hand Service Contact_ID
Purchase_Time Reoreder_level Service_ID Mode_of_Transaction
Qty_Sold Sale_Price Description Subject
Supply_Date Cost_Price Price Date
Total_Amount Image Duration Time
Amount_Left Guaranty Support_Facility Transaction_Detail
Status Service_Manager
Launching_Date Support_Manager
Responder
Initiator
12
Account Manager
Sales Manager
Sales SLA
Customer SLA Sales
Group Group_Customer
Contact_Person Group Group_User
Receivable Group_User
Support Manager
SLA Support_Transaction
13
2.11) Assumptions and Dependencies:
? The details related to the product, customer, payment and service transaction
provided manually.
? Administrator is created in the system already.
? Roles and tasks are predefined.
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]
15
? 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
16
Post Condition: None
Select user
name
Select Date
17
ii) 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.
MANAGE CUSTOMERS
A d d n e w c o n ta c t p e r s o n s
A d d a n e w c o n ta c t s p e c i fic
need
18
? Name of the use case: Add a new contact specific need.
Description: To meet the specific needs of the customer, the sales manager can add a new
custom field for the customer.
Precondition: Sales manager is already logged in.
Normal flow of events:
? Select a customer.
? Enter the specific need of the customer.
? Save the new data.
? Creation of the contact specific need will be entered in the log.
Alternate flow of events:
? If the customer is not present, create the customer.
Post condition: None.
19
? Enter details of contact person.
? Save new data.
? Updation of the contact person will be entered in the log.
Alternate flow of events:
? If customer id not present create customer.
Post condition: None
Ask for a
customer
select customer
Display the details
of the customer
S tore changes
Add updation
i nformation in the log
20
Normal flow of events:
? Select customer.
? The details of customer viewed.
Alternate flow of events: None
Post condition: None.
Ask for
customer
Select customer
Display customer
personal details
<<include>>
Add purchase details
<<include>>
<<extend>>
<<include>>
Create a SLA
<<include>>
Update SLA
21
? 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
Ask for
product
Select product
invalid
Create
product
Valid
Store new
data
22
? Name of the use case: Update purchase.
Description: Any changes in product details can be made.
Precondition: Sales manager is already logged in. The product is already present.
Normal flow of events:
? Select product.
? Edit the data where needed.
? Save changes.
? Updation in purchase details will be entered in the log.
Alternate flow of events:
? If product doesn’t exist, create product.
Post condition: None.
Ask for
customer
S e lect customer
invalid
Create
customer
Valid
Ask for
product
S e le c t p r o d u c t
invalid
Create
product
V a lid
S e lect date
Purchase
details shown
U p d a te purchase details
S to r e
changes
S to r e u p d a t e
information in the logs
23
Precondition: Sales manager is already logged in. The product and the customer are already
present.
Normal flow of events:
? Select product.
? Select customer.
? The purchase details are shown to the sales manager.
Alternate flow of events:
? If the customer doesn’t exist, create customer.
? If the product is not present, create product.
Post condition: None.
Ask for
customer
Select customer
invalid
Create
customer
Valid
Ask for
product
Select product
invalid
Create
product
Valid
Select date
Purchase
details Shown
Ask for
customer
Select customer
invalid
Create
customer
Valid
Ask for
product
Select product
invalid
Create
product
Valid
Ask fo r one or
more services
Select service/s
25
? Name of the use case: Update service level agreement.
Description: To edit the details of the SLA made with the customer.
Precondition: Sales manager is already logged in. The product, customer and the services to be
provided are already present.
Normal flow of events:
? Select product.
? Select customer.
? Select date.
? Edit the details.
? Save the changes.
? Updations of the SLA will be entered in the log.
Alternate flow of events:
? If the customer doesn’t exist, create customer.
? If the product is not present, create product.
Post condition: None.
26
? Name of the use case: View service level agreement.
Description: To see the details of the agreement made with the selected customer.
Precondition: Sales manager is already logged in. The product, customer and the services to be
provided are already present.
Normal flow of events:
? Select product.
? Select customer.
? Select date.
? The details of the SLA are shown to the sales manager.
Alternate flow of events:
? If the customer doesn’t exist, create customer.
? If the product is not present, create product.
Post condition: None.
Ask for
customer
Select customer
invalid
C reate
customer
Valid
Ask for
product
Select product
C reate invalid
product
Valid
Select date
SLA details
Shown
27
MANAGE GROUPS
<<include>>
Create a group
A s k fo r
group name
S tore new
data
S tore add
information in log
28
Normal flow of events:
? Select group name.
? Select the customer.
? Add the customers to the selected group.
? Grouping information will be added in the log.
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 a
group name
select group
Select customer
Add customers to
the selected group
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.
29
Ask for
group name
<<include>>
Create product/service
details
<<include>>
<<include>>
Manage product/servi ce Update product/service
catalogue details
30
Ask for new
product data
Store new
data
[update ok]
[system error] Display
Creation information
stored in logs error
Display
conflict
S to r e n e w
data
[update ok]
[system error] Display
C reation information
s t o r e d i n lo g s error
Display
conflict
31
Alternate flow of events:
? If the product/service doesn’t exist then create product/service.
Post condition: None.
A s k fo r a
s e rvice
s e le c t s e r v i c e
D i s p la y t h e d e t a i l s
o f the s e rvic e
s e r v i c e d e ta i l s u p d a te d
S to r e c h a n g e s
A d d u p d a tio n
i n fo r m a t i o n i n t h e l o g
A sk for a
p ro d u c t
s e le c t p r o d u c t
D i s p la y th e d e ta i ls
o f the p r o d u c t
p r o d u c t d e ta i ls u p d a te d
S to r e c h a n g e s
A d d u p d a tio n
i n fo r m a t i o n i n t h e l o g
Ask for
product
Select product
? Manage Groups: Categorize the customers into local groups according to some criteria.
33
Manage Payment Transaction:
<<include>> <<extend>>
34
Alternate flow of event:
? If the receivables details will left to fill then system ask for refilling all the blank details then
save the details and update the account of the customer.
Post condition: None.
Store the
Receivables
[submission OK]
Update account of
customer
35
A s k fo r t h e
Bill num b e r
B i ll num b e r e n te r e d
[B i l l n u m b e r n o t f o u n d ] D i s p la y
error
[B i l l n u m b e r fo u n d ]
D i s p l a y f i l le d fo rm
o f r e c e i v a b le s
E d i ting done
[E r r o r f o u n d ] D i s p la y
E rror
[S u b m i s s i o n o k ]
S to r e
u p d a te d fo r m
U p d a te a c c o u n t o f
customer
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>>
Add Service
Transaction
<<include>> <<extend>>
Manage Service Update Service
Transaction Transaction
Edit Service
Transaction
36
? 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
37
Ask for
customer
customer entered
contact entered
SLA entered
Store new
data
Record add
transaction in log
38
? Select contact person
? Select SLA no
? Make changes in transaction
? Update the transaction
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 o n a 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
tra n s a c tio n
E d i t th e
tra n s a c tio n
S t o r e u p d a te d
tra n s a c tio n
R e c o rd e d i t
e n t e r y i n t o lo g
39
? 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.
40
Ask for
customer
Customer entered Ask for date/ time/ subject/ modeof
transaction/ service provider/ support manager
Ask for
SLA
SLA entered
Select transaction from
Select transactions according support transaction
to SLA
Display
transaction
DIsplay
transaction
Record view
Record view
entry into Log
entery in Log
41
Ask for
Ask for service customer
Customer entered
Service entered
Ask for
Ask for SLA cotact
Conta c t entere d
SLA entered
ASK fo r
Select SLA
customer
Display Display
transaction transaction
42
3.2) Supplementary Requirements:
? Have hours of operation that are 24 x 7 - Because system can be an automated
process, so it can stay open for 24 hours a day. If the base is now the entire world,
staying open 24 hours a day becomes critical. System is required to be available 24X7 so
UPS support must be on server site for at least 8 hours in case of power failure. System
will remain inaccessible to users at 2:00 to 4:00 am for backup and maintenance
purpose.
? Reduce the cost of a sales transaction - To the extent that one can automate the
sales process through this system, one can start to reduce the cost of that sales
transaction. This is particularly true of mundane sales transactions where the customer
knows what they want.
? Make the existing Web site more dynamic in nature - Many early Web
implementations consisted of static HTML pages. This becomes very difficult to manage
if the number of pages gets too large. An effective system should be largely dynamic
taking advantage of technology that automates this process rather than relying on manual
processes. Application should serve dynamic user based customized web pages to its
clients from server.
? Tie the existing Web site into existing enterprise systems – Any existing Web site
that relies on the manual duplication of data from another system is one that can be
improved. Most of the business data in the world today exists in enterprise servers that
can be connected to the Web servers to make this process far more effective.
? Provide good performance and the ability to scale the server– The Web
Application Server should provide good performance and the ability to manage
performance with techniques, such as support for caching, clustering, and load
balancing.
? Providing session management capability - Web application developers should not
spend valuable time worrying about how to maintain sessions within the application. The
Web Application Server should provide these services.
43