Global Communications Customer Relationship Management Software Architecture Document
Global Communications Customer Relationship Management Software Architecture Document
Global Communications Customer Relationship Management Software Architecture Document
Version:
<1.0>
Date: <30/11/02>
Revision History
Date
30/11/02
Confidential
Version
1.0
Description
This document provides a comprehensive
architectural overview of the system, using
a number of different architectural views to
depict different aspects of the system.
Author
Palkar, Abhay N.
Page 2 of 12
Version:
<1.0>
Date: <30/11/02>
Table of Contents
1.
Introduction
1.1
Purpose
1.2
Scope
1.3
Definitions, Acronyms and Abbreviations
1.4
References
1.5
Overview
2.
Architectural Representation
3.
4.
Use-Case View
4.1
Use-Case Realizations
4.1.1 Use Case realizations for Access Control Use Case Scenario
5.
Logical View
5.1
Overview
5.2
Architecturally Significant Design Packages
5.2.1 Design Model For Access Control Design Scenario
6.
Deployment View
6.1
Overview
7.
Implementation View
7.1
Overview
8.
9.
Quality
9.1
Quality assurance and standards
9.2
Quality planning
9.3
Quality control
Confidential
11
Page 3 of 12
Version:
<1.0>
Date: <30/11/02>
Introduction
1.1
Purpose
This document provides a comprehensive architectural overview of the system, using a number of different
architectural views to depict different aspects of the system. It is intended to capture and convey the
significant architectural decisions which have been made on the system.
1.2
Scope
This Software Architecture Document applies to the Customer Relationship Management, which will be
developed by Precise Solutions Inc. This document provides an overview of the architecture and modeling
instructions. The software architecture document provides a comprehensive overview of the architecture of
the system
1.3
1.4
References
Business Case (Version 2.0)
Vision Document (Version 2.0)
Requirements Engineering Processes and Techniques; Gerald Kotonya & Ian Sommerville; John Wiley
& Sons Publishing; March 2001
Software Project Management: A Unified Framework by Walker Royce.
The Unified Software Development Process by Ivar Jacobson, Grady Booch, James Rumbaugh
1.5
Overview
This document describes the architecture of the Customer Relationship Management. The description of
non-functional constraints is given in Architectural Goals and Constraints section. Use cases and their
realization is given in Use Case View section. Static decomposition of the system is presented in Logical
View section. Miscellaneous discussion of other architectural issues, like components of the system, is
presented in the last sections. The software architecture document provides a comprehensive overview of
the architecture of the software system
2.
Architectural Representation
This document presents the architectural as a series of views: use case view, Logical view, deployment
view, and implementation view. These views are presented as Rose Models and use the Unified Modeling
Language (UML).
The following table enumerates the views that are necessary, and for each view, explains what types of
model elements are contained.
Confidential
Page 4 of 12
Version:
<1.0>
Date: <30/11/02>
2.
Logical View
Design Model:
1.
2.
Deployment View
Deployment Model:
Model Elements: Objects and Interfaces
Implementation View
3.
Confidential
Page 5 of 12
4.
4.1
Version:
<1.0>
Date: <30/11/02>
Use-Case View
Use-Case Realizations
The use case view will consist of a division of the various tasks that the distinct stakeholders can perform
with the system using actors and use cases. This view will be used to derive, elicit and validate the different
requirements of the system. The following use case view show the architecturally significant classes in the
use case diagram made using Rational Rose.
customer
crmEmployee
complaints
querying_Mailing
newProducts_Promotions
register
modifyProfile
Actors. There are two types of actors in the system: the customer and the crmEmployee
actor. Each of them will have access to the system, the web pages namely, through different
interfaces and will accordingly use the related routines to be serviced appropriately.
Use Cases. Five main use cases have been decided to manage the system. These are the
register and the modifyProfile functions used by the customer , the querying_Mailing
operation
performed
by
the
crmEmployee
and
the
feedbacks
and
Page 6 of 12
Version:
<1.0>
Date: <30/11/02>
system , may edit and modify his/her customer information kept in system database due to
registration or may write and send feedback messages to the CRM module. On the other hand,
the crmEmployee has the tasks of performing customer based database queries and sending
related mails , reading the feedback messages created by customers and updating/modifying
campaign and promotion news which will be exposed to customers later.
5.
Logical View
5.1
Overview
The logical view will be used to decompose the system into a set of key abstraction that will be utilized to
fulfill the functional requirements of the system. It will provide a high-level breakdown of the system in
terms of objects and object classes and their relations.
Confidential
Page 7 of 12
Version:
<1.0>
Date: <30/11/02>
<<Form>>
loginForm
customerID : String
password : String
complaintTable
eMailList
addComplaint()
1
1..n
0..n
<<Form>>
complaintForm
customerID : String
complaintText : String
customerTable
passwordTable
fieldCheck()
modifyCustomer()
addCustomer()
executeQuery()
getCustomerInfo()
1
getComplaint()
checkPassword()
<<Class Module>>
mailSender
sendMail()
1..n
<<Form>>
regForm
customerID : String
DBData
<<Form>>
productsForm
<<Form>>
queryForm
showForm()
Confidential
Page 8 of 12
Version:
<1.0>
Date: <30/11/02>
6.
Deployment View
6.1
Overview
The deployment view will also be used to represent non-functional requirements. This view will show how
the different processes identified in the process view are mapped to the different processing nodes
available.
Profiles
Users
DMS
Central Database
Documents
Documents
Documents
Documents
Confidential
Page 9 of 12
Version:
<1.0>
Date: <30/11/02>
Server
Server
Server
Server
Server
ERP
Server
SCM
Webserver
Legacy System
Webserver
Application
Development QA
Firewall
Content Creation
User
User
Dtabase
Database
App Server
App Server
User
Database
Raid Disk
PC
Fax
PDA
Mobile Email
Call Center
Confidential
Page 10 of 12
Version:
<1.0>
Date: <30/11/02>
7.
Implementation View
7.1
Overview
The implementation view depicts how the system will be physically decomposed. This view is intended to
show how the system will be organized in terms of libraries and subsystem. Looking at this view, it will be
easy to see which components are shared among the different modules of the system.
Responsibility Mgmt
Component
Reports
Component
Campaign Mgmt
Component
WorkFlow Mgmt
Component
Customer Mgmt
Component
Email Mgmt
Component
CRM
EXE
Security
Component
Access Control
Component
User Interface
Component
Web Support
Component
Business Logic
Component
8.
9.
Availability: CRM should be available 24 hours per day, 7 days per week. Maintenance access
period is a month. Database is backed up.
Maximum Bugs or Defect Rateless than 1minor bug per 1000 lines of code.
Bugs or Defect Rate: No critical bug that causes data loss or system crash is allowed.
Quality
Confidential
Page 11 of 12
Version:
<1.0>
Date: <30/11/02>
The software architecture supports the quality requirements, as stipulated in the Vision Document.
1.
2.
The user interface of the Customer Relationship Management shall be designed for ease-of-use.
3.
4.
CRM should be available 24 hours per day, 7 days per week. Maintenance access period is a
month. Database is backed up.
5.
Each feature of the CRM shall have built-in online help for the user. Online Help shall include
step-by-step instructions on using the System. Online Help shall include definitions for terms and
acronyms.
6.
Upgrades to the PC client portion of CRM shall be downloadable from the Application Server
over the intranet.
7.
This system will be able to be used all the time, except for when the system is performing periodic
backups.
8.
In case of CRM, No critical bug that causes data loss or system crash is allowed.
The following table shows the performance, robustness, fault tolerance, functionality, supportability, User
friendly and usability requirements and their expected performance to get approved.
Confidential
Requirements
MAX
MIN
Expected
Performance
(User/event
Response time)
Robustness
Fault Tolerance
Functionality
Supportability
User Friendly
Usability
5s
2s
2.5 s
99%
99%
98%
97%
Good
Excellent
96%
98%
96%
95%
Fair
Good
98 %.
99%
98%
97%
Good
Good
Page 12 of 12