CUSTOMER SERVICE AND MAINTENANCE SYSTEM ADAM BIN ...
Transcript of CUSTOMER SERVICE AND MAINTENANCE SYSTEM ADAM BIN ...
CUSTOMER SERVICE AND MAINTENANCE SYSTEM
ADAM BIN SHAMSUDIN
UNIVERSITI TEKNOLOGI MALAYSIA
PSZ 19:16 (Pind. 1/97)
UNIVERSITI TEKNOLOGI MALAYSIA
BORANG PENGESAHAN STATUS TESIS♦
JUDUL: CUSTOMER SERVICE AND MAINTENANCE SYSTEM
SESI PENGAJIAN : ________________
Saya ___________________________________________________________________
(HURUF BESAR)
mengaku membenarkan tesis (PSM/Sarjana/Doktor Falsafah)* ini disimpan di Perpustakaan Universiti Teknologi Malaysia dengan syarat-syarat kegunaan seperti berikut:
1. Tesis adalah hakmilik Universiti Teknologi Malaysia. 2. Perpustakaan Universiti Teknologi Malaysia dibenarkan membuat salinan untuk tujuan
pengajian sahaja. 3. Perpustakaan dibenarkan membuat salinan tesis ini sebagai bahan pertukaran antara institusi
pengajian tinggi. 4. **Sila tandakan ( √ )
(Mengandungi maklumat yang berdarjah keselamatan atau SULIT kepentingan Malaysia seperti termaktub di dalam AKTA RAHSIA RASMI 1972)
TERHAD (Mengandungi maklumat TERHAD yang telah ditentukan oleh organisasi atau badan penyelidikan dijalankan)
TIDAK TERHAD
Disahkan oleh
__________________________ ___________________________
(TANDATANGAN PENULIS) (TANDATANGAN PENYELIA)
Alamat tetap:
____________________________
____________________________ ________________________________
____________________________ Nama penyelia
Tarikh: ________________________ Tarikh: ______________________
CATATAN: * Potong yang tidak berkenaan ** Jika tesis ini SULIT atau TERHAD, sila lampirkan surat daripada pihak
berkuasa/organisasi berkenaan dengan meyatakan sekali sebab dan tempoh tesis ini perlu dikelaskan sebagai SULIT atau TERHAD.
♦ Tesis dimaksudkan sebagai tesis bagi Ijazah Doktor Falsafah dan Sarjana secara penyelidikan, atau disertasi bagi pengajian secara kerja kursus dan penyelidikan, atau Laporan Projek Sarjana Muda (PSM).
ADAM BIN SHAMSUDIN ( 801229-14-5479 )
2005/2006
√
C-3-3 SD Courts, Psn Kenanga,
Bandar Sri Damansara,
52200 Kuala Lumpur.
Assoc. Prof. Dr. Harihodin Selamat
16 April 2006 16 April 2006
“I hereby declare that I have read this thesis and in my opinion
this thesis is sufficient in terms of scope and quality for the
award of the degree of Master of Science (Information
Technology – Management)”.
Signature : .......................................................
Name of Supervisor : Assoc. Prof. Dr Harihodin Selamat
Date : 16 April 2006
I dedicate this thesis to my beloved family.
To my wife A Hafinaz, thank you for being together through-out our studies,
It has been one enjoyful journey. I Love You.
To my precious son Daanish, you are the joy of my life.
To Mama and Papa, thanks for being there when in need.
I give you all my success as appreciation for your undying love and care.
To Mak and Abah, thank you for your support and advice.
This success is because of your full spirit.
And lastly to all my brothers, thank you for your support you have given me through the
obstacles I have faced.
i
CUSTOMER SERVICE AND MAINTENANCE SYSTEM
ADAM BIN SHAMSUDIN
A project report submitted in partial fulfillment
of the requirements for the award of the degree of
Master of Science (Information Technology – Management)
Faculty of Computer Science and Information System
Universiti Teknologi Malaysia
APRIL, 2006
ii
“I declare that this thesis entitled “Customer Service and Maintenance System” is the
result of my own research except as cited in the references. The thesis has not been
accepted for any degree and is not concurrently submitted in candidature of any other
degree.
Signature : .......................................................
Name : Adam bin Shamsudin
Date : 16 April 2006
iii
ABSTRACT
Customer Service and Maintenance System is believed to be found under one of
many modules of a Customer Relationship Management. It is crucial that the system to
be developed in line with company’s business objectives. This is to ensure that the
system is well developed, so that every part of the modules and functions will be fully
utilized by the System Engineer, Managers, and Higher Management personnel. Apart
from that, this project enables our participants to gather enormous amount of knowledge,
not just in system development, but the whole process of managing every single phase of
project development. This project is developed with the help of Unified Modeling
Language as one of the development tool. The basic concept of this system is to promote
the needs of catering the customer’s breakdown calls, and logging it into a nice and
well-defined database. It helps the company to be at much competitive with the other
multi-national organizations in terms of much higher service quality.
iv
ABSTRAK
Adalah dipercayai bahawa Customer Service and Maintenance Sistem adalah
merupakan salah sebuah modul kecil didalam Customer Relationship Management.
Untuk memastikan bahawa segala ciri-ciri dan modul-modul sistem yang telah
dibangunkan dapat dipergunakan sepenuhnya oleh Jurutera-Jurutera Sistem, Pengurus,
dan pihak pengurusan syarikat, proses pembangunan sistem perlu dilakukan dengan
amat teliti supaya tidak mudah terpesong daripada objektif utama syarikat. Selain
daripada itu, adalah diharapakan dengan adanya projek ini, dapat diterapkan unsur
kerjasama dikalangan rakan sekerja, dan juga dapat menggalakkan penambahan ilmu
pembangunan sistem dikalangan pekerja. Selain itu, projek ini akan dapat menunjukkan
cara pengurusan yang baik bagi setip fasa-fasa pembangunan projek. Projek ini
dibangunkan dengan bantuan pendekatan Unified Modelling Language sebagai alat
bantuan pembangunan. Konsep asas projek ini dibangunkan untuk memastikan bahawa
kehendak dan masalah pelanggan dapat diselesaikan dengan cara yang lebih sistematik,
dimana sistem akan menggunakan proses penyimpanan data-data pelanggan ke dalam
pangkalan data yang lebih kemas. Akhirnya, data-data tersebut akan dapat dipaparkan
dengan paparan yang lebih elok dan teratur untuk kegunaan audit.
v
TABLE OF CONTENTS
CHAPTER TITLE PAGE
ABSTRACT iii
ABSTRAK iv
TABLE OF CONTENTS v
LIST OF TABLES xii
LIST OF FIGURES xiii
LIST OF APPENDIXES xiv
CHAPTER ONE
CHAPTER TITLE PAGE
I PROJECT INTRODUCTION
1.1 Overview 1
1.2 Problem Background 2
1.3 Problem Statement 3
1.4 Project Objectives 4
1.5 Project Scope 4
1.6 Project Importance 5
1.7 Summary 5
vi
CHAPTER TWO
CHAPTER TITLE PAGE
II LITERATURE REVIEW
2.1 Overview 6
2.2 An Environment without a Customer Care System 7
2.2.1 The Needs of Customers 9
2.2.2 Needs of Service Provider 10
2.2.3 Technology for Customer Care 11
2.2.4 Functional Requirements of a Customer Care System 12
2.3 Breakdowns and Diagnostic 13
2.4 CRM Implementation 13
2.4.1 Superficial Implementation 13
2.4.2 Substantial Implmentation 14
2.5 To Develop or Buy 15
2.6 Customer Care and Service Examples 15
2.6.1 Overland Storage Inc. (Overland Service and Support) 16
2.6.2 HeiTech Padu Berhad (Customer Care System) 17
2.6.3 KMS Software (Customer Care System) 18
2.7 Technology of Application Development 19
2.7.1 Active Server Pages (ASP) 20
2.7.2 Structured Query Language (SQL) 21
2.7.3 Internet vs. WWW 22
2.8 Approach and Implementation Methodology 23
2.8.1 System Development Life-Cycle (SDLC)
Methodology 23
2.8.1.1 Structured SDLC 23
2.8.1.2 Rational Unified Process (RUP) 24
vii
2.8.2 CRM System Development Life-Cycle (SDLC)
Methodology 26
2.8.2.1 Successful Technology Enablement
Process (S.T.E.P) 26
2.8.2.2 Perfect Fit Model 27
2.9 Summary 30
CHAPTER THREE
CHAPTER TITLE PAGE
III METHODOLOGY
3.1 Overview 32
3.2 Project Methodology 33
3.3 System Development Methodology 34
3.4 Project Plan 38
3.5 Summary 39
viii
CHAPTER FOUR
CHAPTER TITLE PAGE
IV SYSTEM DESIGN
4.1 Overview 40
4.2 Organizational Analysis 40
4.3 Current Business Process and Data Model 44
4.4 User Requirements 50
4.5 Conceptual Design 51
4.5.1 Business Process and Data Model 51
4.5.2 System Architecture 51
4.6 Physical Design 53
4.6.1 Database Design 53
4.6.2 System Chart 56
4.6.3 Interface Chart 56
4.6.4 System Modules and Features 57
4.6.4.1 Login Module 58
4.6.4.2 Breakdown Module 59
4.6.4.3 User Module 60
4.6.4.4 Site Module 62
4.6.4.5 Stock Module 63
4.7 System Architecture (Physical Design) 64
4.8 Hardware and Software Requirements 65
4.9 Test Plan 66
4.10 Summary 67
ix
CHAPTER FIVE
CHAPTER TITLE PAGE
V DESIGN IMPLEMENTATION & TESTING
5.1 Overview 68
5.2 Coding Approach 68
5.2.1 Login Module 69
5.2.2 Breakdown Module 71
5.2.3 User Module 73
5.2.4 Site Module 75
5.2.5 Stock Module 77
5.3 System Evaluation/Results 78
5.3.1 Usability Test 79
5.3.2 Function Test 81
5.3.3 User Acceptance Test 84
5.4 User Manual 85
5.5 Summary 86
x
CHAPTER SIX
CHAPTER TITLE PAGE
VI ORGANIZATIONAL STRATEGY
6.1 Overview 87
6.2 Roll-out Strategy 87
6.3 Change Management 89
6.3.1 People 90
6.3.2 Organization 90
6.4 Business Continuity Plan (“BCP”) 91
6.4.1 Hardware redundancy 92
6.4.2 Tape backup and Recovery 92
6.4.3 System Cluster 94
6.4.4 Shared Storage 95
6.5 Expected Organizational benefits 96
6.6 Summary 98
xi
CHAPTER SEVEN
CHAPTER TITLE PAGE
VII DISCUSSION & CONCLUSION
7.1 Overview 99
7.2 Achievements 99
7.3 Constraints and Challenges 101
7.3.1 Constraints 101
7.3.2 Challenges 103
7.4 Aspiration 104
7.5 Summary 106
CHAPTER EIGHT
CHAPTER TITLE PAGE
VIII REFERENCES 107
xii
LIST OF TABLES
TABLE NO TITLE PAGE
4.1 Brand table 53
4.2 Breakdown table 53
4.3 Breakdownparts table 54
4.4 Model table 54
4.5 Modelsn table 54
4.6 Module table 54
4.7 Modulesn table 55
4.8 Product table 55
4.9 Site table 55
4.10 User table 55
6.1 Roll-out planning 88
6.2 Backup Policy of CSMS Server 93
6.3 Benefits comparison 96
6.4 System benefit 97
xiii
LIST OF FIGURES
FIGURE NO TITLE PAGE
2.0 Reasons for Switching to another vendor 7
2.1 Superficial versus Substantial Customer Care Application 14
2.2 Rational Unified Process Model 25
2.3 Perfect Fit Model 28
3.0 RUP phases and iteration process 34
4.0 Continuous Network Services Organization Chart 41
4.1 IT/IS Infrastructure 42
4.2 Use Case Diagram for Current Business Process 44
4.3 Current Business Process Submit Breakdown Sequence Diagram 46
4.4 Current Business Process Assignment Delegation Sequence Diagram 47
4.5 Current Business Process View Report Sequence Diagram 47
4.6 Current Update Breakdown Activity Diagram 48
4.7 Current Assignment Delegation Activity Diagram 48
4.8 Current View Report Activity Diagram 49
4.9 Conceptual System Architecture 52
4.10 System Structure Chart 56
4.11 System Interface Chart 57
4.12 Login Module Interface 58
4.13 Breadown Form 59
4.14 User administration interface 61
4.15 Manage Site interface 62
4.15 List of Module – Serial Number 63
4.17 System Architecture (Physical Design) 65
6.0 Clustered with shared storage 95
xiv
LIST OF APPENDIXES
APPENDIX NO TITLE PAGE
A GANTT CHART 109
B USE CASE DIAGRAM 112
C SEQUENCE DIAGRAM 119
D ACTIVITY DIAGRAM 129
E USER ACCEPTANCE TEST 138
F USER MANUAL 148
G CSMS INTERFACE 155
H QUESTIONARRE 167
1
CHAPTER I
INTRODUCTION
1.1 Overview
Customer Care and Services management system had enormously gained
recognition in the mid-1990s, primarily driven by its perception as information
technology (IT). However, not enough attention has been given to the fundamental
drivers of CRM success: strategy, metrics and the organization.
Successful Customer Care is about competing in the relationship dimension of
customer, not as an alternative to having a competitive product or reasonable price, but
also not as a differentiator. If other competitors are doing the same thing as selling the
same products where prices, this definitely won't give them a long-term and sustainable
competitive advantage. But if one can get an edge based on how customers feel about
the company, it's a much solid and sustainable relationship over the long haul.
The customer care system would really benefit a service provider company
which relies totally on consumers’ satisfaction. With the system, it is foresee that the
enterprise could assure that the resources and services of the company are given to the
2
customer’s of service at a relevant time but nevertheless it is done in a more efficient
and effective way possible.
1.2 Problem Background
Continuous Network Services Sdn Bhd is an IT company that primarily provides
supports and services to various types of customers. Products that are being supported
by this company are ranging from network routers, switches, firewalls, which come in a
form of modules and chassis. The product vendors that the company holds for solutions
are such as Cisco, Lucent Technologies, Alcatel, Nokia, McAffee and etc.
Currently, when ever there is a breakdown call for a particular customer, the
System Engineer will have to dig out all the relevant information that regards to the
customer from an un-organized filling which were keyed-in by Engineers them selves.
This is to ensure that they know what type of equipments that are being used by the
customer and what kind of problems that they are facing with. By knowing it,
apparently it will assist the Engineers to perform their support activities to a more
efficient and effective way possible and in a timely manner. They could also identify
what are the possible action and activities that they should take in rectifying the
problems that arises with the customer.
After completing with the customer support, the next action for the System
Engineers is to update the customer’s information with the latest concern. Usually, the
update would be to enter the actions taken during the onsite support. The Engineer
would have to mention what were the findings or the actual problems occurred, and
what were the actions being taken to resolve the problems. This is to ensure that the
next Engineer who will be going for the same customer in the future, they will know
what is the history of the equipments and the current situation of the customers itself.
3
Besides that, Manager would use the log files to identify which Engineers are
attending breakdowns and which are not. In a way, it will help the Manager to organize
the resources more appropriately that eventually will evolve to a more efficient resource
usage. Resources are crucial to be organized properly since it is considered as an asset
to the company’s profit. The Engineers should be distributed wisely according to
breakdown so that if there is a lot of breakdown happened at a time, there will be
enough work force to supply the demand.
As for the higher managerial such as the Senior Managers and Directors, they
require a breakdown log to assist them on decision making for their monthly
management meetings. Currently, they have to compile them selves from a long list of
breakdowns occurred in a month. This could eventually cost them so much time that the
management could not bear.
1.3 Problem Statement
The productivity of all System Engineers and Managers in CNS is hampered due
to the lack of organized procedures in delegating resources such as Engineers and
Equipment parts, to the most effective and efficient way. On the other hand, the
Managers are having a difficult time in creating a periodic audit report since there are
no updated breakdown logs and product inventory. The process of receiving and
attending breakdown calls is not sufficiently logged-in, in which would create a hassle
for the Engineers to retrieve it back in the future.
4
1.4 Project Objectives
The objectives of this project is as follows:-
a) To study the current process of receiving and attending customer’s breakdown
calls.
b) To design and develop the Customer Service and Maintenance System which
includes the following features: -
a. Initiate and Manage Breakdown Report
b. Resource Management
c. Generate Audit Reports
c) To improve current procedures of customer breakdown support.
d) To formulate a management strategy for the successful implementation of
customer service and support.
1.5 Project Scope
The identified scope of this project is as follows:-
a) To develop a web-based system in which it will be use by System Engineers,
Technical Manager, Senior Manager and Managing Director of Continuous
Network Services Sdn Bhd.
e) To develop a web-based system that will help to improve the respond time in
terms of breakdown call supports, services & maintenance, and decision
making of Management Executives.
f) A sample data will be used to run the system.
5
b) The additional user of the system will be specific for Bursa Malaysia as a
customer.
c) The system will be able to generate a weekly, monthly, and yearly report of
various audit reports to assist the managerial level in decision-making.
1.6 Project Importance
The benefits that Continuous Network Services could gain from this system are:-
1. The Engineer could perform the customer support well in terms of
professionalism, skill, and more effective and efficient which it could help the
customer to save more of expenses in the long run.
2. The management could save and make use of their productivity time to think
more on how to improve the business procedures and increase the business
marketing and sales yearly revenue.
3. Customer will be getting a highly rated service for their equipment, which
usually will only be provided by major vendor companies.
1.7 Summary
The solution is to develop a centralized server that situates a database in it,
which the client can access through a web. Besides the database, there will also be a
web server that controls and manages the transition of data and the input and output of
information through the network. The system will be a real-time and online which is
accessible 24 hours.
6
CHAPTER II
LITERATURE REVIEW
2.1 Overview
Customer care is a customer service that seeks to acquire new customers,
provide superior customer satisfaction, and build customer loyalty. In order to achieve
that, a comprehensive study will be done in this chapter where various types of
customer care system are to be analyzed. This study hope would give some guidance
and proper aims of how the new system should be implemented, what kind of
technology that is best to use for the development, and to determine other critical
aspects to make up the final product. Opening with understanding of each party needs,
followed by list of key elements required for the system, and awareness study of other
customer care systems or modules available in the market that probably can fit in the
user requirements. Here, it also gives an overview of data models, type of information
systems, and web technologies that might be useful for the project implementation later
on.
7
2.2 An Environment without a Customer Care System
With the deregulation of service provider, consumers now have more choice in
selecting a service provider. When ordering a new service or maintaining an existing
service, consumers must take into account the following three key factors: the quality of
the service, the price of the service, and the customer service of the service provider.
The first two factors are relatively objective and usually easy to control. As shown by
Figure 1, the graphical representation of a market research study done a few years ago,
customer service dissatisfaction is the most important key factor when a consumer
decides to change service providers.
Figure 2.0: Reasons for Switching to another Vendor
A customer care system is a customer service system that helps service
providers acquire and retain loyal customers. The customer care system provides many
means for service providers to achieve these goals with the help of technology.
All service providers have customer services. A customer service that does not
have a customer care system is characterized by the following:
Multiple applications for a customer service representative — without a
customer care system; customer service representatives (CSRs) must use many
8
applications to service a customer. Billing, provisioning, ordering, credit validation, and
event tracking are examples of these applications. Sometimes the CSRs need two or
three workstations or terminals. A CSR without a customer care system will use all of
these mentioned systems to handle even a simple customer request for a new telephone
line. As these are usually independent applications, the CSR must enter the same
information many times. There is always the possibility of mistyping and forgetting to
enter some information in an application as a result of human error. With errors, the
customer is not likely to get his/her requested service as promised by the CSR. With
multiple applications, there is an increased possibility of human error. In contrast, with
a customer care system; the CSR must only use one application.
No procedure — Because of multiple applications, or applications that provide
too much flexibility, each CSR develops his or her own procedure. The services that a
customer receives depend on the CSR. Some services may be good, while others may
not be so good. The customer will perceive this unevenness as poor customer service. A
good customer care system, in contrast, implements CSR procedures and forces them to
follow company-approved procedures.
Long training times — Customer service departments have relatively high staff
turnovers. As there are many applications and procedures that CSRs must learn, the
training time is lengthy and costly to service providers. A good customer care system is
easy to learn and use and, therefore, has a shorter training time.
Many hand-offs — Because of a lack of automation, a great deal of handing
tasks off to other people or departments manually are required. Each one of these
manual hand-offs means waiting time, more data entry, and increased possibility of
human error. A customer care system reduces the number of hand-offs by automating
these manual tasks.
Poor morale — Poor customer service due to inadequate infrastructure results in
poor CSR job satisfaction. Consequently, the customer service department will
9
experience high turnover and poor customer service. With a customer care system,
customer services will be better, and CSRs will be more satisfied with their work.
2.2.1 The Needs of Customers
Consumers ultimately determine the requirements of a customer care system,
and all of us are consumers in one way or another. We associate the following
characteristics with good customer service:
1. The customer service representative is friendly.
2. The customer service representative knows about previous contact sessions and
is able to continue a session from where it was left off.
3. The customer service representative is capable of completely servicing the call.
4. The customer service representative provides immediate change in the service
for most service requests.
5. The customer service representative is experienced, and calls are completed in a
timely manner.
6. The customer service representative provides accurate commitments.
7. The customer service representative provides accurate information.
8. The customer service representative does not transfer calls to others.
9. The customer service representative does not put the call on hold for long
periods of time.
Many of the above characteristics seem to be CSR–dependent and to require
extensive experience. However, with a good customer care system, these characteristics
manifest externally to the customer even from relatively inexperienced CSRs.
10
The only capability that cannot be implemented in a customer care system is the
first characteristic, which is a friendly customer service representative. As a result, an
effective customer care system requires that service providers select CSRs more for
their interpersonal skills than for their technical skills.
According to Wendell Lansford, the President and CEO of SiteBridge, a New
York-based developer of Web-based call center solutions, “Web sites are a great way to
streamline the interaction between businesses and customers, there are always
instances when you need to connect with a human, giving the customer some one-on-
one guidance can avoid that feeling of being lost in a site."
2.2.2 Needs of Service Provider
From the service provider's point of view, the major business needs of a
customer care system are as follows:
1. Capability to proactively acquire new sales and customers — The customer care
system should be capable of targeting new sales, as well as matching customers
and products, and should offer this information to CSRs when contacting the
customer.
2. Capability to provide prompt service to existing customers — The customer care
system should include automation to provide prompt service to customers; the
system should be designed in such a way that the interaction with the customer
is of a high quality (e.g., there should be minimum waiting time and no holding
time); the ultimate objective is to provide the customer with the required service
by the time the session ends (i.e., "Thanks for calling. You should be able to use
your service now.").
11
3. Reduce costly human errors — The customer care system should be easy to use,
incorporate procedures, reduce information being typed, and verify entered
information.
4. Capability to acquire additional marketing information — Any contact with a
customer is valuable and should be viewed as an excellent opportunity to
acquire future marketing information; as part of each contact, marketing
information should be captured in an easy and consistent manner by CSRs.
2.2.3 Technology for Customer Care
Rapid advances in the computer industry present an opportunity for service
providers in terms of both cost reduction and sales increases. The following are
technological factors that can play a major role in determining the effectiveness of a
customer care system:
• Powerful PCs — they can bring processing power to the CSR's desk.
• Rapid application development (RAD) and object-oriented technologies—these
technologies permit rapid application development and allow handling of more
complex tasks.
• Artificial intelligence software — this technology will arm new and existing
CSRs with advice, questions, and responses to service customers more
effectively.
• Integration technologies such as CORBA and DCE — these technologies make
integration with new systems and applications easier.
• Internet—the Internet allows service providers to provide services online.
• Client/server architecture—this architecture will allow service providers to
increase or decrease customer care–equipped desktops as their needs change.
• Graphical user interfaces (GUIs)—GUIs are more intuitive and, therefore, easier
to learn.
12
2.2.4 Functional Requirements of a Customer Care System
Based on the needs of consumers as well as the needs of service providers,
major functional requirements of a customer care system are as follows:
1. Access relevant information — a customer care system provides only relevant
information, allowing customer service representatives to interact rapidly with
customers.
2. To hide no relevant information — a customer care system is tailored so that no
relevant information for the business task at hand is hidden.
3. User Friendly — the CSR must be able to focus on the interaction with the
customer as opposed to focusing on the use of the customer care system.
4. Decision support — the customer care system must have an expert system to
take advantage of the service provider's pool of experience on sales and repairs.
In the long term, a customer care system should provide flexibility in the following
ways:
1. Support for changing business processes — Decision support tools in particular
must be easily modifiable to avoid becoming the bottleneck in evolving a
business process.
2. Ability to evolve toward convergence — the customer care system should
provide the capability to add new products, packages, and pricing models.
3. Support sharing of information with other service providers — the customer
care system should be able to provide selected information to other service
providers.
13
2.3 Breakdowns and Diagnostic
In the context of this project, we will be focusing more on suporting customer
breakdown calls. Breakdown calls activity is usually inbound (i.e., consumers make the
call). Customers usually call to request that a service that does not work be fixed or
repaired. Typical repair calls include the following:
1. Collecting diagnostic information — the CSR must collect information from the
consumer as well as information from within the organization. A customer care
system automatically obtains diagnostic information from relevant systems and
guides the CSR to obtain the diagnostic information.
2. Diagnosis — the CSR must analyze available information and determine the
cause of the problem. A customer care system automatically diagnoses the
problem.
3. Resolution — the CSR must take actions to resolve the problem. A customer
care system can resolve the problem.
2.4 CRM Implementation
2.4.1 Superficial Implementation
A superficial implementation of a customer care system is usually inexpensive
and can be deployed relatively quickly, but it lacks substance. It is superficial because
most of the changes are in the user interface level and usually are not integrated to back-
end systems—such as billing, provisioning, or ordering systems. Although the CSR's
tasks may be reduced, the work is not complete, and someone or some other system
must somehow send and receive information to and from back-end systems. They also
14
come with some predetermined processes that may not suit the operation of a service
provider.
2.4.2 Substantial Implementation
A substantial implementation of customer care is more expensive and takes
more time to develop, but it has substance. The changes permeate from the user
interface level down to the integration of the necessary back-end systems. The work of
the CSR and of other persons in the service provider's company is reduced, resulting in
cost reduction, and better efficiency. The in-depth analysis of the business process
required in substantial implementation provides a customer care system that
significantly improves the performance of the customer service and provides the most
automation possible.
Figure 2.1: Superficial versus Substantial Customer Care Application (The
International Engineering Consortium, 2003)
15
2.5 To Develop or Buy
The development of a customer care system from scratch is expensive and has
many risks but can provide a system that is well tailored to the service provider's needs.
In general, development can take more than a year and will be subjected to major
project risks such as technology, experience, budget, and know-how problems. In
practice, only large telephone companies can afford the development of customer care
systems.
An alternative is to buy a customer care system. An already-built customer care
system is relatively inexpensive, and many of the risks associated with it are already
eliminated. However, it will not be initially tailored to the service provider's needs.
Because the operations of service providers vary significantly, the customization
of the system is necessary to make it a substantial customer care system. On the other
hand, some vendors of customer care systems prefer the superficial customer care
system approach and shy away from substantial customization. A good customer care
system vendor will work with the service provider and provide substantial
customization if requested.
2.6 Customer Care and Service System Examples
In understanding the needs and initiative towards the need of a customer service
system for an organization which studies has been done earlier in this chapter to various
major industry organizations that had already implemented a customer care and service
portal. The study focuses on how the system caters the needs of customer service in
various kinds of industries. Besides, the study will also cover the availability of a 3rd
party system and a fully developed system
16
Some of the organizations that were studied are such as Overland Storage Inc.,
Heitech Padu Berhad, and KMS Software.
2.6.1 Overland Storage Inc. (Overland Service and Support)
Overland Storage provides world-class data protection solutions designed to
ensure business continuity. Focused on backup and recovery solutions, Overland
delivers hardware and also software solutions for midrange-computer environments.
These include automated storage libraries that already set the standard for intelligent,
automated and scalable storage, and also the disk-based backup acceleration solutions.
Overland sells its products worldwide through leading principals, commercial
distributors, storage integrators and value-added resellers.
Overland vision is to empower the customers to compete more effectively in the
Information Age through world-class storage management solutions that ensure
business continuity. Therefore, Overland developed a customer care system, which
helps them to provide a better service towards customers.
The system basically offers three major features: -
1. Replacement request – feature where customers are able to request for product
replacement online. Customers that are requesting for product replacement,
which the products are still under warranty, would use this feature. The product
must be first verified as faulty in order to get a replacement. This feature enables
customers to track down the status and progress of requested product.
2. Customers Forum – forum that gathers the users and Overland representatives.
Discussions are more on product concern and problems where they could get
answers in real time.
17
3. Customer Support Request – a place where customers are able to get product
support from Overland. Way of communication would be by emails, or by
logging into the support web site. The Overland representatives would be from
the Engineers, and up to Technical Support Manager. Besides Encompass
2.6.2 HeiTech Padu Berhad (Customer Care System)
What could be more important than retaining the customers relation? Customer
Relationship Management (CRM) has become the definition and execution of a
successful business strategy that drives growth and profitability. CRM assists in
improving customer service, creating shorter sales cycles, and increasing sales and
service value [1,1].
HeiTech Padu is Malaysia's largest IT company offering widest variety of IT
Infrastructure and service. Besides that, HeiTech offers a complete systems integrator
and development service, custom software applications, and the most important of all is
the Customer Care Centre.
Customer Care Centre is one of the most popular reasons why customer choose
HeiTech Padu as thier IT solution, which encompass implementation service,
professional service sulution, software support, eqiupment maintenance, and network
services.
Under the Customer Care Centre, HeiTech uses a Customer Care System. This
system is used by Customer Support Engineers (CSE) to log down the breakdown
report raised by customers. The system able to be accessed by internet, which most of
the system users are based in customer site.
18
System provides the CSE the ability to record all of customers problem, the
occurance of porblems, action that will or should be taken and the customer’s
information. The system provide a customer support encompassing the following
services:-
1. Problem Logging and Prioritisation - Log problems reported into a centralised
database and assign severity level. (E.g. Severity 1, 2, 3 or 4)
2. Problem Assignment, Diagnosis and Escalation - Assignment of problem for
diagnosis and escalation to Site Engineers. This is to ensure that resources are
properly distributed according to breakdown severity and product skill.
3. Problem Resolution - Determining poblems and resolution of problems reported.
This feature is to assist in providing customer the best support possible, in terms
of breakdown freaquency.
4. Problem Reporting and Review - Efficient reporting and review on statistics is
to assist in decision making of customers higher management levels.
2.6.3 KMS Software (Customer Care System)
KMS Software is a well known software company which delivers a wide range
of products and services by means of a client-focused methodology, identifying
individual client needs and tailoring appropriate solutions.
This London based company, which was formed since 1990, is focusing intently
on the construction sector, and had set the UK standard for Construction specific sales
and marketing IT solutions.
The system which KMS offers to their customers would enable the user (staff)
to offer fast, accurate and consistent advice to valuable clients. It enables the Support
Teams and Helpdesk staff to input customer feedback or complaints, which eventually
19
would create a valuable archive of products faults, customer opinions and product
suggestions.
In addition, this system also comes with a series of reporting tools enabling
detailed analysis to be carried out. This will allow management to keep a close eye on
customer service levels and staff performance but also facilitates the study of
performance the study of performance and lifecycle of products and services.
The reports would basically be : -
1. Enquiry frequency by day
2. Enquiry frequency by time
3. Method of enquiry
4. Ongoing enquiry by staff member
5. Products Enquiries
2.7 Technology of Application Development
The true challenge of IT is to create information systems that will actually
encourage people to actually make use of Customer Care System. The highest priority
area for systems deployment is in the harvest and reuse of internally developed
expertise. Several organizations have successfully put systems in place to achieve this
end, in the form of customer support systems to locate sources of expertise in the
organization, systems to facilitate decision-making and querying on various topics, and
systems to provide breakdown support for customers all in prompt. Other areas where
systems have found use are in the dissemination of collated information on technology
and business trends, communication of policies and company-specific information to all
stakeholders, and the showcasing of company expertise to potential customers. The
technology, that are needed in implementing a Customer Care System includes:
20
(i) Internet and web as a platform for deploying and implementing
customer care system.
(ii) Portal will be used as a transactional gateways targeted to a specific
audience. Implementing a system portal in the organization can lead
to increased productivity, improved service quality and maximized
investment on expensive back-end packages.
(iii) Web development application as the of the development tools in
developing the portal.
(iv) Database as the collection of information that's related to a particular
subject or purpose in the system.
2.7.1 Active Server Pages (ASP)
Some of the biggest and most successful web sites around today rely heavily on
ASP pages communicating with databases. Sites like Amazon.com allow the user to
search through a massive list of books and videos, select an item from a database and
order it online.
Microsoft Active Server Pages (ASP) is a server-side scripting environment that
can be use to create and run dynamic, interactive Web server applications. With ASP,
we can combine HTML pages, script commands, and COM components to create
interactive Web pages and powerful Web-based applications that are easy to develop
and modify.
21
ASP allows programmers to develop custom code that works with Microsoft's
Internet Information Server (IIS). Programmers may use one of two scripting languages
to create ASP pages: VBScript (based upon Microsoft's Visual Basic) or JScript (based
upon Sun's Java). ASP pages often utilize ActiveX Data Objects to link to SQL Server
databases and other data sources. While ASP scripts must be using a Microsoft web
server to provide ASP pages to the users, the beauty of ASP is that it creates pure
HTML output. Therefore, there are no specific requirements for client browsers and
ASP page results may be displayed using Microsoft Internet Explorer, Netscape
Navigator, Firefox or any other web browsers.
In May 2000 Microsoft estimated that there where over 800.000 ASP developers
in the world, making Active Server Pages a high-growth technology. At the same time
they estimated that over 500 companies was producing ASP components and
applications covering functionality from accounting and electronic commerce to
mainframe and other legacy data access.
2.7.2 Structured Query Language (SQL)
SQL stands for "Structured Query Language". This language allows us to pose
complex questions of a database. It also provides a means of creating databases. SQL
very widely used. SQL is an ANSI (American National Standards Institute) standard
computer language for accessing and manipulating database systems. SQL statements
are used to retrieve and update data in a database. SQL works with database programs
like MS Access, DB2, Informix, MS SQL Server, Oracle, Sybase, etc.
Unfortunately, there are many different versions of the SQL language, but to be
in compliance with the ANSI standard; they must support the same major keywords in a
similar manner (such as SELECT, UPDATE, DELETE, INSERT, WHERE, and
others).
22
2.7.3 Internet vs. WWW
Many people use the terms Internet and World Wide Web (a.k.a. the Web)
interchangeably, but in fact the two terms are not synonymous. The Internet and the
Web are two separate but related things.
The Internet is a massive network of networks, a networking infrastructure. It
connects millions of computers together globally, forming a network in which any
computer can communicate with any other computer as long as they are both connected
to the Internet. Information that travels over the Internet does so via a variety of
languages known as protocols.
The World Wide Web, or simply Web, is a way of accessing information over
the medium of the Internet. It is an information-sharing model that is built on top of the
Internet. The Web uses the HTTP protocol, only one of the languages spoken over the
Internet, to transmit data. Web services, which use HTTP to allow applications to
communicate in order to exchange business logic, use the Web to share information.
The Web also utilizes browsers, such as Internet Explorer or Netscape, to access Web
documents called Web pages that are linked to each other via hyperlinks. Web
documents also contain graphics, sounds, text and video.
The Web is just one of the ways that information can be disseminated over the
Internet. The Internet, not the Web, is also used for e-mail, which relies on SMTP,
Usenet news groups, instant messaging and FTP. So the Web is just a portion of the
Internet, albeit a large portion, but the two terms are not synonymous and should not be
confused.
23
2.8 Approach and Implementation Methodology
In order to select the best methodology in implementing the system, one must
choose a reasonable, low-cost, effective and efficient approach. Those studied
methodology must be able to adapt all of the listed project scope and objectives.
Therefore, it is important and vital to study in depth the capabilities of each available
methodology before one selecting the most suitable approach.
2.8.1 System Development Life-Cycle (SDLC) Methodology
2.8.1.1 Structured SDLC
Generally, Systems Development Life-Cycle methodology is a structured
approach for systems development from systems planning and design through
implementation and support. This methodology is a proven methodology series of steps
and phases that allow the system to developed at a more convenient and assured way.
The five common and basic phases of System Development Life-Cycle
methodologies are: -
1. Conceptual Design – it involves identifying the business or organization
objectives and as well as the proposed system that are going to be
implemented.
2. Planning – to determine the functional, quality, and architecture
requirements of the system identified in the conceptual design phase. In
addition to this phase, the proposed system will be designed accordingly
to meet the requirements and planned for the implementation.
24
3. System Development – this will involve the developers to start creating
codes, and testing, according to the design under the planning phase.
4. Implementation – under this phase, the system will be deployed through
out the organization, either by departments or all out deployment. This
phase would also include some basic training for the users, since the
users would have to test it out before they can sign off the project.
5. Post Implementation – the management, users, and developers will
together monitor the implemented system to ensure that the system
manage to provide the level of initial expectations and requirements
which were identified in the earlier phases. Other that that, they will run
out a training to the users in order for the system able to be use to the
requirement level.
2.8.1.2 Rational Unified Process (RUP)
Rational Unified Process (RUP) is an object-oriented and Web-enabled program
development methodology. According to Rational (developers of Rational Rose and the
Unified Modeling Language), RUP is like an online mentor that provides guidelines,
templates, and examples for all aspects and stages of program development. RUP and
similar products -- such as Object-Oriented Software Process (OOSP), and the OPEN
Process -- are comprehensive software engineering tools that combine the procedural
aspects of development (such as defined stages, techniques, and practices) with other
components of development (such as documents, models, manuals, code, and so on)
within a unifying framework.
RUP establishes four phases of development, each of which is organized into a
number of separate iterations that must satisfy defined criteria before the next phase is
undertaken. Each of those phases will involve several core process workflows that will
be active along the time. The RUP phases are: -
25
1. Inception phase - developers define the scope of the project and its
business case.
2. Elaboration phase - developers analyze the project's needs in greater
detail and define its architectural foundation.
3. Construction phase - developers create the application design and
source code.
4. Transition phase, developers deliver the system to users.
Figure 2.2: Rational Unified Process Model
RUP provides a prototype at the completion of each iteration. The product also
includes process support for Java 2 Enterprise Edition (J2EE) and BEA (WebLogic)
development, and supplies an HTML-based description of the unified process that an
organization can customize for its own use.
26
2.8.2 CRM System Development Life-Cycle (SDLC) Methodology
2.8.2.1 Successful Technology Enablement Process (S.T.E.P)
This methodology has been developed by Larry Caretsky, the President & CEO
of Commence Corporation. After many years of involvement in system development,
and the evolvement of IT, he created a methodology or process whereby the customers
could implement the CRM system development on a departmental level, one step at a
time.
The way S.T.E.P works is by allowing the management’s commitment and
involvement in each phase of the implementation. Management will help to facilitate
workplace productivity, discuss the reasons for moving to a customer-centric business
model and assist in maintaining complete control over the project. This is crucial since
the implementation begins to spread through the different departments.
S.T.E.P consists of 5 phases which are: -
Step I Needs Analysis - During this phase of the implementation they document the
strategic and tactical objectives of the department. They will determine the process,
workflow and functional requirements and identify areas where information needs to be
tracked, shared and integrated.
Step II Project Planning - A formal departmental implementation plan will be created,
and finalized during this phase. A system administrator will be selected to coordinate
with members of the department as well the system integrator or consultant(s) managing
the implementation.
27
Step III Installation & Implementation - Installation of the software, workflow policies
and procedures will be implemented during this phase. System configuration,
privileges, preferences and security will be determined.
Step IV Testing & Quality Assurance - An operational prototype of the departmental
application is up and running at this time. Operational issues are identified and resolved,
and basic modifications are made.
Step V Deployment & Training - The application is now completely operational. There
are no additional installation activities. Training begins for departmental management
and end users. On going support is provided by the system administrator with telephone
assistance from the system integrator or solution provider.
2.8.2.2 Perfect Fit Model
Implementing a CRM solution requires input from almost every area of your
business, and is an evolving process [2.1]. Firstwave’s Perfect Fit methodology is
designed to allow an organization to obtain rapid business value from a CRM
investment while refining the implementation to reach its maximum potential. To
accomplish this goal, Firstwave uses a cyclical approach to software implementation
that builds on the lessons learned during deployment.
Firstwave is a leading provider of CRM solutions to mid-size and large-scale
enterprises worldwide. Firstwave believes in the basics: Take care of your customers
and your customers will take care of you. Our Customer First Commitment goes far
beyond service and support. Knowing your business is our business.
The Perfect Fit model combines the traditional waterfall model with the spiral
model to use the strengths of both. This methodology provides the benefits of
28
milestone-based planning from the waterfall model, as well as the iterative creative
process from the spiral model.
According to Firstwave, Perfect Fit model is based on milestones that allow the
development team to adjust the scope of the project to reflect changing requirements or
to react to risks that may materialize during the course of the project. Because the
project is accomplished in clearly defined stages, it is able to accommodate
requirements for new features that are not identified until after the initial stage is begun.
There are 6 main phases involve in Perfect Fit model. The phases are: -
Figure 2.3: Perfect Fit Model
29
2. Requirements Analysis
The purpose of the requirements analysis phase for is for the development
team and the customer to create a high-level view of the project’s goals and
constraints. The main deliverable during this phase is the functional requirements
document. The functional requirements document describes what will be built and
includes content such as product design goals, requirements, features, and
dependencies. The scope of the project will also be determined. This phase
culminates with approval of the functional requirements document and preliminary
project plan.
3. Design
To allow client IT personnel to provide valuable input into the design,
during the design phase, the developer will drafts a design specification and updates
the project plan. The design specification describes how the product will be
customized, and the master project schedule summarizes when and in what order it
will be built. The design phase culminates with approval of the design specification.
This represents approval to build the product as outlined in the design specification.
4. Customization
During the customization phase, the development team focuses on building
and testing the product including modifications defined in the requirements and
design phases. The Perfect Fit methodology does not limit testing to the stabilization
phase, but is an integral part of customization as well. The customization phase
culminates in the scope complete milestone, at which point all features of the
product should be in place. At this time the team agrees that the product is ready for
user acceptance testing.
30
5. User Acceptance
During the user acceptance phase of each release, the solution will be tested
by a sample group of users to ensure that the required functionality has been built.
As the user group identifies issues within the scope of the project, they are
addressed immediately by the development team and re-tested. The user acceptance
phase culminates when all relevant issues have been addressed to the satisfaction of
the combined project team.
6. Implementation
The implementation phase is the actual “go-live” deployment of the
software. During implementation the software is moved from the test environment
into production, final data conversion scripts are run and additional end-user
training is conducted. Firstwave consultants are on-site to assist with support and
disconnected user installations if required.
7. Stabilization
During the stabilization phase, there will be a process of monitoring which
this task will only be culminating after no complaints receive.
2.9 Summary
Several aspects for the system implementation requirements have been studied
and compared to suit with CNS Support and Maintenance System implementation.
From the market studies that had been done in this chapter, it is not practical to
implement the current available CRM systems in the market, as these applications will
really not suit CNS users’ requirements. Furthermore, these “of the shelves”
applications are expensive in price, even though they do have the free version, it does
not provide a full blown feature of system. In terms of application programming, it is
31
good to have a well known application scripting in the application development as it
will benefit the organization in the long run. It is easier to get the application
administrator replacement whenever the predecessor left the organization. In fact, one
organization does not need to employ additional administrator since the scripting
language are easy to be taught to the next generation. This will incur any additional cost
in the long run. In conclusion, this literature study has helped to determine the concept
and technologies that are suitable for this new project implementation and to ensure that
it will be a success to the organization as well as the customer.
32
CHAPTER III
METHODOLOGY
3.1 Overview
Customer Service has become an important success factor for an
enterprise, especially service providers which are vital in sustaining the customer’s
requirements and expectations. That is why Information technology (IT) plays a crucial
role in customer service.
IT-supported customer service solutions play a crucial role in providing a high
quality services to the consumers. In such a context, a system has to be modeled,
appropriately structured and interlinked for supporting its flexible integration and its
personalized presentation to the user so that the appropriate service could be delivered
to a particular customer in a manner way possible.
In consideration of creating a rapid development of a project, one may need a
right tool to be implemented at the fastest time. The aim of developing The System Care
System is, that it should be delivered faster, with fewer personnel and more focuses on
to the business and customer requirement aspect. From this chapter, some methodology
will be identified and which are suitable to develop this system.
.
33
3.2 Project Methodology
It is crucial to ensure that the development of the system is being done a shortest
time possible, without sacrificing the quality of it. Therefore, it is essential to choose a
reasonable and suitable methodology possible which will not only assist the developers
to come out with a god quality system, but to make certain that it is being done in a
more efficient and effective way.
The methodology that had been chosen from those previously studied
methodologies will be Rational Unified Process (RUP) Method. The rational to it is that
this method provides a disciplined approach to assigning tasks and responsibilities
within a development organization. Its goal is to ensure the production of high-quality
software that meets the needs of its end-users, within a predictable schedule and budget.
RUP enables all development team members access the same knowledge base,
which they will share a common language, process and view of how to develop
software. This will ensure that everybody that involves in the project will get the same
idea and pursuit to the same path towards achieving the same goal.
RUP uses Unified Modeling Language (UML) as a tool to analyses, design, and
model the user requirements and expectations into an understandable and re-structural
way of presentation. The UML is a industry-standard language that allows developers to
clearly communicate requirements, architectures and designs. All of it are being
supported by tools, which enables developers to create and maintain various artifacts-
models in particular-of the software engineering process.
RUP is a configurable model, which enables it to adapt into various kinds of
project in terms of time duration, system size, and even resource volume.
34
3.3 System Development Methodology
Identifying the phases involved in the RUP model, and transferring all of the
possible and expected activities, as well as possible deliverables into those identified
phases. All of the phases have been explained in the previous sub topics. Below given
the details of every core process workflows involved under each phases of RUP
methodology for this respective Customer Care System project.
Figure 3.0: RUP phases and iteration process.
There are nine core process workflows of engineering in RUP, which represents
a partitioning of all workers and activities into logical groupings.
1. Business Modeling
This process will involve a business documentation, or in other words business
use case. This is to ensure that all of the stakeholders, especially the CNS
Managing Director, aware of the business process needs to support the success
of the project. Besides that, it straightens out the understanding of how the
business should support the business process in terms of Customer Care service.
This is documented in a business object model.
35
The activities for this process are:-
i. Observation
ii. Identifying business process
iii. Identifying business objectives
The involved deliverables are as follows:-
i. Company Profile
ii. Business Vision and Mission
iii. Problem Statement
iv. Organizational Strategies.
2. Requirements
This part of process will describe what the actual system should do, which it
involves a lot of user’s involvement. This is to ensure that the developers know
what the user’s situation is and what do they really wants. There will be
interviews among developers and Engineers, changing facts between parties,
and agreement of description.
The activities for this process are:-
i. Interview the users and customers.
ii. Distribute questionnaires
36
The involved deliverables are as follows:-
i. Use Case
ii. Use Case description
iii. Problem Statement
iv. Sequence Diagram.
3. Analysis & Design
The activity involved would be to come up with a design which will act as a
blueprint for implementation phase.
The identified deliverables for this process are:-
i. Class diagram
ii. Package Diagram
iii. Component Diagram
iv. Database Diagram
v. Capsule Design
4. Implementation
This phase will ensure that all of the design will transfer into series of codes,
which will eventually fulfill the initial customer requirements. Besides that, the
developed components codes, or in other words act as modules and functions,
will be tested in terms of integration between different related modules and
functions.
37
The activities involved are:-
i. Transferring class diagrams into programming codes
ii. Test the implemented codes to ensure requirements are met
iii. Integrate all developed modules into one workable system
The deliverables are as follows:-
i. ASP codes
ii. HTML codes
iii. User interfaces
iv. Modules
v. Functions
vi. Database tables
5. Test
To test the overall functionality of the system this involves testing out the
integration of objects, and components. Further to that, activity of ensuring that
all requirements have been correctly implemented will also be done. Lastly is to
ensure that all defects are addressed prior to the deployment of system.
The identified activities are:-
i. Test on all functions, modules that have been developed
ii. Test on integrity of functions and modules
iii. Retune codes according to the test results
38
The deliverables are as follows:-
i. User Acceptance Test (UAT)
6. Deployment
The activities will include the installation and configuration of the system
according to CNS environment. Training will also be provided to ensure that all
of the users fully utilize the system to its predefined features.
The activities that are involved are:-
i. To deploy into customer environment
ii. Test out the comfort of users
The deliverables of this particular process are:-
i. User Manuals
ii. Training Sessions
iii. User Support.
3.4 Project Plan
To ensure that a project is being handled well, and within the time frame
planned, it is crucial to have all of the plans documented. As such, a Gantt chart
has been made to give a guideline to stakeholders, programmers, users, and
39
customers. The chart will present the phases and activities that needs to be done
during the whole process of development. Please refer to Appendix A for the chart
reference.
3.5 Summary
As discussed, RUP will be used in this project implementation. The selection is
based on methodology that will be used in the next few phases of this project. Beside,
due to some limited time and budget for the implementation, it best to have project
methodology that can help in the team in transferring the knowledge from one team to
another during the phase transition.
40
CHAPTER IV
SYSTEM DESIGN
4.1 Overview
In this chapter, a detail study and analysis of the current environment including
its organizational structure, business processes, project information flow, IT
infrastructure and systems used are being conducted. These fact findings will then leads
to the user requirements which will then help generate the system specifications, system
design using Object Oriented Modeling as a tool to represent the current and conceptual
system design such as the business processes, data flows, and etc. Physical system
design subsequently being created in accordance to creating the proposed system.
4.2 Organizational Analysis
Continuous Network Services Sdn Bhd (CNS) was incorporated in 1999 to
provide nationwide technical support & maintenance services primarily to Continuous
Network Advisers (CNA). System Engineers and product expert
41
are certified to provide Level One and Level Two supports for all key products and
solutions provided by CNA staff CNS.
CNA was incorporated in Kuala Lumpur on 15 November 1995 by the main
shareholders of Atlas-CSF Sdn Bhd, a leading solutions provider for computer site
facilities. CNA was formed to capitalize on the booming demand for data
communications and networking products and services. Over the years, CNA has
evolved and presently focuses on providing integrated solutions and services for
networks, e-commerce infrastructure and data storage management. In May 2001, CNA
was incorporated into the My-InfoTech Group of technology companies.
Figure 4.0: Continuous Network Services Sdn Bhd Organization Chart
The company is headed by a Managing Director and the entire team is divided
into four main sub-business functions namely the Sales, Admin, Pre-Sales Technical
(Consultants) and Post-Sales technical (Engineer). All of the new and current key
account sales and business development matters are being handled by the Sales team.
As usual, the admin team will be handling the finance and human resources matters
within the organization. As for the Technical team, they are entirely involved in
providing consultancy and support to the prospect and key customers.
42
Figure 4.1: IT/IS Infrastructure
Currently, due to no demand of any critical business systems such as SAP, or
CRM, the company has a simple straight forward LAN based infrastructure. It is a Gig-
E based network with a firewall at the gateway for security purposes. All users are
allowed to be connected to internet via a Streamyx 1MB connection. All of the servers
are being populated in a secured zone (DMZ) to avoid any unauthorized network users
accessing company’s data.
Since there are no enterprise systems being deployed at this point of time, every
single business processes are being done manually by either logging it into a log book
or nothing at all. In the support and maintenance context, all of the Engineers and
Manager are fully aware of the need to log down each and every single breakdown calls
and cases. The breakdown logs would really come in handy for a couple of occasions,
for example, by having the breakdown logs, they are able to track-down any cases that
have had happened from the past that are having similar symptoms like the current
43
cases. Engineers could compare the actions that have been taken earlier on those cases
and use it as a guide in solving future problems. Besides that, they could also use it as
hard evidence whenever there are issues arises between the vendor and customers. The
management team of CNS has a regular updates with Bursa for their Service Level
Agreement (“SLA”) for the WAN connectivity. As a vendor, they need to present to
their customer on what level of service they had achieved within the past month and
what are the rare cases that they had faced. In some circumstances, they even need to
provide some figures of how many breakdowns occurred in a specific month, what are
the causes of breakdown, and the products or module involved. However, without any
automated or centralized system , there are possibilities that Engineers and Manager
couldn’t retrieve any latest or updated breakdown information due to lack of a proper
information storage. There are times that engineers forgotten to update their action that
have been taken on a particular breakdown, because of they have been assigned to
attend another site and didn’t have enough time to update the breakdown log.
Internally, CNS management team would also require a proper documentation to
keep track on product stock. Stocks currently are not being kept properly. Even though
it is being done once in a while by the engineers, it is still not good enough since the
frequency of replacing parts are extremely high. Engineers are neglected to do so
because of the time needed and the hassle required to search for the particular items and
the need to change the status. For example, engineers that are attending a breakdown
require bringing a certain product items for the purpose of replacement. At the point of
return, the engineer should return back a specific Serial Numbered items, and update the
stock list. But due to the hectic life of a technical support, engineers having problems
updating the stock list.
This will then affect the monthly Management meeting where the Technical
Manager having hard time to get the updated list of stock that have been used and list of
stock that is still available for replacement.
44
The other problems that the management are facing, especially the Manager is
that he’s having a hard time in keeping track the engineer where a bouts. Typically, the
Manager have to call each and every engineers and ask them what or where are they,
and this definitely does not show any professionalism among the team and it definitely
consumes time to them. When it consumes time, it will affect the SLA, and when it
affects the SLA, it impacts the credibility of Bursa towards CNS.
4.3 Current Business Process and Data Model
After identifying the company’s business functions, organization structure, and
IT infrastructure, we can then illustrate the current business process into a diagram for
better understanding. The diagrams created based from the Object Oriented Method.
The diagrams involved are Use-Case diagram with the description, Sequence Diagram,
and Activity Diagram. All of the diagrams on this topic are shown below.
Figure 4.2: Use Case Diagram for Current Business Process
Update / View Breakdown
Submit Breakdown
System Engineer
Assignment Deligation
Create/View Report
Manager
45
Submit breakdown Use Case Description
Use Case Name : Submit breakdown
Actor : System Engineer
Description : System Engineer will have to log down any breakdown cases either gotten from
through calls or assigned by the Manager.
Fit Criterion : System Engineer
Use Case Scenarios 1. System Engineer will have to key-in the relevant breakdown details and
description which includes products or modules that has been changed,
into a breakdown form. They would also have to explain the action that
has been taken during breakdown support.
2. Manager will verify the breakdown case and actions taken by checking
with customer on the status.
Assignment Delegation Use Case Description
Use Case Name : Assignment Delegation
Actor : Manager
Description : Manager would have to assign an Engineer each time a breakdown case is
reported.
Fit Criterion : Manager
Use Case Scenarios 1. Manager receives call from customer which explains the breakdown
issue. Manager will then have to search for any unoccupied Engineer
that can attend the case.
2. Manager will verify the breakdown case and actions taken by checking
with customer on the status.
Create/View Report Use Case Description
Use Case Name : Create/View Report
Actor : Manager
Description : Manager would require generating weekly, monthly and yearly reports which
will be use for the management meeting.
Fit Criterion : Manager
Use Case Scenarios 1. Manager creates report during the management meeting.
2. Reports are generated at the end of each month before the managements
meeting. Manager will have to search all the back-log data to corporate it
into a formalized report.
46
Figure 4.3: Current Business Process Submit Breakdown Sequence Diagram
: System Engineer Breakdown Form
Customer sitebreakdown call
1: Receive breakdown call
2: Update customer breakdown log
3: Save form for future updates
4: Attend breakdown
5: Update breakdown log with action details
47
Figure 4.4: Current Business Process Assignment Delegation Sequence Diagram
Figure 4.5: Current Business Process View Report Sequence Diagram
: ManagerBreakdown Log
DatabaseCompilation Worksheet
format
1: Search for breakdown logs for a particular period
2: Compilation of breakdown logs
3: Transfers to a worksheet format
: ManagerBreakdown
callsAssign Engineer
Breakdown Form
1: Recieve breakdown calls
2: Look of unoccupied Engineer
3: Assign Engineer to attend breakdown
4: Update breakdown form on which Engineer attending
48
Figure 4.6: Current Update Breakdown Activity Diagram
Figure 4.7: Current Assignment Delegation Activity Diagram
begin
Customer breakdown form
Update breakdown/action details
end
begin
Select engineer from list
assign engineer to attend breakdown
end
Engineer not occupied
Engineer Occupied
49
Figure 4.8: Current View Report Activity Diagram
There is however some weaknesses with the current process. The weaknesses are being
discussed below:-
(a.) Lack of updated information – customer breakdowns are not being logged
properly as what the management has required. Even though the manager is
capable of updating the breakdowns and actions taken, it is best that the
engineer do it since they are the people who experience the case.
(b.) Improper monthly report – without an exact details and data of breakdowns, it is
impossible for the manager to present the monthly reports to the management or
to Bursa. By having a good report, it will help in the decision making during a
management meeting and SLA meetings.
(c.) Uncontrolled resources – technical resources need to be managed properly as it
involves dollars and cents. The more resources are wasted, the more money
required to provide a good level of service to customer. Managers need to have
good method in organizing the engineers as they are the main asset of the
company’s income.
begin
end
Compile all closed and active reports into a worksheet
list of breakdowns
50
4.4 User Requirements
The identified user requirements from the above analysis are:-
a.) Customer should be able to log in the breakdown case by them selves and
should receive a ticket number for references. All of this can be done remotely
via web based application and can be edited at any point of time.
b.) Engineers and Manager should be informed via email for any new breakdown
logs that have been reported. They can then view and update any changes or
actions towards the case. All of these criterions are achievable thru web based
application which means that they can access it at anywhere and anytime
provided that they have an internet access and a web explorer.
c.) Managers should able to control the resources much better in terms of engineers
and stock since everything is recorded and can be viewed anytime.
d.) The system should be able to update all of the breakdown logs real-time, and at
the same time updates the related stocks that have been used during the
breakdown resolution.
e.) Report of monthly breakdowns, stock availability & usage, and engineer
resolution time are easily obtained via the system which can then be use during
the CNS management monthly meeting and Bursa SLA monthly meeting.
f.) Users of the system are defined as Engineer, Manager, Administrator, and
Client/Helpdesk. Each of the users should have a different type of access level
which will be identified during the system design.
51
4.5 Conceptual Design
In the previous topic, we have discussed in more detail the legacy system of how
CNS fulfilled Bursa’s requirement in meeting their SLA. A process on how the
breakdown calls have been logged into the manual structured information storage.
Where flaws are constantly being made as it involves a direct human intervention in
every information update. Hence, the next step would be to create a system conceptual
design with the help of Object Oriented method that involves diagrams such as User
Case diagram, Sequence diagram, activity diagram and so forth. With this, it enables us
to preplan and understand what type of system application that we would be created to
improve the supporting process of CNS towards Bursa.
4.5.1 Business Process and Data Model
In this topic, a couple of diagrams have been created to illustrate the new
business process and data model that will be used by CNS in conjunction to this new
developed system. All of the diagram can be v iewed below.
4.5.2 System Architecture (Conceptual Design)
Based on the identified user requirements which were done earlier in this
chapter, we can sum up that CNS technical team and customer requires a 2 tier
architecture system that runs on web based technology. Figure below illustrates the
conceptual system architecture that will be developed for CNS and Bursa usage.
52
Figure 4.9: Conceptual System Architecture
The users that are accessible to the system are mainly the clients (Bursa),
Engineer, Manager, and Administrator. Each of the users with different types of access
level is able to access the system via internet or LAN, depending on their location.
Since it’s a 2 tier based architecture, what the users need to have; is just a web explorer
that can access the server which is located in CNS office. All of the user’s privileges
and responsibilities are predefined in the above diagram.
53
4.6 Physical Design
By having the entire conceptual design ready, we can then translate all of it into
physical design where system database and system modules are identified. Besides
database and system modules, physical design would also include drafting out interface
chart and system map.
4.6.1 Database Design
Database design is an important factor to be focused on. This will result in
flexibility of design reports and screen generation. It is identified that CSMS requires
ten tables namely Brand, Breakdown, Breakdownparts, Model, Modelsn, Module,
Modulesn, Product, Site, and User. Shown below are tables and the primary key of each
individual table.
Table 4.1: Brand table
Field Key Type brandid_ Primary int(11) name varchar(100)
Table 4.2: Breakdown table
Field Key Type breakdownid int(11) reportedby varchar(100) datelog datetime siteid_ Primary int(11) problem text
54
noofproduct int(11) engineer int(11) action text dateclose datetime status int(11)
Table 4.3: Breakdownparts table
Field Key Type breakdownpartsid int(11) breakdownid_ Primary int(11) type int(11) returnpartsid int(11) replacepartsid int(11)
Table 4.4: Model table
Field Key Type modelid int(11) name varchar(100) productid_ Primary int(11)
Table 4.5: Modelsn table
Field Key Type modelsnid int(11) sn varchar(100) status int(11) modelid_ Primary int(11)
Table 4.6: Module table
Field Key Type moduleid int(11) name varchar(100) productid_ Primary int(11)
55
Table 4.7: Modulesn table
Field Key Type modulesnid int(11) sn varchar(100) status int(11) moduleid_ Primary int(11)
Table 4.8: Product table
Field Key Type productid int(11) name varchar(100) brandid_ Primary int(11)
Table 4.9: Site table
Field Key Type siteid int(11) sitename varchar(100) person varchar(100) contactno varchar(100)
Table 4.10: User table
Field Key Type userid int(11) username varchar(100) password varchar(100) name varchar(100) email varchar(100) level int(11) contactno varchar(100)
56
4.6.2 System Chart
Below chart depicts the overall system structure of CSMS. Every users that
wishes to access the system, they requires to go through the login page first before they
are allowed to proceed with the other interface. Once in, they are have full grant to
access the system based on they access level. Each interface page will have its own
module and functions involved. All of the modules and functions are described in the
next sub topic.
Figure 4.10: System Structure Chart
4.6.3 Interface Chart
Chart below illustrates the overall interface available for the system. Consist of
17 major interfaces, all of which are centrally connected to CSMS main page. Due to
security and operational reasons, individual users will have different type of interface
access that relays to their specific operation action. Only the administrator has the
privilege to have full access of all system interfaces.
57
Figure 4.11: System Interface Chart
4.6.4 System Modules and Features
Based on the conceptual design that was done earlier in this chapter, where
business process and data model has been identified using OO methodology, we can
then use above system interface chart as a point of reference in designing system
modules and functions in CSMS system should or must have. As what the system
interface has been designed; 6 of the interfaces are some what crucial to the system
functionalities, hence modules that should be designed can be listed into 6 major
modules namely:-
1. Login Module
2. Breakdown module
3. Report module
4. User module
58
5. Site module
6. Stock module
4.6.4.1 Login Module
Figure 4.12: Login module interface
Every single user has to go through this module each time they wish to access
the system. Login module is one of the main functions that scrutinize user’s id,
password and authenticate their access level. This is also to facilitate the different levels
of admittance, depending on user’s rights.
In a nutshell, this module receives user’s login-id together with password and
verifies the validity of it so that access is granted. Further more, this module also checks
access timeout of a particular user which is active and sense if the session is still active
or inactive.
59
4.6.4.2 Breakdown Module
Breakdown module which consists of several functions; is responsible of
processing anything that involves logging of breakdowns. This is the time when
customers will access the system and log down any breakdowns which have occurred.
The module will basically start-off by receiving breakdown information that is keyed-in
by the customer and the system will then save it into database. Once it is done, the
system notifies CNS Manager through SMTP protocol; that a new breakdown case has
been logged into the system. The manager will then have to access the system in order
to view breakdown case and to assign any Engineer to attend the case.
Figure 4.13: Breakdown Form
Once logged-in, users are then prompted with CSMS main page where users are
able to see list of breakdowns that have been logged since one month period. The
breakdown table is separated into 3 different types of breakdown status namely Open,
60
Pending, Closed. Users are allowed to see the breakdown status or actions taken to any
breakdowns by only clicking on any of that particular breakdown.
As for the customer, they need to create a breakdown log prior to assigning an
Engineer by the Manager. This can be done by clicking on New Breakdown from the
system main menu and a breakdown form will then be shown for the user to provide the
breakdown details such as site details, product information, and breakdown description.
At this point, the status of the case will be pending, which means pending for an
Engineer.
Subsequently after a breakdown has been logged, the Manager can then assign
an Engineer from the same breakdown form. A section which can only be accessed by
the Manager, will list down all of the Engineers, where the Manager should choose only
one that will be attending the case. Once the Manager has chosen an Engineer, the
system automatically notifies that particular Engineer for the case through an SMTP
message. At this point, the breakdown will be in an open status, which means that the
case is currently open and pending for resolution.
After the Engineer had attended the case, they would then have to update the
breakdown log by filling-in the items changed and describe the action taken. Once that
is done and saved, the system will then informs the Manager and Customer through
SMTP message saying that the case is already closed. A link of that breakdown will be
given in the message so that the user can be pointed straight to that breakdown form.
4.6.4.3 User Module
User module which can only be accessed by the system administrator is used to
manage the system users. With this module, system administrator can add-in new users,
61
edit their details, as well as deleting it from the system. The main function of this
module is to differentiate between users so that the flow of maintenance can be done
smoothly without any obstructions.
Figure 4.14: User administration interface
By clicking User menu from the main menu, the system prompts the list of
registered users with their access level and other details. From there, system
administrator able to either edits user details or deletes the entire user from the system
record. By clicking Edit, the system will then appears a user form which is filled with
user’s details. If Delete button is clicked, a pop-up window will appear that requests
delete confirmation from the user.
If additional user is required to be add-in into the system, system administrator
would have to click on Add New menu, and the system provide a blank user form for
they system administrator to fill-in. They system basically requires standard user details
such as name, login-id, password, email address, and etc. Once it is saved, the system
stores the data into database.
62
4.6.4.4 Site Module
Figure 4.15: Manage Site interface
Every Stockbroker sites that is available within Bursa Malaysia will be
registered into this system. This is to ensure that CNS will able to log the breakdown
case precisely based on Bursa Malaysia requirement. Not only the breakdown issue, or
product type that need to be logged down, but sites which are involved for the
breakdown needed to be logged down together with the other details. As for that, this
module is required to manage those available stock broking sites so that it eases the
users during breakdown logging as it will be appeared in the breakdown form.
This module basically allows only system administrators to access it. The
function, which is exactly the same as Users module allows the system administrator to
add, edit or delete sites.
63
4.6.4.5 Stock Module
Stock module is a little bit tricky as it involves a lot of different database tables
and functions. Stock module has been designed and developed such a way where it
requires several different forms but at the same time relates to each other. It also will
ease the job the system user during breakdown log as it involves choosing different type
of stock.
Figure 4.16: List of Module – Serial Number
The main form for this module is Model – Serial Number and Module – Serial
Number. These two forms are important where all of the stock items will be stored into
the database through this form. However, in order for the system to store the overall
stock data details, Brand, Product, Model, and Module has to be filled-in first. This is
due to the fact that brand, product, model, and module are quite unique and have
varieties in the market. Since those details varies and may change from time to time
depending on IT market, so system administrator has a freedom to create it anytime.
64
In terms of adding, editing, and deleting stock, it is quite the same as the other
two earlier module where user administrator able to add stock starting with Add Brand
function – Add Product function – Add Model / Module function – Add Model / Module
Serial Number function.
4.7 System Architecture (Physical Design)
A conceptual design of CSMS system has been identified in the earlier sub
chapters. Hence, by having all of the system modules in hand, we can then plan out the
physical design of the system architecture. Below picture depicts the overall physical
design of system architecture. The system will basically consist of 3 major components
which are the HTML scripts, PHP scripts and MySQL database. All of the system
functions and modules runs on PHP scripting where it connects through
dbConnection($db_host,$db_username,$db_password,$db_name) function to the
MySQL database.
HTML scripting is used to represents all of the PHP scripts to the system users
through the web server engine which is either Apache or Internet Information Service
(“IIS”). With that the user would able to access the system by using any type of web
based application tool such as Microsoft Internet Explorer or Netscape Navigator from
their desktop PC, provided that they are either connected to the server LAN or normal
public internet.
65
Figure 4.17: System Architecture (Physical Design)
4.8 Hardware and Software Requirements
Proposed hardware specification:
1. Server – Pentium 4 with a minimum of 256MB RAM, 80GB of disk space.
2. Client/Terminal – Pentium 4 with a minimum of 128MB RAM, 40GB of disk
space.
66
Software Requirement:
1. Development - ASP Scripts, HTML, Macromedia Dreamweaver, Microsoft
Access, Microsoft Windows 2000 Server.
2. Production - Windows 2000 Professional (for Server), Windows XP Advance
(for client), Internet Explorer 6
4.9 Test Plan
It is crucial for any new or enhanced system implementation to be tested before
it goes to life. Main reason for a test is to neutralize the newly developed system from
any major system bugs or errors, to ensure all functionality specify in the specification
and design are carried out according to the implementation coding, and etc. With proper
testing, the new system is hope to be able to operate smoothly and could also minimize
any downtime.
For this implementation, three types of testing which will be discussed further in
next chapter, namely usability test, function test, and most importantly user acceptance
test (UAT). Except for UAT, the development or technical team can do the other tests
without user’s involvements. Before system hand over, user must test the system and
sign off the UAT to officially accepting the system. During each type of testing, any
bugs or errors found must be rectified accordingly before system rolls out. Retesting is
required to ensure all bugs have been fixed.
67
4.10 Summary
With thorough system analysis and a well system design, the implementation or
development phase will progress smoothly as the critical part of system implementation
has been taken care of. Basically there are six main modules that will be developed in
this CSMS system development. System architectural design, database structure design,
and users interface chart are discussed here. System testing plan, which has four types
of testing such as unit test, integration test, system test and user acceptance test, is
briefly mentioned and will be further discussed and done in the next chapter after the
development phases.
68
CHAPTER V
DESIGN IMPLEMENTATION
& TESTING
5.1 Overview
Implementation and testing are two of many other development activities of a
system. It includes hardware and software installation, configuration, coding, testing,
and training. Whenever the system is completely been installed and implemented, it’s
vital to ensure that a sign-off session between the project team and user/client are done
to formalize system handing. System documentations such as user manuals and system
administrator manual need to be prepared for the users as a guideline in using the
system correctly and for system maintenance.
5.2 Coding Approach
The coding approach that has been used for this particular project is based on
Object Oriented (“OO”) approach which we’ve discussed in previous chapters. By
69
having OO concept, Classes with its Attributes, Entities, and Activities are pre defined
in the system design and are then transferred into program codes. The concept of
developing this system is by separating the codes into various classes or modules. The
modules which have been identified in earlier chapter are as follows:-
7. Login Module
8. Breakdown module
9. Report module
10. User module
11. Site module
12. Stock module
5.2.1 Login Module
The main page that the users will be prompted by the system is the login module
where they will be asked for their Login-id and password. Function
adminAuth($abs_path) will be used for the password and login-id authentication at any
point of system page access.
?php function adminAuth($abs_path){ if (isset($_POST["Username"]) || isset($_POST["Password"])) { $querylogin = "select * from user where username = '" . $_POST["Username"] . "' and password = '" . md5($_POST["Password"]) . "'"; $resultlogin = mysql_query($querylogin); if (mysql_num_rows($resultlogin)) { while($row = mysql_fetch_array($resultlogin)) { $userid = $row["userid"]; $level = $row["level"]; }
70
$pwd = md5($_POST["Password"]); // encrypted using md5 setcookie("username", "$_POST[Username]", time()+2592000); setcookie("password", "$pwd", time()+2592000); setcookie("userid", "$userid", time()+2592000); setcookie("level", "$level", time()+2592000); $datelog = date("YmdHis"); $userlog = $_POST["Username"] . "_" . $datelog; setcookie("userlog", "$userlog", time()+2592000); $authPWD = "1"; } else { echo "<script> alert('Sorry, you have entered either an invalid username or wrong password. Please try again!'); </script>"; echo "<script> window.location='?page=".md5("login")."'; </script>"; } } elseif (isset($_COOKIE["username"]) || isset($_COOKIE["password"])) { $querylogin = "select * from user where username = '" . $_COOKIE["username"] . "' and password = '" . $_COOKIE["password"] . "'"; $resultlogin = mysql_query($querylogin); if (mysql_num_rows($resultlogin)) { $authPWD = "1"; } else { echo "<script> top.location.href='" . $abs_path . "?page=".md5("login")."&err=3'; </script>"; exit(); } } else { print "<script> top.location.href='" . $abs_path . "?page=".md5("login")."&err=1' </script>"; exit();
71
} if (!isset($authPWD)) { print "<script> top.location.href='" . $abs_path . "?page=".md5("login")."&err=2' </script>"; exit(); } }
5.2.2 Breakdown Module
This module would basically be accessed most of the users in the system. This is
the main and critical module whereby all the breakdown logs are captured and stored
through this a breakdown form. This breakdown form consists of several functions such
as:-
• function recordAdd($CurrentPage),
• function products($noOfProduct,$parts,$partsid)
• function recordAddProcess($CurrentPage)
• function recordEditManager($CurrentPage,$id)
• function recordEditEngineer($CurrentPage,$id)
• etc.
Below a glimpse of the most critical function in this module since it will start to
initiate a breakdown log.
function recordAdd($CurrentPage) { if (isset($_GET["siteid"])) $siteid__ = $_GET["siteid"]; else $siteid__ = "";
72
if (isset($_GET["noproduct"])) { $noproduct__ = $_GET["noproduct"]; $parts = array(); if ($noproduct__ != 0 || $noproduct__ != "") { for ($n=1;$n<=$noproduct__;$n++) { $thePart = "part" . $n; $parts[$n] = "$_GET[$thePart]"; $thePartID = "partid" . $n; $partsid[$n] = "$_GET[$thePartID]"; } } } else $noproduct__ = 0; if (isset($_GET["datelog"])) $datelog__ = $_GET["datelog"]; else $datelog__ = date("d-m-Y H:i:s"); // 22-02-2006 02:02:53 if (isset($_GET["problem"])) $problem__ = $_GET["problem"]; else $problem__ = ""; $query = "select * from site order by siteid desc"; $result = mysql_query($query); $options = array(); while ($row = mysql_fetch_array($result)) { $options[$row['siteid']] = $row['sitename']; } $options2 = array(); for ($n=1;$n<=8;$n++) { $options2[$n] = $n; } if ($siteid__ != "") { $query2 = "select person, contactno from site where siteid = $siteid__"; $result2 = mysql_query($query2); while (list($person,$contactno) = mysql_fetch_row($result2)) { $person_ = $person;
73
$contactno_ = $contactno; } } else { $person_ = ""; $contactno_ = ""; }
5.2.3 User Module
User module is developed to manage the users of the system. The module would
basically able the system administrator to add, edit and delete users through a form. Due
to too many of functions involved in this particular module, below only shown the most
important functions of all.
function recordAdd($CurrentPage) { for ($l=1;$l<=4;$l++) { // create the data for select option level $options[$l] = accessLevel($l); } ?> <table cellspacing="0" cellpadding="0" border="0" width="100%"> <form name="theForm" action="<? echo $_SERVER["PHP_SELF"];?>?page=<? echo $CurrentPage;?>&subpage=AddProcess" method="post" ONSUBMIT="return checkFields();" enctype="multipart/form-data"> <tr> <td class="regularTxt1"><b>Username</b></td> </tr> <tr> <td class="regularTxt1"><input type="text" name="username" maxlength="20" size="15"></td> </tr> <tr> <td class="regularTxt1"><b>Password</b></td> </tr> <tr> <td class="regularTxt1"><input type="password" name="password" maxlength="20" size="15"></td> </tr>
74
<tr> <td class="regularTxt1"><b>Name</b></td> </tr> <tr> <td class="regularTxt1"><input type="text" name="name" maxlength="100" size="40"></td> </tr> <tr> <td class="regularTxt1"><b>Email</b></td> </tr> <tr> <td class="regularTxt1"><input type="text" name="email" maxlength="100" size="40"></td> </tr> <tr> <td class="regularTxt1"><b>Level</b></td> </tr> <tr> <td class="regularTxt1"><? echo selectOption("","level",$options);?></td> </tr> <tr> <td class="regularTxt1"><b>Contact No</b></td> </tr> <tr> <td class="regularTxt1"><input type="text" name="contactno" maxlength="20" size="15"></td> </tr> <tr> <td ><hr size="1" color="999999"></td> </tr> <tr> <td> <input type="button" name="back" onclick="javascript:window.history.back();" value="Back"> <input name="Reset" type="reset" value="Reset" > <input type="submit" name="submit" value=" Save "> </td> </tr> </form> </table> <? } function recordAddProcess($CurrentPage) { $pwd = md5($_POST["password"]); // encrypt the pwd using md5 $query = "insert into user (username,password,name,email,level,contactno) values ('$_POST[username]','$pwd','$_POST[name]','$_POST[email]',$_POST[level],'$_POST[contactno]')";
75
$result = mysql_query($query); mysql_close(); echo "<script> document.location.href='$_SERVER[PHP_SELF]?page=$CurrentPage'</script>"; }
5.2.4 Site Module
Same as the above User module, Site module also consist of several functions
namely add site, edit site, and delete site. Since all of the function code are quite long,
below only shown the most critical ones to the system.
function recordAdd($CurrentPage) {
?>
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<form name="theForm" action="<? echo
$_SERVER["PHP_SELF"];?>?page=<? echo $CurrentPage;?>&subpage=AddProcess"
method="post" ONSUBMIT="return checkFields();" enctype="multipart/form-data">
<tr>
<td class="regularTxt1"><b>Site</b></td>
</tr>
<tr>
<td class="regularTxt1"><input type="text" name="site"
maxlength="100" size="40"></td>
</tr>
<tr>
<td class="regularTxt1"><b>Person</b></td>
</tr>
76
<tr>
<td class="regularTxt1"><input type="text" name="person"
maxlength="100" size="40"></td>
</tr>
<tr>
<td class="regularTxt1"><b>Contact No</b></td>
</tr>
<tr>
<td class="regularTxt1"><input type="text" name="contactno"
maxlength="20" size="15"></td>
</tr>
<tr>
<td ><hr size="1" color="999999"></td>
</tr>
<tr>
<td>
<input type="button" name="back"
onclick="javascript:window.history.back();" value="Back">
<input name="Reset" type="reset" value="Reset" >
<input type="submit" name="submit" value=" Save ">
</td>
</tr>
</form>
</table>
<?
}
function recordAddProcess($CurrentPage) {
$query = "insert into site (sitename,person,contactno) values
('$_POST[site]','$_POST[person]','$_POST[contactno]')";
$result = mysql_query($query);
77
mysql_close();
echo "<script>
document.location.href='$_SERVER[PHP_SELF]?page=$CurrentPage'</script>";
}
5.2.5 Stock Module
Stock module is literally different from the other modules in a sense that it has a
lot of different forms for different functions. However, those functions will then be
consolidated into a centralized format by a database query. This is due to the fact that
the system was formed such a way where it will ease the user during data-entry. Below
exemplifies the main codes for this matter.
function recordAddProcess($CurrentPage) {
$datetimelog = date2Sql($_POST["datelog"]);
$query = "insert into breakdown (reportedby,datelog,siteid_,noofproduct,problem) values
('$_COOKIE[username]','$datetimelog',$_POST[site],$_POST[noproduct],'$_POST[problem]')";
$result = mysql_query($query);
$query2 = "select breakdownid from breakdown where reportedby =
'$_COOKIE[username]' and datelog = '$datetimelog'";
$result2 = mysql_query($query2);
$breakdownid = mysql_result($result2, 0, 0);
for ($np=1;$np<=$_POST["noproduct"];$np++) {
$theType = $_POST["typeid_".$np];
78
$thereturnpartsid = $_POST["returnpartsid_".$np];
$query3 = "insert into breakdownparts (breakdownid_,type,returnpartsid) values
($breakdownid,$theType,$thereturnpartsid)";
$result3 = mysql_query($query3);
}
mysql_close();
echo "<script>
document.location.href='$_SERVER[PHP_SELF]?page=$CurrentPage'</script>";
}
5.3 System Evaluation / Result
It is important to ensure that the system is fully tested before it goes life or even
during development process. This guarantees that the system will not cause any
downtime during business process. There are several important tests that need to be
conducted in order to ensure the system is bug-free, functions are met, user’s
requirements are incorporated, data integrity, and system flow are consistent. For this,
three kind of testing are being conducted, namely Usability Test, Function Test, and
User Acceptance Test.
79
5.3.1 Usability Test
Usability test is conducted at the end of each module development. Main focus
for this type of tests is to ensure that the modules are well developed based on the
system specifications, and also to ensure that it is well integrated with smooth data flow
from one module to another. Below are some description of the module test and the
expected results of each module usability test.
1. Login Module
Test
Provide valid and invalid login and password into login.php form. Submit data which
has been entered. Expected Results
System should permit valid login and password, and prompt with forbid action for any
invalid input.
2. Breakdown Module
Test
Provide breakdown inputs from initiating breakdown log, assigning engineer, and
updating breakdown actions. Expected Results
System should able to keep track of the updated status of breakdown either open,
pending, or closed. Last result would be to update the breakdown action.
80
3. Report Module
Test
Choose any one of the available reports. Change the report output by choosing the ascending or descending of a report column. Expected Results
Reports can be viewed when it is chosen with the ascending or descending mode.
4. User Module
Test
Key-in user information and save it. Edit and delete any available user data. Expected Results
System should be able to save any latest update/changes that have been made.
5. Site Module
Test
Key-in any site information and save it. Edit and delete any available site data. Expected Results
System should be able to update any changes that have been made.
81
6. Stock Module
Test
Provide stock inputs from Product to Module serial number and save it into stock list.
Edit and Delete whatever possible. Expected Results
System should able to keep track of the updated status of breakdown or update the stock
list whenever it is updated.
5.3.2 Function Test
Function test is where the system is tested partially and independently, function
by function within a module, to ensure that particular portion of a module is workable
within it. In this project, each function of module is tested individually before a full
module can be tested. Basically, this function test will verify that every input of data is
being allocated correctly in the appropriate tables and fields. Re-testing is required after
modification if the functions are not functioning as it should be. This test is done by
module by module base where in each module; every single function is being tested.
1. Login Module
Functions adminAuth($abs_path), accessLevel($levelId), adminMainPage($strURLString), adminMenu($menuDetails)
Action Test Key-in login id and password in the login form and submit.
Test Result
All functions should able to pass data from one function to another without any errors. System prompts for any invalid inputs and grants for valid inputs.
82
2. Breakdown Module
Functions
deleteRec(page), recordList($current_page), recordAdd($CurrentPage), products($noOfProduct,$parts,$partsid), recordAddProcess($CurrentPage), recordEditManager($CurrentPage,$id), products($noOfProduct,$pid), recordEditManagerProcess($CurrentPage), recordEditEngineer($CurrentPage,$id), products($noOfProduct,$pid), recordEditEngineerProcess($CurrentPage), recordDelete($id,$CurrentPage,$subpage)
Action Test
Tests are done in a sequence order where it starts at recordAdd, to recordEditManager, to recordEditEngineer. Other functions are tested for its delete functionality.
Test Result
All functions should able to pass data from one function to another without any errors and data should able to be saving in database. System prompts for any invalid inputs and grants for valid inputs.
3. Report Module
Functions ***
Action Test
Tests are done in a sequence order where it starts at recordAdd, to recordEditManager, to recordEditEngineer. Other functions are tested for its delete functionality.
Test Result
All functions should able to pass data from one function to another without any errors and data should able to be saving in database. System prompts for any invalid inputs and grants for valid inputs.
83
4. User Module
Functions
recordAdd($CurrentPage), recordAddProcess($CurrentPage), recordEdit($CurrentPage,$id), recordEditProcess($CurrentPage), recordDelete($CurrentPage,$id)
Action Test
Tests again are done in a sequence order where it starts at recordAdd, to recordEdit, to recordDelete. Other functions are tested for its processing functionality.
Test Result
All functions should able to pass data from one function to another without any errors and data should able to be saved in database.
5. Site Module
Functions
recordAdd($CurrentPage), recordAddProcess($CurrentPage), recordEdit($CurrentPage,$id), recordEditProcess($CurrentPage), recordDelete($CurrentPage,$id)
Action Test
Tests again are done in a sequence order where it starts at recordAdd, to recordEdit, to recordDelete. Other functions are tested for its processing functionality.
Test Result
All functions should able to pass data from one function to another without any errors and data should able to be saved in database.
84
6. Stock Module
Functions
recordAdd($CurrentPage), recordAddProcess($CurrentPage), recordEdit($CurrentPage,$id), recordEditProcess($CurrentPage), recordDelete($CurrentPage,$id)
Action Test
Tests again are done in a sequence order where it starts at recordAdd, to recordEdit, to recordDelete. Other functions are tested for its processing functionality.
Test Result
All functions should able to pass data from one function to another without any errors and data should able to be saved in database.
5.3.3 User Acceptance Test (“UAT”)
This is a very critical phase for any system implementation. It leads to formal
acceptance of the new system. UAT requires significant involvement by end users to
test the new system as if it is in real life. Before starting the UAT, there are several
things that need to be setup and prepared in order to achieve a successful acceptance
test.
A set of Test Plan is normally developed in order to plan precisely and in details
of the expected results from the testing that will be conducted by the end user. The test
should also provide realistic and adequate exposure of the system to all reasonable
expected events that conform to the user requirements and main objective of this system
implementation. Basically, the analysts need to plan the test based on the initial
application of the project system requirements. The analysts will first define the criteria
and design how the test is to be conducted before preparing the detailed test scripts to be
executed by the users during the UAT in order to verify the system is working as
expected.
85
After the testing, all results and comments are documented into UAT and
evaluation is done from it. There are usually three (3) categories of severity such as
below:
• Minor – continue with the testing; rectification time minimum which able to meet
production date
• Major – continue with the testing; major modification is required which might delay
the production date
• Critical – stop testing due to severe disruption to the business process flow or major
data integrity problem.
Any defects need to be rectified, and later to be retested before signing off the
UAT form to indicate that the system has passed all tests within acceptable margins.
Finally, the project sponsor will sign off the final acceptance of the system before
putting it into production. UAT documentation can be referred in Appendix E.
5.4 User Manual
Please refer Appendix F for a full system user manual.
86
5.5 Summary
The implementation of this system took place based on the system design and
analysis which was discussed in previous chapters. The implementation has been done
in a way that it eases the process of documentation and testing. All code developments
are done by modules which consist of several functions. At the end of each coding, test
are done to ensure that all of the functionality is developed accordingly. The most
crucial task of this stage is to have a test with the users it self so that they are fully
aware of which portion of the system met their needs and which ones are not.
Improvements need to be made on the functions that have failures during test.
87
CHAPTER VI
ORGANIZATIONAL STRATEGY
6.1 Overview
In this chapter, a detail study and analysis as well as planning are being made on
how to make the management’s strategic vision for the company a reality by
implementing the Customer Service and Maintenance System into the organization.
After identifying the business processes and how the system would able to improve the
overall course, we can then build a firm strategy to ensure that each individual person
that’s related to this project able to acclimatize to it without ever affecting the business
production by and large and at the same time could ensure that customer support are
achievable at a very high standard.
6.2 Roll-out Strategy
Roll-out strategy is a part of many strategies that involves in any system
deployment. The main intention to have this type of strategy is to ensure that this new
system are deployed without any hiccups along the process and to ensure that it is well
accepted by all users during its system implementation. There are many roll out
88
strategies that an organization can adopt in implementing the new system into the
production environment which at the same time reduces the risk of incurring serious
business problems during transition and implementation. As for this particular project
roll-out plan, pilot implementation is used to deploy this system through out the
company. By having a pilot type roll-out plan, users feedback will be taken and be
transformed into system improvements.
Table 6.1: Roll-out planning
Pilot Duration System User System Function
Remark
1st Level 2 week Engineer, Customer, Manager
Breakdown Log, Assign Engineer.
to create and edit breakdown log. Manager able to assign engineer.
2nd Level 1 week Manager Report able to create report.
3rd Level 1 week Administrator, Engineer
Stock, to manage stock list.
4th Level 1 week Administrator Manage User, Manage Site
to manage user and site.
Referring to the above table, this roll-out plan consists of several pilot levels and
each pilot level will occupies several system users. As for the 1st level, Engineers,
Customer, and Manager would have the first-hand to use the system where they will be
experiencing the ability to create and edit breakdown log by the system. Besides that,
the manager would have to get use to assigning engineers with the help of system too.
The main reason for them to be the first to start this roll-out plan is so that they could
get use to the system functionalities. Since they are the ones that will be using this
system frequently; they need to be more familiarized than others where it will also
ensure that the subsequent pilot levels will not be experiencing any difficulties.
The next following level would facilitate the Manager himself to create reports
based on Management requirement. This level of pilot are planned to be rolled-out for
only 1 week. Next is to roll-out the stock management where Administrator and
89
Engineer will be involved. This level will introduce the user on how the stocks are
managed. Lastly, the user management function is introduced in the roll-out plan where
the administrator will able to try out the function to manage the system users.
The strategy is to introduce the system gradually in smaller group of people so it
is easier to focus and control the group besides educating and get familiarization of
using the new system. This is crucial as it might affect the smoothness of production
process.
During the deployment stage, it is recommended for the project team to provide
a handholding or post implementation support for a certain period of time. This
motivates the users and give them confidence of using the new system. For certain
critical implementation, a rollback plan should also be outlined in case the new system
is not functioning as expected and the organization could not have a downtime due to its
business situation.
6.3 Change Management
Change Management plan is crucial in achieving the system deployment as it
introduces a new Customer Service and Maintenance System into the organization.
Change management is the task of managing change that can be either dealing with
people, technology or organization in a planned and more systematic manner to achieve
organizational goal. In order to manage the changes successfully, a change
management plans needs to be identified.
A rational or self-interest change strategy is used in this project. It is an attempt
to convince individuals that the change is to their personal advantage; when this appeal
is successful, it can be relatively easy. However, implementation changes are seldom to
everyone’s advantage. This is the most desirable strategy because it will give a long-
90
term results as the people changed due to their own self-interest and willingness, and
not being forced. People and organization are identified to be involved in this change
management plan.
6.3.1 People
People are well known of change resistance especially when dealing with their
natural resistance and it involves new technologies, the way they work. There are few
ways of handling this situation and one of the main ways is to conduct training on how
to fully use the system for the advantage of their own and the company. A formal
training should be conducted by the project team as this will give the users clearer
picture of system navigation, and the benefits that the system is providing in the users
day-to-day tasks. During the training, users should be given a User Manuals that
describes steps of using the system in detail.
6.3.2 Organization
Since there will be an additional application that will be installed and introduced
in the organization, changes are required in terms of employment. A system
administrator should be introduced which is responsible to manage and administer the
system. He would also be required to provide support to the users, functionally and
technically of the system.
91
6.4 Business Continuity Plan (“BCP”)
Having a business continuity plan is now an essential part of being in business in
the internet age, and is vital to maintaining customer confidence by supporting fast and
effective recovery following a business interruption. This is due to the fact that the time
it takes to recover from a disaster, whether it is a system or a site outage, has to be
shorter than ever to avoid the severe consequences of impacting productivity and
profitability, damaged current and future revenues, and lost confidence of customers.
One of the essential parts of BCP is to have a disaster recovery for the entire IT
infrastructure. The recovery activity depends on the severity of a certain disruption.
The impact severities are commonly classified as below:
• High Severity - putting the company out of business or severely limit its ability
to function
• Medium Severity - causing the company significant damage and cost but the firm
will survive
• Low Severity - causing company breakdowns that are typical of day-to-day
operations.
However, since CNS is such a small sized organization without a firm budget
into spending high-technology solutions, only several aspects of disaster recovery can
be taken in-place. The system is not vital to the company’s operation, which means that
even the system will be down for a coupe of hours, the highest severity level it will
cause is only up to ‘Medium Severity’. This shows that it is irrational to have an
expensive DR infrastructure just to ensure that the system won’t be down if ever
disastrous happens. Hence, this project only is proposing the Management a suitable DR
planning which involves:-
1. Hardware redundancy
2. Tape Backup and Recovery
92
3. System Cluster
4. Storage Area Network (“SAN”)
6.4.1 Hardware redundancy
The key criterion of having a disaster recovery plan is to have redundancies on
each and every component and equipments involves in IT systems that can’t tolerate
any system downtime. As for this Customer service and maintenance system, it requires
server components that are redundant in a sense that if any of the server’s prime
hardware components failed, a secondary spare will kick-in into action. This ensures
that any of the system processes are not interrupted due to any occurrence of parts
failure.
Most of the servers available in the market now days have options of providing
redundant power supplies, system fans, processors, network interface cards (“NIC”),
hard disks and etc. is up to the customer to identify which part of the server components
they required to be redundant. As for CNS project, it is vital to have the hard disks to be
in RAID 5 configuration, dual power supply with dual fans, dual NICs, dual host bus
adapters (“HBA”), and dual processors.
6.4.2 Tape Backup and Recovery
In order to guarantee data availability and are easily and constantly obtainable,
albeit a disastrous happens, tape backup would be essential where it able to remain data
at a much longer retention period. Backup is a process that produces images of system
data. Images are catalogued and stored on non-volatile storage media. Stored images
can be used for a variety of purposes such as for archival storage, for intermediate
93
versions of changing information or as a reference in case of disk failure. Besides
cataloging backups and providing the system administrator with policy choices, the
backup service able to move data between volatile and non-volatile storage.
There are a couple of ways and technologies in implementing tape backups.
From direct attached tape drive to an enterprise central tape library, either ways ensures
that data are being secured from any damages or tempering. Backup software is also
required in enabling the backup job to be run automatically without the need of any
human interventions. A policy will then be set either by the Management or by the IT
administrator him-self so that backup job is being done everyday, with full system
backup which includes file-systems, server and application configurations, and
databases. Below exemplify the backup policy of the Customer Service and
Maintenance System server:-
Table 6.2: Backup Policy of Customer Service and Maintenance System Server
Backup Job
Mon
day
Tues
day
Wed
nesd
ay
Thur
sday
Frid
ay
Satu
rday
Sund
ay
Operating System Configuration File System Application
Full
Bac
kup
Full
Bac
kup
Full
Bac
kup
Full
Bac
kup
Full
Bac
kup
Full
Bac
kup
Database
Diff
eren
tial B
acku
p
Diff
eren
tial B
acku
p
Diff
eren
tial B
acku
p
Diff
eren
tial B
acku
p
Diff
eren
tial B
acku
p
Diff
eren
tial B
acku
p
Full
Bac
kup
A server backup job can be separated into 5 different forms. Each can have their
own backup policy where-by it does not relate to each other. Database are being backup
with Differential backup method due to the fact that database has a higher rate of data
changes per day and usually it has much bigger storage in-size comparing to others.
94
Since it is bigger, it is best to have differential backup which only backs-up only the
changes rather than backing up the whole entire database which obviously takes longer
backup window. Unlike the operating system, system configuration, file system, and
application which has minimal data changes and smaller sized data files; full-backup is
fine since it requires shorter backup window.
At the end of each backup, backup media are then being sent off-site at a 3rd
party Data Recovery Centers (“DRC”). The DRC will then ensure that the tapes are
well stored and labeled for easy retrieval and storing. The retention period of each tape
is set to be not more than 1 week for tape recycle.
6.4.3 System Cluster
Continuous access to data and applications has become an operational necessity
for today’s IT environments. Downtime, whether it is planned or unplanned, is no
longer an option as this downtime may result in lost revenue, reduced productivity and
diminished user satisfaction. To protect against outages caused by application or server
faults, CNS will deploy application/system clustering solutions to automate application
failover to redundant/standby server hardware.
Cluster provides high availability to applications, databases, and servers by
monitoring the health and performance of the resource and automatically restarting the
resource on another available server in order to avoid a complete failure. This means
that at any point of time where the primary server goes down, the secondary will start to
kick-in accepting user’s processes. To enable a cluster environment however requires
shared external storage solution for a shared storage which will be discussed in the next
topic.
95
6.4.4 Shared storage
The requirement of shared storage is needed purely due to the need of a system
cluster for Customer Service and Maintenance System. To have a system cluster, the
servers has to be connected to a shared storage where the data will be resided in it. This
means that both of the servers will be connected to the storage, but only one server will
be accessing the disk at any one time. Below illustrates a clustered server with a storage
area network (“SAN”) environment.
Figure 6.0: Clustered with shared storage.
96
6.5 Expected Organizational benefits
By looking at the earlier chapters, where studies have been made on the
traditional way of supporting Bursa, it is obvious that this newly developed system
should bring beneficial not only to the company, but also to the employees and
customers. Table below listed the comparison between the traditional processes and the
new Customer Support and Maintenance System.
Table 6.3: Benefits Comparison
No. Traditional Process New System
1
• Customer breakdown are not been entertained effectively.
• Customer breakdown are logged properly and efficiently into an automated system.
2
• Engineers aren't aware of the actual condition of breakdown.
• Engineers have clear cut idea of what needs to be done and what to be expected at site.
3
• Customer calls are not centrally entertained; they have to call each Engineer to get hold.
• Customer has a single point of contact - which is the system.
4
• Customer can only identify the status of Engineer activities by only calling them.
• Customer can check the status at the breakdown status in the system.
5 • Manager aren't able to detect the
where abouts of Engineer.
• Manager able to identify who are vacant and who aren't.
6
• Manager isn’t able to identify the breakdown status.
• Manager able to identify the status by checking it in the system.
7 • Stocks aren’t easily updated. • Stock is updated effectively by
the administrator. •
8
Breakdown calls are not properly documented. It’s a hassle to update the log since Engineers has to be in office to be able to do it.
• The system is accessible anywhere through internet. Engineer does not have to be in office to update any status.
97
No. Traditional Process New System
9
• Breakdown logs are hard to be retrieved since the log itself is not updated.
• It is easier to retrieve the breakdown logs by the search engine provided by the system. Even historical data can also be obtainable.
Based from the comparison above, we can then list down the benefits that CNS
can gain from the system proposed:-
Table 6.4: System benefit
Features Benefits • Fast retrieval of information and report
execution • Ease in decision making process • Available at anytime
Ad-hoc query and report execution
• Increase staff performance • More systematic and organized • Sharing the same information to avoid
unsound decisions • Avoid information duplication, and
inconsistency resulted in accuracy of data
Centralized Database
• Improve communication within the group • Assigning engineer effectively Electronic verification and
approval • Increase company productivity and efficiency
• Ease of communication Remote access via internet • Closer relationships between customer,
engineer, and manager Real time and Online updates • Updates are near to real-time as the
engineers able to update breakdown actions once its done
98
6.6 Summary
The success of new system implementation does not only depend on the system
architecture and design alone but also in managing the changes that it brings to the
organization during the transition period and deployment. Managing people is the most
difficult part to deal with compared to others. The new system is expected to give
benefits to the organization in terms of increase in overall productivity and
performance, besides being more effective and improve efficiency. Organizational
strategy is an important subject for any organization to thoroughly study the impact
should there be any changes in the current working environment before the actual
implementation of any new system.
99
CHAPTER VII
DISCUSSION & CONCLUSION
7.1 Overview
After the system is successfully made and deployed, there will be a lot of errors
or flaws that we had experienced through out the entire process. Nevertheless, it is vital
that we take this opportunity to improve the processes and methods in the next system
development projects. In this chapter, we will be discussing the achievements during the
analysis and design phase where a lot of resources and time had been spent. Besides
that, a discussion on the challenges and constraints that we’ve encountered during the
development processes which can be improved for the next projects. Lastly, what are
the future system improvements that can be done to facilitate the effectiveness and
efficiency of doing maintenance and servicing.
7.2 Achievements
In order to classify this system as an achievement or not is to evaluate all of the
functionalities with the project objectives which had been listed down during initial
project stage.
100
As for the first project objective which is to study the traditional process of
receiving and attending customer’s breakdown calls, it is obvious that it had been
achieved due to the fact that currently with the new system deployed, all of the
traditional ways of logging down breakdown case has been migrated into a digital and
automated format. It will not be achieved if we hadn’t made any studies to the
conventional business process. With the new system in hand, all of the process are
automated in a way that it is stored in a centralized database but can still be accessed by
the relevant users from almost anywhere and anytime provided that they had a
appropriate connection to the system.
The second objective for this project is to create and develop a centralized
system which has some features mainly to have the ability to log breakdown cases,
manage resources and manage report. This has also been achieved in this project where
a web-based system is developed and can be remotely accessed by the users. Customers
are able to log down any breakdown case into the system easily without having to call
the respective Engineers. Engineers are now able to identify what type of incident
happening at customer’s place before they actually attends the case. The system is also
able to generate reports for the Managers and management from time to time based on
the system capabilities. Other than that, the system will be managed by the system
administrator in terms of users, product stock, and customer sites. Therefore, this shows
that the project does achieve the second objective of the project.
CSMS definitely improves tremendously in terms of providing SLA to Bursa
Malaysia. With this new system in place, Engineers are now able to act fast to the
occurrence without having to guess or make assumption before they attend the case.
They are given with the exact information with the exact environment so that they can
predict what would be the action and step that they should take. Manager would also
able to act fast in a sense that he can straight away know which Engineer is available for
a particular breakdown call.
101
Lastly, the fourth objective is also accomplished. With CSMS, CNS and Bursa
Malaysia is together moving from manual to electronic logging tool. In addition, all
respective users will need to use CSMS in their daily operations. It will all be
centralized and centrally managed and hosted by CNS.
Therefore, CSMS is now can be considered as a necessity to CNS to be
competitive in the IT servicing market.
7.3 Constraints and Challenges
Implementing a project, especially for a system really is a challenge to any
project team. The most bothersome that they will face in a project is the implementation
constraints that are unavoidable, and in most cases the project implementation has to go
on without delay. As a result, the project manager or project team has to find ways in
dealing with this kind of situation. Below are the lists of constraints and challenges
throughout the whole period of CSMS project.
7.3.1 Constraints
Constraints are elements that may restrict, limit or place control over a project,
project team or project action that usually impacts project schedule, cost or scope. The
constraints during CSMS implementation are as follows:
• Limited time
• Limited resources
• Limited programming knowledge and skills
• Limited information
102
• Limited time
The time given to implement this project is too short. As a result, the
development of the system is based only on core function of the requirement. However,
the system is developed to be able uphold any future upgrades or enhancements to
incorporate additional functions probably with bigger scope that can give more benefits
to the users and organization as a whole.
• Limited resources
Resources are limited due to the fact that this project is done for a Master
Degree thesis project and not for actual life production system. Hence, this project is not
given full support from the higher management which they do not grant for any
programmers that can fully focus on this particular project.
• Limited programming knowledge and skills
Learning specific PHP coding language and MySQL database requires time to
practice and to gain skills. With limited knowledge and ability, the programming
progress is very slow which it requires more time to do the development.
• Limited information
Since it is more of a Master Degree project than a life production system, most
of the information has to be assumed and be as a prototyped. Among other things,
information is quite vital and confidential when it comes to Bursa Malaysia as it
involves ringgit and cents. Hence, we are not allowed to gain full access to the details of
the real data and information of the Bursa Malaysia IT environment.
103
7.3.2 Challenges
There are definitely a lot challenges if we want a project to be successful. The
project team has to confront various challenges through out the period of CSMS
implementation which are identified are as below:
• Motivate users
• Management involvements
• User fact findings
• Motivate users
The most difficult part in the implementation is to get the users to use the
system. Users need to be motivated to start using the system due to the very well
known fact that human are reluctant to try new things. The benefits of using the system
need to be clearly informed, and if they had already started using the system, they can
see the benefits such as less effort in writing breakdown reports, information is at their
fingertips and online retrieval, etc, and they will later really rely on the system after
comfortably using it.
• Management involvements
Without the support from the Management, the system implementation will face
many difficulties through out its journey. This is because management is the one who
gives directive to its subordinate. Further on, management is also the one who approves
policy and procedures of the organization. The management is seen as a role model to
use the system and the subordinates will be the follower. Encouragement and influence
from the management will motivate users more than the project team’s command.
104
• User fact findings
It is very hard to get an appointment with the users because they are busy with
their daily tasks especially the Engineers as they would most of the time be out of the
office doing support. In addition, the time they allocated for the interview is very short
and not enough to get details of user requirements. As a result, the project team needs to
schedule several follow up meetings with the users, and try to optimize the time that
they got. Worst case, we would have to assume some of the information that needs to be
gathered so that the next phase of the project can be proceeds.
7.4 Aspirations
Due to some constraints, CSMS system should be further enhanced as what have
been mentioned earlier since the developed functionalities are only focusing on the core
functions of logging breakdown case, creating reports, and some system management.
The system will be much more comprehensive if below suggestions are developed
together with the current available modules. Some suggestions for CSMS enhancement
and advancement are as below:
• SMTP notification module
• Enhance report module
• Search engine module
• Integration of stock module
105
• SMTP notification module
Currently, the system does not equipped with any SMTP notification module
due to some project constraint. However, it is a simple job to integrate this module with
the breakdown module so that the system will be much more complete. With the SMTP
module installed, the system will then able to send notification to the respective users
on the status of any breakdown case. Nevertheless, this module requires a full test and
incorporation with the SMTP server of CNS. This may consume some time as it
involves an email production server which may congest or affect the server processing
performance.
• Enhance report module
Report module needs to be enhanced in the next project phase so that Managers
and management able to customize the reports that they want to have. Currently, the
reports provided by the system are pretty much fixed with specific columns and
information is in place for view. The users are only allowed to change certain columns
to be at an ascending or descending state. Hopefully with the new enhance report
module, users can have the privilege to add more reports to their customized needs.
• Search engine module
Search engine is important when it comes to big chunk of data. Data
warehousing will be crucial when auditing come in place. Say for example if the
management or Bursa Malaysia requires a data which is one to two years back, and
obviously the data has gown tremendously over the years. A search engine is required
to search and filter the information that only fall under the certain period that is
required. Even though traditional search can still be done, but it will consume a lot of
106
resources and time. Definitely a search engine will help them dig those information in a
much more effective manner.
• Integration of stock module
It is best if the stock module is integrated with the breakdown module. This is to
improve in terms of updating stocks in a more real-time updates. When a customer is
reporting an item is suspected fault, the stock module will change that particular item
status to ready to change. Once the Engineer updates that breakdown case with a new
item changed, the stock module would automatically change that new stock item from
new to used status. This will not need any human intervention like as what is needed
now.
7.5 Summary
There are a lot of challenges and constraints that the project team had experience
during the whole entire project duration. Even though there are a lot of errors or flaws
from the system, the project team had handled it very well. Nevertheless the system did
still achieve the entire project objective that had been previously outlined albeit the
challenges that had slowed down the development progress. Lastly, with hopes that with
the additional modules that will be done in the future can improve the system
functionalities extremely so that CNS can take it as an advantage to be more
competitive in today’s competitive IT market edge.
107
REFERENCES
1. Web Sites
1. Heitech Padu Berhad, Product and Service,
http://www.heitech.com.my/products/index.html
2. KMS Software Ltd, http:/www./kms-software/about-us/
3. Overland Storage Incorporation, http://www.overlandstorage.com/
2. White Papers and Articles
1. Larry Caretsky, Ease the pain of CRM implementation, S.T.E.P Commence
Corporation, White Paper, 2002.
2. Chris Bucholtz , Customer care system allows CSRs to serve as guides for Web
sites Telephony, White Paper, April 27 1998.
3. Epicor, Proven Implementation Methodology Is the Determining Factor, Epicor
Software Corporation, White Paper, 2004.
4. Stephen R. Gardner, Data Warehousing and Customer Care, Communication
News, Dec 1999.
3. Books
1. Philippe Kruchten, Rational Unified Process-An Introduction, Addison-Wesley,
1999.
2. Grady Booch, Jim Rumbaugh, and Ivar Jacobson, Unified Modeling Language-
User's Guide, Addison-Wesley, 1999.
108
3. Universiti Teknologi Malaysia (1999), Panduan Menulis Tesis Universiti
Teknologi Malaysia, Skudai, Johor. Pusat Pengajian Siswazah.
4. H. M. Deitel, P. J. Deitel, T. R Neito, Internet & World Wide Web. How To
Program, New Jersey. Prentice Hall, 2002.
109
APPENDIX A
GANTT CHART FOR CSMS PROJECT
110
APPENDIX A
GANTT CHART
111
APPENDIX A
GANTT CHART
112
APPENDIX B
USE CASE DIAGRAM
113
APPENDIX B
USE CASE DIAGRAM
Use Case Diagram for Current Business Process
Submit breakdown Use Case Description
Use Case Name : Submit breakdown
Actor : System Engineer
Description : System Engineer will have to log down any breakdown cases either gotten from
through calls or assigned by the Manager.
Fit Criterion : System Engineer
Use Case Scenarios 3. System Engineer will have to key-in the relevant breakdown details and
description which includes products or modules that has been changed,
into a breakdown form. They would also have to explain the action that
has been taken during breakdown support.
4. Manager will verify the breakdown case and actions taken by checking
with customer on the status.
Update / View Breakdown
Submit Breakdown
System Engineer
Assignment Deligation
Create/View Report
Manager
114
APPENDIX B
USE CASE DIAGRAM
Assignment Delegation Use Case Description
Use Case Name : Assignment Delegation
Actor : Manager
Description : Manager would have to assign an Engineer each time a breakdown case is
reported.
Fit Criterion : Manager
Use Case Scenarios 3. Manager receives call from customer which explains the breakdown
issue. Manager will then have to search for any unoccupied Engineer
that can attend the case.
4. Manager will verify the breakdown case and actions taken by checking
with customer on the status.
Create/View Report Use Case Description
Use Case Name : Create/View Report
Actor : Manager
Description : Manager would require generating weekly, monthly and yearly reports which
will be use for the management meeting.
Fit Criterion : Manager
Use Case Scenarios 3. Manager creates report during the management meeting.
4. Reports are generated at the end of each month before the managements
meeting. Manager will have to search all the back-log data to corporate it
into a formalized report.
115
APPENDIX B
USE CASE DIAGRAM
CSMS Use Case Diagram
Login Use Case Description
Use Case Name : Login
Actor : Customer, System Engineer, Manager, System Administrator
Description : Users need to get verification to login into system
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. User will have to key-in their user-id and password.
2. System will verify the user-id and password entered,
3. Access granted once information given are verified.
Update / View Breakdown
Submit / Report Breakdown
Maintain system
System Engineer
Customer
System Administrator
Login
Assignment Deligation
View Report
Manager
116
APPENDIX B
USE CASE DIAGRAM
Submit / Report breakdown Use Case Description
Use Case Name : Submit / Report breakdown
Actor : Customer, System Engineer.
Description : User will report a breakdown occurrence.
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. User will have to key-in details of breakdown and choose to save.
2. System will them save it into the database for future reference.
Update / View Report of Breakdown Use Case Description
Use Case Name : Update / View Report of Breakdown
Actor : Customer, System Engineer.
Description : User can update or view status of breakdown
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. System will show the list of active breakdowns.
2. User chooses any of the breakdown reports, and user either view or
updates the status of breakdown.
3. If user chooses to update, system will save the latest update
of breakdown.
117
APPENDIX B
USE CASE DIAGRAM
Assignment Delegation Use Case Description
Use Case Name : Assignment Delegation
Actor : Manager.
Description : User can delegate the breakdown support to Engineers.
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. System provide list of active breakdowns 2. Manager chooses one breakdown report, and selects an Engineer to
attend.
3. System will notify Engineer of his need of attendance.
Assignment Delegation Use Case Description
Use Case Name : View Report
Actor : Manager, Higher Management
Description : Users able to view audit report.
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. System will list down generated reports.
2. User selects an audit report to be printed in an understandable visual
format.
118
APPENDIX B
USE CASE DIAGRAM
Maintain System Use Case Description
Use Case Name : Maintain System
Actor : Higher Management
Description : User able to configure the system meet the business requirement
Fit Criterion : A normal workstation will be used
Use Case Scenarios 1. System shows the latest configuration of the system
2. User select what type of configuration need to be change
3. The system will save the changes of new configuration.
119
APPENDIX C
SEQUENCE DIAGRAM
120
APPENDIX C
SEQUENCE DIAGRAM
Current Business Process Submit Breakdown Sequence Diagram
: System Engineer Breakdown Form
Customer sitebreakdown call
1: Receive breakdown call
2: Update customer breakdown log
3: Save form for future updates
4: Attend breakdown
5: Update breakdown log with action details
121
APPENDIX C
SEQUENCE DIAGRAM
Current Business Process Assignment Delegation Sequence Diagram
: ManagerBreakdown
callsAssign Engineer
Breakdown Form
1: Recieve breakdown calls
2: Look of unoccupied Engineer
3: Assign Engineer to attend breakdown
4: Update breakdown form on which Engineer attending
122
APPENDIX C
SEQUENCE DIAGRAM
Current Business Process View Report Sequence Diagram
: ManagerBreakdown Log
DatabaseCompilation Worksheet
format
1: Search for breakdown logs for a particular period
2: Compilation of breakdown logs
3: Transfers to a worksheet format
123
APPENDIX C
SEQUENCE DIAGRAM
Login Sequence Diagram
: System EngineerLogin Main System Database
1: Key in username and password
2: Check for verification
3: User Confirmation
4: System access
124
APPENDIX C
SEQUENCE DIAGRAM
Submit Breakdown Sequence Diagram
: System Engineer Main System Breakdown Form
Database
1: Select breakdown report
2: Fill in details of breakdown
3: Update information
4: Show updated information and details
5: Save report
125
APPENDIX C
SEQUENCE DIAGRAM
Update/View Breakdown Sequence Diagram
: System Engineer
Main System Breakdown Form
DatabaseBreakdown list
1: Select breakdown report
2: Request for viewing
3: Show updated list
4: Show selected breakdown
5: Update status
6: Update information
126
APPENDIX C
SEQUENCE DIAGRAM
Assignment Delegation Sequence Diagram
: ManagerMain System Breakdown
FormDatabase
1: Select to Assign Breakdown
2: Request to view breakdown list
3: Show updated list
4: Assign Engineer
5: Update Database
127
APPENDIX C
SEQUENCE DIAGRAM
View report Sequence Diagram
: ManagerMain System Report List Database
1: Select View Report
2: Request for updated list
5: View selected report
4: Select report
3: List of updated report
128
APPENDIX C
SEQUENCE DIAGRAM
Maintain System Sequence Diagram
: Higher Management
Main System System maintanance
Database
1: Select Maintain System
2: Request for updated system configuration
3: Shows updated configuration
4: Update new configuration
5: Update new input
129
APPENDIX D
ACTIVITY DIAGRAM
130
APPENDIX D
ACTIVITY DIAGRAM
Current Update Breakdown Activity Diagram
Current Assignment Delegation Activity Diagram
begin
Customer breakdown form
Update breakdown/action details
end
begin
Select engineer from list
assign engineer to attend breakdown
end
Engineer not occupied
Engineer Occupied
131
APPENDIX D
ACTIVITY DIAGRAM
Current View Report Activity Diagram
begin
end
Compile all closed and active reports into a worksheet
list of breakdowns
132
APPENDIX D
ACTIVITY DIAGRAM
Login Activity Diagram
begin
key-in login id and password
press on "login button
wrong login id or password
end
System Main interface
Login interface
133
APPENDIX D
ACTIVITY DIAGRAM
New Breakdown Activity Diagram
begin
end
Choose "new" breakdown log menu
key-in breakdown details
System Main interface
Customer breakdown form
press "submit" button
press "cancel" button
134
APPENDIX D
ACTIVITY DIAGRAM
Update Breakdown Activity Diagram
begin
System Main interface
Choose "update" menu
Customer breakdown form
Update breakdown/action details
press "submit" button
press "cancel" button
end
List of breakdowns
Select active breakdown from list
135
APPENDIX D
ACTIVITY DIAGRAM
Assignment Delegation Activity Diagram
begin
System Main interface
List of breakdowns
Select active breakdown from list
Customer breakdown form
assign engineer to attend breakdown
press "submit" button
press "cancel" button
end
136
APPENDIX D
ACTIVITY DIAGRAM
View Report Activity Diagram
begin
System Main interface
Choose "view report" menu
List of Reports interface
Select report to view and printed
Report is created and showed
end
137
APPENDIX D
ACTIVITY DIAGRAM
Management Activity Diagram
begin
System Main interface
Choose "user accounts" menu
List of users interface
Choose to add/update/edit user account
User account form
press "submit" button
press "cancel" button
end
138
APPENDIX E
USER ACCEPTANCE TEST
139
User Acceptance Test Test Script
Customer Service and
Maintenance System
For
Bursa Malaysia
140
Introduction
Purpose This document outlines the User Acceptance Test (UAT) objectives, test environments, test strategy, test procedures, resources required for the UAT exercise which will commence on the ddth MM, YY, for a duration of XX working day.
Objectives
The main objectives for this UAT exercise is to test on the capability of Customer Service and Maintenance System in addressing its specific requirements on the following: -
1. User Access Level Test
2. Breakdown Logging Test
3. Report Creation Test
4. System Administration Test
141
Roles & Responsibilities
The contact list will provide all parties a list of the respective personnel for the duration of the project implementation. The individual’s roles are listed in the title and the job functions are also listed in the title.
CNS
Bursa Malaysia
Full Name Title Contact E-Mail
Adam Samsudin System Engineer 019-3657611 [email protected] Jack Chong Manager 016-2029797 [email protected]
Full Name Title Contact E-Mail
George Lee Assistant Manager 012-2143982 [email protected]
142
Test Environment
Database (DB2) Server Information Model Number: Compaq Evo (Production), Dell Optiplex (DR)
OS: Windows 2000 Advance Server
Version: SP 3 & 4
Processor: 2.4GHz (Production), 2.8GHz (DR)
Memory: 512GB RAM (Production), 256GB (DR)
Database: MySQL
Network Diagram
143
4. Test Criteria
4.1 User Access Level Test
Procedure Expected Results Test Result • A Manager access the
system System only shows Breakdown and Report Module.
• An Engineer access the system
System should only show Breakdown module
• System Administrator access the system
User has full access to the system.
Success Criteria:
All expected results must occur in order for a test to be considered passing.
Disposition: Pass Fail
Notes :
Tested & Verified by:
CNS Bursa Malaysia
Date :
144
4.2 Breakdown Logging Test
Procedure Expected Results Test Result • Create a new
breakdown case using New Breakdown form.
All of the breakdown details and customer information are well presented and save into database.
• Assign an Engineer to attend a breakdown case.
Manager should able to assign an Engineer from the breakdown form filled-in by the customer.
• Update breakdown case with action taken.
Engineer must be able to edit and save the changes that they do in the breakdown form.
Success Criteria:
All expected results must occur in order for a test to be considered passing.
Disposition: Pass Fail
Notes :
Tested & Verified by :
CNS Bursa Malaysia
Date :
145
4.3 Report Creation Test
Procedure Expected Results Test Result • Create one of three
available Reports from the system by the Manager.
Manager should able to view any reports that is preset by the system
Success Criteria:
All expected results must occur in order for a test to be considered passing.
Disposition: Pass Fail
Notes :
Tested & Verified by :
CNS Bursa Malaysia
Date :
146
4.4 System Administration Test
Procedure Expected Results Test Result • Create, Edit, and
Delete users from the system.
System administrator should able to create new, edit, and delete users from the system.
• Create, Edit, and Delete site from the system.
System administrator should able to create new, edit, and delete site from the system.
• Create, Edit, and Delete stock item from the system.
System administrator should able to create new, edit, and delete stock item from the system.
Success Criteria:
All expected results must occur in order for a test to be considered passing.
Disposition: Pass Fail
Notes :
Tested & Verified by :
CNS Bursa Malaysia
Date :
147
5. Test Result Summary
Test Execution
Test Case Disposition (pass/fail)
Comments
User Access Level Test
Breakdown Logging Test
Report Creation Test
System Administration Test
Signoff
Bursa Malaysia Signature:
Name:
Date
Remarks:
CNS Signature:
Name:
Date
Remarks:
148
APPENDIX F
CSMS USER MANUAL
149
Breakdown Log Create New Breakdown (User: Customer, Engineer, Manager)
Step 1: Login with valid username and password, and click Enter.
Step 2: From the CSMS main
menu, click New Breakdown.
Step 3: Select breakdown site
from the drop-down list menu.
Step 4: Choose the amount of items involved in the case from the drop-down menu. Fill-in details of
items at each individual field
provided. Describe the
problem occurred in the
Problem text box.
*Note: Please verify all
information given in the form.
Step 5: Click Save to save the form.
150
Breakdown Log Update Breakdown (User: Engineer)
Step 1: Login with valid username and password, and click Enter.
Step 2: From the CSMS main menu,
click Open menu. Click Edit at the
chosen breakdown.
Step 3: In the breakdown form, click at
the pop-up menu icon on the right
hand side of Product table;
select the respective items that
are related to the job done.
Click Insert to insert selected
items into the form.
Step 4: Describe the action taken
in the Action taken column.
Step 5: Click Save to save the changes made.
151
Manage User Create User (User: Administrator)
Step 1: Login with valid username and password, and click Enter.
Step 2: Click User from the
main menu. Click Add
New at the top left of
user’s table list. (Click
Edit to edit available
user).
Step 3: Fill-in the user details appropriately, and choose the user access level from the Level drop-down
list.
Step 4: Click Save to save the user.
152
Manage Site Create Site (User: Administrator)
Step 1: Login with valid username and password, and click Enter.
Step 2: Click Site from the main menu.
Click Add New at the top left of Site
table list. (Click Edit to edit available
site).
Step 3: Fill-in the site details
appropriately with correct Tel. No. for future Engineer reference.
Step 4: Click Save to save site.
153
Manage Stock Add Item (User: Administrator)
Step 1: Login with valid username and password, and click Enter.
Step 2: Click Model – Serial Number from the main menu to go to the stock list page. From the page,
click Add New menu to add new stock item. (Click Edit menu to edit available stock item)
Step 3: Select
related details for
the stock item
from the drop-
down list menu
available. Please
double confirm
the serial number by
checking it from the
physical item S/N
barcode.
Step 4: Once all are confirmed, click Save to save the new stock Item.
154
Report Create Report (User: Manager)
Step 1: Login with valid username and password, and click Enter.
Step 2: From the main menu,
select a report, from
Breakdown, Stock, or
Resource. Click on the
selected menu to see the
report.
Step 3: System shows the report
in a new page. Click Close
once done with the report.
155
APPENDIX G
CSMS INTERFACE
156
APPENDIX G
CSMS INTERFACE
Login module interface
Main system interface
157
APPENDIX G
CSMS INTERFACE
Closed case interface
Breakdown Form
158
APPENDIX G
CSMS INTERFACE
Breakdown Form for Engineer action– Assigned Engineer
User
administration interface
159
APPENDIX G
CSMS INTERFACE
Delete confirmation
Add / Edit user interface
160
APPENDIX G
CSMS INTERFACE
Manage Site interface
Add / Edit Site interface
161
APPENDIX G
CSMS INTERFACE
Add / Edit Brand interface
List of Product interface
162
APPENDIX G
CSMS INTERFACE
Add / Edit Product interface
List of Model interface
163
APPENDIX G
CSMS INTERFACE
Add / Edit Model interface
List of Model – Serial Number
164
APPENDIX G
CSMS INTERFACE
Add / Edit Model – Serial Number interface
List of Module
165
APPENDIX G
CSMS INTERFACE
Add / Edit Module interface
List of Module – Serial Number
166
APPENDIX G
CSMS INTERFACE
Add / Edit Module – Serial Number interface
167
APPENDIX H
QUESTIONARRE
Request for Information – Customer Service and Maintenance System
168
Introduction
This Request for Information (RFI) has been prepared in order to accomplish our acquisition of a commercial toolbox. It outlines all of our requirements necessary for a software solution for the marketing, sales and service functions. The RFI contains the following sections: 1) an explanation of the selection procedure and rules to be used during the selection phase; 2) a brief description of the company background; 3) our business requirements, including numerous questions outlining the functionality needed as a part of the selected software solution; 4) our technical requirements; 5) our requirements for the selected vendor; 6) questions regarding price and the pricing structure; and, 7) a section on the quality of the package. This RFI has been compiled from a thorough requirements analysis accomplished through a number of interviews representing the different companies and functions of Continuous Network Services.
Request for Information – Customer Service and Maintenance System
169
Business requirements
Address module 1. Which client data can be stored? 2. How many addresses can be stored per client? What kind of addresses? 3. Can the language be stored by client? Is this the central repository? Does it
determine the language of a quote? 4. Can information be stored on who the sales manager is for this client? 5. What data can be stored / retrieved concerning client finances (e. g. credit limit,
outstanding invoices, etc)? 6. What data can be stored concerning client line of business, machines, capacity,
end-use, etc? How can we perform analysis on this data? 7. What data can be stored concerning machines installed by competitors? 8. What data can be stored concerning agents (e. g. by product, by area/country or
customer)? 9. How are relations between clients (e. g. parent-child) handled? 10. How can we retrieve information concerning a client status summary; pending
activities, to-do's, payments, service calls (escalations), service visits planned, pending orders?
11. How can we store general information concerning country, currency, etc? What
can we do with it? 12. How can we store specific client agreements (e.g., price, payment)? How do we
use this data in a quote? How can this be used in the financial department for invoicing?
Request for Information – Customer Service and Maintenance System
170
Product module As explained in the background, we deal with three kinds of products: complex machines, consumables and service. 1. Is a central place available for storing products, technical and commercial
product information? How can we use this information? 2. What kinds of data can be stored relating to products? 3. How many price lists are possible? How can the price be retrieved in a quote? 4. Can we store prices by labor and material costs, integral costs, rock bottom,
max price? Can these prices be built up from components? 5. Can a price offered be client- or country -pecific, depending on the client’s
address? 6. What kind of data can be stored relating to products of competitors? 7. How can differences between <client name> products and competitors’
products be stored and used? 8. How is version management implemented? 9. How can a difference be made between temporary and permanent prices? 10. How can we print an overview of prices from different price lists for
comparison? 11. How do we store soft performance criteria, e. g. client satisfaction data?
Request for Information – Customer Service and Maintenance System
171
Mailing 1. How does the mailing module work? 2. How do we select the addresses? How many selection criteria are available
and on which fields? Are min/max statements possible? 3. How are the response processed? 4. Can different types of mailing be defined? Can different followup actions be
defined? Please explain. 5. How does the package interface with word processing programs such as MS
Word? 6. How can automatic to-do actions be generated for followup by individual sales
representatives? 7. What kind of response input and analysis is possible? 8. Is the mailing module a standard or optional component?
Visit reports 1. How are visit reports used? 2. How can templates or scripts be defined and used? 3. How is information retrieved from visit reports (e. g. keywords)? 4. Are visit reports part of the quote process or order process? Describe. 5. How can visit reports be used to generate invoices for services and/or parts
delivered?
Request for Information – Customer Service and Maintenance System
172
6. How can actions be triggered from a visit report? 7. How can an overview of visit reports by client be generated? Explain. 8. How can interest in future products be captured? How can we use this
information?
Agenda module 1. How is the agenda being used? 2. How can one person make an appointment with another? 3. How is contact information available? 4. Can one look into the agenda of another? 5. Are priorities available to schedule appointments? 6. How are to-do’s selected and progress reported?
7. Is it possible to set priority levels?
8. What kind of reporting is possible from the history (at client level, country level,
by sales person, etc.)?
Request for Information – Customer Service and Maintenance System
173
Order registration 1. Are sales order types used? How? 2. Which steps can be defined by sales order type? 3. What information is used from the quote? 4. How can information be changed? 5. How many levels does a sales order have? 6. How can information for engineering, production, logistics, finance, service,
training, etc. be generated from a sales order? 7. If the language of the sales order is in German, can the generated materials for
engineering, production, logistics, finance be in English? Explain. 8. How can information be retrieved? On which fields can a selection be made? 9. How can demonstration results be stored and invoiced? 10. What data can be added to a sales order? 11. How can an intermediate invoice be generated?
Request for Information – Customer Service and Maintenance System
174
Analysis 1. What kind of analysis tools are available? 2. How many selection criteria are available? 3. Is output information adjustable? How? 4. Can duplicates in searches be deleted? 5. What can be done with group “non-categorized”? 6. How are market segments defined? How can developments be tracked? 7. How can market size and share be analyzed? 8. How are unusual fluctuations identified? 9. How can competitors be monitored? 10. How do we analyze lost/won orders, reasons, time spend, overall time, and
competitors?
Forecasting 1. What tools are available? 2. Where does the information come from for the forecast? 3. What types of forecast are supported? 4. How is forecasting possible by turn-over, product, product group?
Request for Information – Customer Service and Maintenance System
175
5. How can the calculations be customized? 6. How can actuals be compared to forecast? 7. How can a product life cycle be stored and used?
Service 1. How are calls registered? 2. What information can be stored relating a call? 3. Which client information can be stored? 4. During the call, how can we search for possible solutions? 5. How can possible solutions be linked to a call? 6. How is the link to the to-do list implemented? 7. During the call, how is a potential service agreements retrieved? 8. How can the call be routed to the second line of support, back to the first line,
etc? 9. How can additional information be added to a call? 10. How does the system warn for due dates? 11. How can the call history by machine be used? 12. How can analysis be performed on response performance, calls per area,
machine line, client, and combinations?
Request for Information – Customer Service and Maintenance System
176
13. How can service engineers be scheduled? Is a visual aid available? 14. How are service orders generated? 15. Can invoices be generated based on used time with helpdesk, day/night fee,
service contract information, multiple service types, hours spent by engineers? How? Can this invoice be changed by hand?
16. How do we close a call? What happens afterwards? 17. How do we add information from a call to the knowledge base? 18. How does an engineer record the hours and materials spend? 19. How do we analyze services by product group, expertise, warranty hours, etc? 20. How are service agreements stored? How are they used later on? 21. How are results relating to service agreements analyzed? 22. How can service agreements be extended? 23. How are the number of service calls per product and product group per
customer and/or area retrieved?
Request for Information – Customer Service and Maintenance System
177
Technical requirements
1. Which programming language is used? 2. How will source code be made available? 3. Which hardware platform do you support? 4. On which databases do you run? 5. How is the link with Microsoft Office implemented? 6. How is the link to the internet organized? 7. Which protocols do you support? 8. What data is held on the client? 9. Does the client run on Windows 95/98? 10. How can a search be defined? 11. How can a selection on clients be made without customization and output to
screen, paper, and file? 12. How is multi-language supported, e. g. by user, in reports, etc? 13. How is multi-currency supported? 14. How is the EURO supported? 15. How is access security being handled (local and remote)? 16. How is information security being handled, e. g. by module, screen, field?
Request for Information – Customer Service and Maintenance System
178
17. How can the software be implemented in modules? 18. How can functionality be selected using parameters? To what extent, explain. 19. How can the software be customized? 20. Which development tool do we need? 21. How do we adjust screens and reports?
22. How do we transfer information between our logistics, financial and other
systems? 23. How do we run batches? 24. Can a user work off-line? How? 25. If changes are made to prices, how are these changes distributed to the off-
line users? 26. How is a selection made on the information to be down-/uploaded? 27. How is information transferred through the internet? 28. How is workflow incorporated? 29. To which mail systems do you interface? 30. How can the address list in a mail system be used? 31. How is on-line help available? 32. How can we adjust / create on-line help?
Request for Information – Customer Service and Maintenance System
179
33. How can help text be exported to MS Word? 34. Are wizards available? For what tasks? 35. What features are available to make the system user friendly (e. g. toolbars,
short cut keys, scripts, etc. )? 36. How many updates were released in the last 12 months? 37. When is the next release expected? 38. What will be in the next release? 39. How can we print on standard <client name> paper? Which reports, orders,
information, etc?
Request for Information – Customer Service and Maintenance System
180
Vendor requirements
1. When was your company founded? 2. Where is the headquarters? 3. How is your company organized? 4. Where are you located? 5. Who and where are your distributors? 6. How is implementation support organized? 7. How is operational support organized? 8. What is the primary line of business you serve? 9. Which customers do you have in the line of business (lob) machine building? 10. Which customers do you have in the lob industrial consumable manufacturer? 11. Which customers do you have in the lob industrial service? 12. How many installations do you have worldwide, in North America, Asia,
Europe? World wide: North America: Asia: Europe: 13. Is the company publicly held? If yes, which stock exchange and what has been
the performance of the stock? 14. How many employees do you have worldwide, in North America, Asia, Europe? World wide: North America: Asia: Europe: 15. How do you support implementations?
Request for Information – Customer Service and Maintenance System
181