You are on page 1of 66

Miniproject Report

Company Profile - Vodafone Group


Vodafone Group Plc (Vodafone), incorporated in 1984, is a mobile
communications company operating across the globe providing a range of communications services.
The Company offers a range of products and services, including voice, messaging, data and fixed-line
2significant global presence, with equity interests in over 30 countries and over 40 partner markets
worldwide. It operates in three geographic regions: Europe, Africa and Central Europe; Asia Pacific,
and the Middle East, and has an investment in Verizon Wireless in the United States.

In Europe, the Company’s mobile subsidiaries and joint venture operate under the brand name
Vodafone. Its associate in France operates as SFR and Neuf Cegetel, and its fixed-line communication
businesses operate as Vodafone, Arcor, Tele2 and TeleTu. Vodafone’s subsidiaries in Africa and
Central Europe operate under the Vodafone brand, or in the case of Vodacom and its mobile
subsidiaries, the Vodacom and Gateway brands. Its joint venture in Poland operates as Plus and its
associate in Kenya operates as Safari com. The Company’s subsidiaries and joint venture in Fiji operate
under the Vodafone brand, and its joint venture in Australia operates under the brands Vodafone and 3.
The Company’s associate in the United States operates under the brand Verizon Wireless. Vodafone
has an international customer base with 341.1 million proportionate mobile customers across the world
as of March 31, 2010. The Company also has around 7,600 Vodafone-branded stores in its controlled
markets, which sell its products and serve Vodafone Group Plc (Vodafone), incorporated in 1984, is a
mobile communications company operating across the globe providing a range of communications
services. The Company offers a range of products and services, including voice, messaging, data and
fixed-line solutions and devices to assist customers in meeting their total communications needs.
Vodafone has a significant global presence, with equity interests in over 30 countries and over 40
partner markets worldwide. It operates in three geographic regions: Europe, Africa and Central Europe;
Asia Pacific, and the Middle East, and has an investment in Verizon Wireless in the United States.

For the welfare of the society:


Mr. Marten Pieter
Managing Director and CEO, Vodafone Essar.
In the CEO Council meeting on Thursday, Mr. Sibal met telecom service
providers and equipment suppliers. The Minister told the operators that telecom

Customer Relationship Management 1


Miniproject Report

sector should not be just regarded as a source of revenue for the Government, but
as a larger contributor towards economic growth and welfare of society.
The Aims and Objectives of Organization
Vodafone has six global goals. One of these is 'to be a responsible business'. This includes the issues
of ethics. Companies develop strategies to meet their goals.
With the latest digital switching technology like OCB, EWSB, AXE -10, FETEX, NEC etc and
widespread transition network including SDH system up to 2.5 Gbps, DWDM system up to 80 Gbps,
web telephony, DIAS, VPN, Broadband & more than 400,000 data customer, Vodafone continues to
serve this great nation.
Its responsibility include improvement of the already impeccable quality of telecom service,
expansion of telecom network, introduction of new telecom service in all villages & instilling
confidence among each customer.
Vodafone has managed to shoulder these responsibility remark ability & defaults. Today with
over 45 million line capacity, 99.9% of its exchanges are digital, nationwide network management &
surveillance system (NMSS) to control telecom traffic & over 400,000 routes Kms. of network.
Vodafone is a name to reckon within the world of connectivity. Among with its vast customer base,
Vodafone's financial & asset bases too are vast & strong. Consider the figures as the speak volumes on
Vodafone's standing. Mobile is always at the heart of what we do, but now we are moving into
Integrated mobile and PC communication services. We are doing that in two ways – wirelessly through
3G and HSDPA (High-Speed Download Packet Access), but also using fixed line broadband services
likeDSL(Digital Subscriber Line).

Customer Relationship Management 2


Miniproject Report

Objectives of Project

Vodafone is the largest telecommunication limited organization which leading with the
telecom operation throughout the country. Vodafone conducts many number of community
development programs, such as Inventory Management System (IMS), personnel information system
(PIS) Commercial information system (CIS), Accounting information system (AIS), Fault recording
system (FRS) etc. All these works are maintain manually and the manual work is much more complex
and time taking for maintains and also does not provides suitable information for any complex problem
if any arises .To avoid the problem of manual processing, there is a need of computerization of all the
above system. So with the aim of to get efficient and fruitful result we develops a software package
(Project), which helps in reducing the complexity and the problems faced in manual processing, the
project is more reliable for accessing the data.
Hence, I gather all the information in my project. The projects are named together as
Customer Relationship Management (CRM). Under this various sub module are also includes, i.e.
• To maintain information of customer of • Complain of customer,
organization. • Complain details etc.
• Status of customer’s help desk, • Details of customer call details.
• Customer’s account Details.
Total system having categorized as,
 One is administrative part  Other is user part.
Here only administrator can do add, delete, update records from the database. User cannot do those
things without permission of administrator. His/her can generate data report day-wise, month-wise or
yearly. Here user interface is designed by using VB6.0 and database used SQL 8

Customer Relationship Management 3


Miniproject Report

System analysis

IDENTIFICATION OF NEED:

Data Services
The Company provides a range of data products, including personal computer (PC) connectivity,
Internet services, applications and roaming. PC connectivity services, available through Vodafone
Mobile Broadband devices and certain handsets, provide mobile Internet access for laptop, net book
and PC users. Vodafone Mobile Broadband provides access to the Internet and to business customers’
systems. The Company deploys high-speed packet access+ (HSPA+) networks and development of
devices (such as universal serial bus (USB) modems) to support these speeds. It has deployed high-
speed HSPA services (peak rate of 14.4 Mbps) in selected markets, such as the United Kingdom, and
HSPA+ (peak rate of 21.6 Mbps and 28.8 Mbps) in selected markets, such Ireland, Portugal and
Greece. USB sticks with exclusive designs, and plug and play software are offered. A variety of laptop
models are available with built in third-generation (3G) broadband and Vodafone subscriber
identification module (SIM) cards.
The Company’s Internet services enable users to access the Internet on their mobile handset.
Applications include e-mail services with real-time handheld access to e-mail, calendar, address book
and other applications. Data roaming allows customers to use the Company’s services on a mobile
network when travelling abroad.
Fixed Services
Vodafone’s fixed service incorporates fixed broadband, offered mainly through digital subscriber line
(DSL) technology, and fixed-line voice, which allows consumer and enterprise customers to make
fixed-line voice calls using Vodafone as their total communications provider. The Vodafone DSL
Router combines mobile and fixed broadband services. This means customers can connect immediately
after purchase via the USB broadband modem and then later with fixed broadband when this has been
provisioned. At this stage, the USB modem can continue to be used with a laptop for usage outside of
the home. During fiscal 2010, the Company has also launched Vodafone Sure Signal in the United
Kingdom, which, used in conjunction with home fixed broadband, provides customers with indoor 3G

Customer Relationship Management 4


Miniproject Report

coverage. As of March 31, 2010, the Company’s fixed-line services were available in 13 countries in
addition to Gateway, and it had 5.6 million fixed broadband customers. Vodafone DSL Router was
launched in six countries in fiscal 2010.
Value-added Services
During fiscal 2010, the Company launched Vodafone 360, an Internet service for mobile, PC and Mac.
It brings phone, e-mail, chat and social network contacts together in one place. Vodafone 360 provides
customers with access to games, music and thousands of applications, as well as browsing the Internet.
Vodafone 360 integrates updates from social Networking sites, such as Face book. The Vodafone 360
store gives customers the choice to download from over 8,000 applications ranging from checking the
weather and news to music and games. All the information, social contacts and content can also be
accessed online from PCs and Macs, in addition to handsets, allowing customers the freedom to
connect via whichever channel is convenient to them. Vodafone offers digital rights management
(DRM)-free bundles and has paid digital music subscriptions in Europe, with over 500,000 customers.
Vodafone Email Plus, Windows Mobile Email from Vodafone and BlackBerry from Vodafone provide
enterprise customers with real-time handheld access to e-mail, calendar, address book and other
applications. Vodafone PC Backup and Restore enables users to remotely store data securely and
automatically via their Internet connection. It offers full track music down loads with more than two
million songs available. The Company’s roaming services allow Vodafone customers to make calls and
use data services on other operators’ mobile networks whilst travelling abroad. Vodafone Passport
enables customers to take their home tariff abroad offering price transparency and certainty.
Enterprise Services
Vodafone offers total communications solutions for a range of enterprise customers from small
businesses to large multi-national companies. The Company provides mobile Internet bundles for smart
phones, mobile e-mail (BlackBerry, Microsoft ActiveSync and Vodafone Email Plus) and mobile
broadband via a range of devices, such as the Vodafone Mobile Wi-Fi, a portable mobile broadband
powered wireless fidelity (Wi-Fi) hub, and USB dongles, embedded laptops and netbooks. Vodafone
Global Enterprise (VGE) manages the relationships with over 550 of the Company’s largest multi-
national corporate customers. VGE simplifies the provision of fixed, mobile and data services for
multi-national corporations who need a single operational and commercial relationship with Vodafone
(AIS), Fault recording system (FRS) etc. All these works are maintain manually and the manual work
is much more complex and time taking for maintains and also does not provides suitable information
for any complex problem if any arises .To avoid the problem of manual processing, there is a need of
computerization of all the above system. So with the aim of to get efficient and
fruitful result we develops a software package (Project), which helps in reducing the complexity and
the problems faced in manual processing, the project is more reliable for accessing the data
Vodafone conducts many number of community development programs, such as Inventory
Management System (IMS), personnel information system (PIS) Commercial information system
(CIS), Accounting information system.
Preliminary Investigation :
Introduction
Customers are more demanding than ever before.
Increased choice and access to more information on
alternatives make it harder than ever before to winnow
customers and retain existing clients in the face of stiff
competition. Customer Relationship Management (CRM)

Customer Relationship Management 5


Miniproject Report

is all about understanding people: what makes them talk to you, what makes them buy from you, what
products and services they are most likely to be interested in, and what makes them come back to buy
from you again and again.
To satisfy customers and achieve commercial success, organizations need to collect, organize
and share all the information they have about their customers throughout their business in a consistent,
efficient way.
Recognizing that different solutions address different levels of organizational complexity and with
extensive experience in delivering Oracle Siebel CRM and Microsoft ® Dynamics™ CRM, Vodafone
through its Applications Services Business Group, Aspective ,is able to offer the right solution to meet
the needs of every client, driving measurable improvements in business processes, enabling closer
relationships with customers and supporting the achievement of new levels of profitability.
Benefits
• Intuitive user interface that works the way your people do
• Flexibility to support your unique business processes
• Marketing – obtain a clearer view of customers, make more informed investments, automate campaign
management and increase campaign success
• Sales – sales force automation, more informed real-time lead and opportunity management, shorter
sales cycle, close more business.
Customer Relationship Management (CRM) is all about building lasting relationships with your
Customers through better understanding of their needs.
• Service – call centre and field service management, job scheduling, service reporting and analysis
• Mobile access – instant access to customer and activity data, increase productivity and efficiency
,deliver more value to customers and improve win rates.

Customer Relationship Management 6


Miniproject Report

Questionnaires
The data is collected by questionnaires methods by both large and small group of people.
These questionnaires are properly constructed and the result is calculated from it with less of time.
The questionnaire, which I prepare, contains questions like
 When a customer work will take place?
 What are the major components that must need for Customer?
 Who is doing the customer work?
 What is the nature of customer work?
 What are the major defectives areas of problems?
These are the questions, which I asked both to the customer engineer and the customer
worker, person who is directly attached to the customer work. By asking above questions I
conclude with following conclusions, these are
 Their customer work done manually
 They are doing their documentation for customer manually
 Customer development officer will do the customer work.
 There are mainly two types of customer such as before policy & after policy.
The result of questionnaire survey may be incomplete or confusing, so I
have done other different methods for collecting information. Generally all data cannot be
collected by the form of questionnaire & answering form, so it is necessary that other
techniques is to be applied for collecting the data, so I present at the organization to
collect the data.
1. Which Employee’s are associated with the organization?
2. What kind of activities are they involved in?
3. How far have the people benefited from their involvement in their lives?
4. What are the areas improved after their cooperation?
5. Which are the areas that need to improve?
6. What are the difficulties that are facing in terms of involvement and from the
associated people?
7. What is the response from the people for who are working?
8. What are the different schemes the Employee have worked over and how
successful it was?
9. What are the different schemes these days Employee are investing or involved in
and what is the future prospect of those schemes?
10. How Govt. has played an important role in terms of helping the Employee and
associated people?
11. Have the people benefited from the schemes and how far and how much. What are
the areas of improvement?
12. What are the other organizations that fund the Employee?
13. What are the people’s involvements in terms of improving or utilizing the Employee
help in terms of sources utilization?
14. Are Employees being benefited from the program they are conducting?
The information required for the system comes from different heads like,
1. CUSTOMERMAN DETAILS: This gives all the information regarding the
Customer.
2. APPLIED AREA DETAILS: This gives all the information regarding the area to
which the development scheme is meant for.
3. BENEFIT DETAILS: This provides all the information regarding the benefit.

Customer Relationship Management 7


Miniproject Report

4. DEVELOPMENT DETAILS: This provides all the information regarding the


activities undertaken by different Customer.
After the requirement are analyzed, modeled or specified, they must be
investigated properly in different methods. Preliminary investigation helps me to learning
the current system as much as possible. Following methods will do the preliminary
investigation.

Feasibility study
Introduction
The feasibility study of a project is the process through which an assessment about the
project is made in terms of the total cost to be incurred for the project and the return to be obtained out
of it. The project is said to be feasible if the cost to be incurred for the project is less than the return
obtained through it. Since there is an absence of an optimized system in the Corporation to organize the
selling activities, a system needs to be developed to make this task convenient. The Corporation sells
several types of insurance policies through the appointed agents to the Govt. and public sector
customers and also to the general public. The Corporation also sells various kinds of insurance policies
to business organizations. Accordingly the Corporation has to solve the customer needs and
requirements as and when needed. So Customer Relationship Management is required.

In order to make the process of insurance selling in a smooth and efficient


manner the Corporation gives various kinds of services to the customers. The current project is
proposed to design a system that will maintain the related information details of the facilities offered by
CRM and other members of voda fone. There are three kinds of services, namely before policy, during
policy and after policy are processed by the Agents as well as management department. All types
of information that has been given depend on customer problem. So there is a need of some system to

Customer Relationship Management 8


Miniproject Report

handle these tasks. To conduct the feasibility study one needs to consider the following types of
feasibilities
Technical feasibility
The technical feasibility focuses to the following aspects:
The organization has the facilities like the necessary software and hardware to provide technical
support to the proposed system.
1. Since in the proposed system for the Customer Relationship Management Division handles all
kinds of caring techniques and related information of various insurance schemes, it should be able to
produce the desired output like the problem report, benefit report and solution report etc. as and when
required.
1. If there is any requirement to produce certain specific kind of report, then
system should be able to produce the desired report at the desired time.
2. The system should able to communicate the customer claim details to
various responsible authorities of the Management Department and it should be able to
communicate the information related to Customer Relationship the management.
Economical feasibility
The economic feasibility mainly deals with the cost/benefit analysis of the proposed system.
Here an assessment of the expenses regarding the cost of procurement of the necessary hardware and
that of the development and implementation of the software is made. The Customer Relationship
Management department of the Corporation can afford this to make necessary modifications in the
existing system as the benefits outweigh the cost supposed to be incurred for designing the system.
Operational feasibility
The operational feasibility in the Customer Relationship Management mainly focuses the following
aspects:
1. In the present situation the of the Customer Relationship Management Department of
Corporation maintains all the related information regarding Customer Relation, their problems and
the appropriate solution to the customer problems with the help of computerized information
system. The aim of the current project is to make necessary enhancements in the user interface and
some of the data processing tasks involved in the process.
2. The system of the Customer Relationship Management department can be designed without
disturbing the present organizational infrastructure so much. This will facilitate the functioning of
the management department in a convenient way.
To operate the developed system there is a necessity of skilled people. But this factor is not
going to affect the system so much as people in the department can be trained in certain stipulated time.

Customer Relationship Management 9


Miniproject Report

System Requirement Specification (SRS):


Introduction
Under this section, a broad discussion was carried out to choose the hardware platform on
which the final system was to implement. Again the choices of hardware were to fit with client’s
budget. Since the Client/Server approach was selected, so the hardware should consist of both client
machines and server machine. And after a broad discussion with the client, the client was consulted to
go for following hardware configurations:
Hardware Configuration of machine:
Following are the hardware configuration required for the project
 Processor: Intel Pentium TM IV @ 1.7 GHz (or above).
 RAM: 128 MB PC2100 DDR (or higher).
 HDD: 40 GB Ultra DMA ATA @ 7200 rpm (or higher).
 Cache Memory: 512 KB (or above).
 FDD: 1.44 MB / 2.88 MB.
 52X CD/DVD ROM Drive.
 15 inch Color Digital Monitor (flat panel).
 Operating System: Microsoft Windows 2007 Professional (with Service Pack 4 or more)
/ Windows XP Professional (with Service Pack 1 or more).
 Oracle SW: Oracle8i (Client Configuration, Net8/Oracle Net configured).
 Front-End Development Tools: Microsoft VB 6.0(with SP5 or more) with MSDN.
After the hardware specifications were fixed, the software was chosen. The systems study
of the project revealed its complexity and gave a clear picture that Security, Accuracy and Concurrency
Management should be the focusing issues during development. Therefore, from several options about
back-end database, Oracle 9i was selected. To choose the front-end development tool, there were also
several options from which Microsoft VB 6.0 was chosen. A brief detail about the software chosen is
given below.
Software Configuration of machine
“MS Visual Basic 6.0” – The Front-End Development Tool:
Visual basic is a powerful and easy used tool, which provides excellent programming
environment that is used to develop various windows application. VB is a programming package and
development environment. It has good debugging facility. It is object oriented in nature. It is not a
complete OOP language, but it is getting closer.
“Oracle 8i” – The Back-End Database:

Customer Relationship Management 10


Miniproject Report

Oracle is relational database management system (RDBMS), it consists of


comprehensive set of application building and end user product. It is a database server that offers
capabilities of both relational and object oriented database system. It keeps useful information.
Features Summary of Oracle 8i:
Oracle8i - The business Platform: Oracle8i continues Oracle8i's focus on the Internet by providing a
series of specific capabilities and product bundles targeted at e-Business environments. In addition,
Oracle8i continues to add features and capabilities that extend existing investment in mission- critical
infrastructure.
Oracle8i has been designed with focus on certain key development areas. These areas are: Key
infrastructure areas
 Availability  Security
 Scalability and Performance
CONNECTING THE VB 6.0 WITH THE Oracle 8i
In this Customer Relationship Management project work, the Open Database Connectivity
(ODBC) (Microsoft’s strategic interface for accessing data in a heterogeneous environment of
relational and non- relational database management systems) programming interface have used to
access and manipulate data from the “Oracle Database”, through the Visual Basic Application Program

“Window 7” - Operating Systems


WINDOWS 7 is a Microsoft’s high-powered workstation operating system. It
provides multitasking and access to 32 bits API-NT 3.5 looks almost identical to windows
3.x version of power builder and application design approach should be same. Windows 7
does not have special consideration that is apart 3.X.
MMS Server is required to be operative under windows environment. Since the requirement
is to use Oracle 8i DBMS at the back end, Windows-2007 Server is required. However, for a MMS
client using the browser for services, this restriction will not be there so that the client OS requirement
includes Windows-7 onwards.
 This project is designed to replace a manual book keeping system with a software Customer
Relationship Management system. This project will help operators manage information
received from calls.
 The customer is given AMC (Annual Maintenance Contract) of either 24 hrs or 12 visits. A
schedule will be maintained to visit and solve customers’ problem.
 There will be a single computer to act as the server, as well as several others to act as clients.
These computers must be connected to each other through a network.
 The system is also including backup utilities with time scheduling.
 It uses cryptography – encryption and decryption for security.
 The system uploads data on FTP after compression. There is a facility to coping file at Network.
Modules
1. Customer Relationship Management
1.1. Client’s call entry
When a customer got any problem in the software –delivered, Supported by the
company, he informs to the company. The details of customers are checked whether he
is company’s customer or not. This detail is filled in the database
1.2. AMC

Customer Relationship Management 11


Miniproject Report

The customers’ AMC is checked, how many visits and hours are left. The validity of
AMC is also checked. If AMC is available, one of the engineers of the company goes to
visit the client.
1.3. Scheduling
The clients problems (for specific software) which are complicated are add to schedule-
that is to be visited. A complain no is created to refer the client’s complain later. It
reminds the total day to day visits of an engineer.
1.4. Visiting
The customers who are scheduled are visited by engineers. The departure and arrival
time of engineer is calculated and this time is subtracted for customers’ AMC hours and
visits. The solution of customers’ problem is noticed. If the problem is not solved, it is
added in the further schedule.
2. Data Management
2.1. Cryptography
Here data in encrypted for security purpose. This encrypted data will flow over the
network. When the data is needed, it will be decrypted to view the original content.
2.2. Compression
The data is compressed before send at FTP Server or Network copying.
2.3. Log file
It notifies the data uploaded, copied over network or compressed in a text file.
2.4. FTP upload
This module is setup on client’s computer. It uploads backup of their system’s database
on the server of Vodafone easser.
2.5. Network copying
This module is setup on client’s computer. It will also copy their backup data on their
own network by pre planed scheduling.
2.6. Timer
There is a background process which back up the data that is scheduled by user. It runs
silently in background.

Functional Requirements:
That’s why it is necessary to have a clear understanding of the detail requirements which we have tried
to find out in below.
The new system should be able to:

 This software can be run only in Windows XP sp2 and above.


 Software to be design to get more detail report for AMC / Support / Engineer’s ability to solve
problem and more on Records of Software License – Version – Type of Software – Graphical
view of Area wise Visit etc.
 The data of client should be uploaded on the server of Vodafone easser for backup purpose.
 A secure database will be designed to store the data where only the administrator can add,
remove or update. Only the administrator will have the right to create or delete any user. The
user can be a part of administrator group or a regular user.

Features
Customer Relationship Management 12
Miniproject Report

 This application is run on multiple systems in the company.


 It is centralized system that the database is at server and applications are at client’s computer.
 If a record of a customer is being used by any user, it cannot be edit or delete by any other user.
 System administrator can mail to all of their customers by “Mass Mailing”.
 A new user can be added and his rights can be given dynamically by System Administrator.

Entity Relationship Diagram


The diagram shows that the relationship between any two entities, to show how the
relationship is established we can easily shown in the above diagram it helps in further designing of
project and helps to coding the program because we can see that which entities are relationship such as
policy and customer having relation for claim, similarly for all entities we can define the relationship.

Customer Relationship Management 13


Miniproject Report

Data Flow Diagrams


As information moves through software, it is modified by a series of transformations.
A data flow diagram (DFD) is a graphical technique that depicts information flow and the transforms
that are applied as data move from input to output. The basic form of a data flow diagram is illustrated
in the following figure. The DFD is also known as a dataflow graph or a chart.

Customer Relationship Management 14


Miniproject Report

A level 0 DFD, also called a fundamental system model or a context model, represents the
entire software element as a single double with input and output data indicated by incoming and
outgoing arrows, respectively. Additional processes (bubbles) and information flow paths are
represented as the level 0 DFD is partitioned to reveal more detail. For example, a level 1 DFD might
contain five or six bubbles with interconnecting arrows. Each of the processes represented at level 1 are
sub functions of the overall system depicted in the context model.
The data flow diagram is a graphical tool that can be very valuable during software
requirements analysis. However, the diagram can be misinterpreted if its function is confused with the
flowchart. A data flow diagram depicts information flow without explicit representation of procedural
logic (e.g., conditions or loops). It is not a flowchart with rounded edges. The basic notation used to
develop a DFD is not in itself sufficient to describe requirements for software. The graphical notation
represented must be augmented with descriptive text.
O – Level Data Flow Diagram
Customer Service Claim data
data base data base base

Enquiry report

Customer
0.0
details Customer
report
Customer
Account relationship Transaction
detail management report
system
Transaction claim report
details

Problem
Problem report
details

Service Service benefit


details Transaction report
Problem
data base
data base
DFD DESCRIPTION
A data flow diagram (DFD) is a graphical representation that depicts information flow and
the transforms that are applied as data move from input to output. In above DFD I describe the input,
process, output and data store. The inputs are account details, problem details, service details, customer

Customer Relationship Management 15


Miniproject Report

details, transaction details, new customer join detail etc. The outputs are transaction report, problem
report, enquiry report, claim report, customer report, service benefit report etc.

User ID Information New user Applicant


New user
ID/password

Up date
Verifying User ID and
the user ID password
Checking for data base

Current pwd.
Password

Verifying
Password info.
the
password Input password
for current
Logging
user Mismatch
to the
main Invalid
Input password password
process
match

1st LEVEL OF DFD:


Customer
Customer data base
detail 5.0 7.0
2.0
Service and 1.0
Claim 6.0 Carrying
Problem Relationshipother
Customer Customer
Management 16
about details data
detail detail
benefit Transaction
service base
Claim report updated Problem
process Transaction
process Service Transaction
benefit
Service
process data
process report
report database
data base
base
Miniproject Report

3.0

Problem
details of
customer

4.0

Problem
customer
on service
process

Customer Relationship Management 17


Miniproject Report

System design
It keeps the detailed the information about a system’s design specifications, its internal
workings and its functionality. It is further divided into internal documentation, which is part of the
program source code or generated at compile time and external documentation includes the outcome
of all structured diagramming techniques such as data flow and entity-relationship diagrams. Although
not the part of the code itself, external documentation can provide useful information to the primary
users of system documentation and maintenance programmers.
User documentation:- it consists of written or other visual information about an application system,
how it works, and how to use it. This documentation lists the steps necessary to actually perform the
task the user inquired about.
Various design techniques is applied such as
 Modular design
 Database design
 Input design
 Output design

Modular design

Customer Relationship Management 18


Miniproject Report

Login

Menu

Customer Customer Transaction Enquiry


detail service system system
system

Service Transaction T. error T. report


holder details

Non – Claim Status of


service
service
holder

Modular Description Of C.R.M. System


The customer relationship management system helps in maintenance of strong relationship
between the customer and between the customer problem and how to solve the customer problem by
the management of Vodafone Essar Company.
 CUSTOMER DETAILS: In any branch of Vodafone there must be a list of customers who
make various services of different amounts.
 CUSTOMER SERVICE SYSTEM: : This indicates how the customer relationship manager
and also the customer service representatives take care of the customer before tacking the
service , during the time of service sand after taking of service ,and claim about the system
of service.

Customer Relationship Management 19


Miniproject Report

 CLAIM DETAILS: The claim details should be provided to the customer-by-customer care
department of any branch of Vodafone so that he can able to apply for that claim.
 TRANSECTION SYSTEM: This transaction system provides all the information about
different type of transaction, about their details, rules, facilitates, etc..
 ENQUIRY SYSTEM: Enquiry system provides all the information about different type of
transaction, about their details, delays, rules, facilitates, benefits etc..
 SERVICE HOLDER: This service holder system gives details all about that customer who is
used the services.
 NON-SERVICE HOLDER: This Non- service holder system gives all details about that
customer who is not used the services.
 STATUS OF SERVICE: Status of service system gives all the information about customer
service system i.e. Before service, During service, After service
TRANSECTION ERROR SYSTEM: In this transaction error system provides all the
information about different type of transaction errors, about their details, rules,
facilitates, etc.

Data structure
The Data Structure is an organized listing of all data elements that are pertinent to the
system, with precise, rigorous definitions so that both user and system analyst will have a common
Understanding of inputs, outputs, and component of stores and even intermediate calculations. Here
their data types, size and the remarks describe the Data Elements, so it helps to access easily. Given
below some of the data structure.
Customer detail
This table contains all the information about the customer so that the organization as
well as the customer avoids some future problems..
Field name Type Size Constant Rename
C .Name Char 20 Customer name
C .ID Numeric 10 Primary key Customer ID
C .Age Numeric 2 Customer age
C .Sex Char 6 Customer sex
C .Occ Alpha numeric 10 Customer Occupation
C .Add Alpha numeric 30 Customer address

Customer Relationship Management 20


Miniproject Report

Service holder
This table includes all the detailed information of a service holder customer that helps the customer to
choose the specific service.
Field name Type Size Constant Rename
C .Name Char 20 Customer name
C .ID Numeric 10 Foreign key Customer ID
C .qual Char 10 Customer qualification
C m status Char 10 Customer marital status
C .Salary Numeric 8 Customer salary
Non – Service holder
This table includes all the detailed information of a non-service holder customer that helps the
customer to choose the specific service.
Field name Type Size Constant Rename
C .Name Char 20 Customer name
C .ID Numeric 10 Foreign key Customer ID
C .qual Char 10 Customer qualification
C m status Char 10 Customer marital status
C .Salary Numeric 8 Customer salary

Claim details
This table includes the claim details of the customer that is solved by CRM dept.
Field name Type Size Constant Rename

Cl .name Char 10 Claim name


C. ID Numeric 10 Foreign key Customer ID
Cl .date Alpha numeric 2,2,4 Claim Date
Cl .Acc. no. Numeric 5 Primary key Claim Accession number

Customer Relationship Management 21


Miniproject Report

Cl .A .name Char 20 Claim Acceptor name


Cl .R .name Char 20 Claim Receiver name
Cl .sol Char 20 Claim solution
Cl .type Char 15 Claim Type

Status of service detail


This table include the before service, during service, after service of customer.
Field name Type Size Constant Rename

C .ID Numeric 10 Foreign key Customer ID

S .ID Numeric 10 Primary key Status ID

S .Before ser Char 20 Status Before service

S .During ser Char 20 Status During service

S .After ser Char 20 Status After service

S .DFS DATE 2,2,4 Status of date of service

Customer service details


This table contains the detailed information about various facilities provided by the organization.
Field name Type Size Constant Rename

Cs .Name Char 10 Customer service Name


C .ID Numeric 10 Foreign key Customer ID
Cs .Type Char 15 Customer service type
Cs .DFS DATE 2,2,4 Customer service Date of
service
Cs .Area Char 10 Customer service Area
Cs .ID Numeric 10 Primary key Customer service ID

Transaction details
The purpose of this table is to identify all transaction of the customer so that the dept sends message to
particular dept whose work is done.
Field name Type Size Constant Rename

Customer Relationship Management 22


Miniproject Report

T .Code Numeric 10 Primary key Transaction


code
T .Add Char 15 Transaction

T .Type Char 15 Transaction

C .ID Numeric 10 Foreign key Customer ID

T .DFS DATE 2,2,4 Transaction

Transaction Error details


The purpose of this table is to identify problem of the customer so that the dept sends message to
particular dept whose work is to solve the problem.

Field name Type Size Constant Rename

Te .code Numeric 10 Primary key Transaction error code

Te .time Numeric 2,2,2 Transaction error Time

C .ID Numeric 10 Foreign key Customer ID

Te .delays Alpha numeric 15 Transaction error delays

Enquiry details
The purpose of this table is to identify or enquiry all the transaction and services of the customer.

Field name Type Size Constant Rename

E .ID Numeric 10 Primary key Enquiry ID

E .Type Char 15 Enquiry type

E .sol Char 15 Enquiry Solution

C .ID Numeric 10 Foreign key Customer ID

Input & output design:


The goal of designing input data is to make data entry as easy, logical, and free from errors.
When we approach towards input data design, we design the source document that captures the data
and then select the media used to store them in the computer. The design of input plays very significant

Customer Relationship Management 23


Miniproject Report

role in getting the correct output. It is the link that ties the information system into the world of its
users.
We make the input design as we need to control the amount of input, avoid delay, avoid
errors in data, avoid extra steps, and keep the process simple. As we make the input design in Visual
Basic, so the input screen of the software has various advantages and few of them are describe below:
Ψ Easy to use:
Ψ Improved processing speed:
Ψ Menu design Screen:
Ψ Emphasizing information on display screen:
Ψ Color used in screen design:
Ψ Editing through display screen:
A form is a business documents containing some predefined data and often includes
some areas where additional data are to be filled in. A report is a business document containing only
predefined data; it is a passive document used solely for reading and viewing
Designing forms and reports is a user-focused activity that typically follows a prototyping
approach. First we have to gain an understanding of the intended user and task objectives by collecting
initial requirements determination. During this process, several questions must be answered. These
questions attempt to answer the “who, what, when, where and how” related to the creation of all forms
and reports which is the first step in the creation of any form or report.
Input design
The input design creates an affecting communication medium between a human and a computer,
following a set of design principles, design, identifies interface object and actions then create a screen
layout that forms the basic for a user interface prototype. The step to be followed that are:- User
interface begins with the identification of user, task and environmental requirement once. User task
have been identified, user scenario are created and analyzed to define a set of object and actions. These
forms the basic formulate the creations of screen layout, the graphical design & placement of icons,
definition and tight ling for windows and specification of measure and minor menu object.

Modeling in design
A model is an entity used to represent another entity, called the target, by establishing
• A correspondence between the parts or elements of the target and the parts or elements of the
• model, and
• A correspondence between relationships among the part or elements of a target, and
relationships among the parts or elements of the model.
If design is problem solving, then clearly modeling is a central tool in all design disciplines. Models are
especially useful in design in three ways;
• Design problem analysis
Designers must understand design problems and constraints before they can create
solutions.
• Design creation and investigation

Customer Relationship Management 24


Miniproject Report

 Models can be used to represent and investigate problems.


 Floor plans, elevations, schematics, blueprints, and diagrams of all sorts are the
mainstays of design creation and investigation in most disciplines.
 Prototypes and scale physical models are also widely used.
• Design documentation
 The models used in design creation and investigations are also used to document
designs for implementation and maintenance.
 Additional models are also sometimes created especially for archival design
documentation purposes.

MENU DESIGN
S/W menu design is one of the key assessment, because proper menu design
describes the option available in the S/W. these options helps the user to understand the
system and choosing necessary option from the option list.

1. Emphasizing on design of display screen: The design of display screen puts stress
on design of the screen layout, color combination, light intensity which could
provide the user a proper working environment .

Menu design of Customer Relationship Management form

Customer Relationship Management 25


Miniproject Report

Customer detail form design of Customer Relationship Management

This input screen contains all the details about account of the customer details. This screen
contains six dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The
command buttons have their usual meaning.

Customer Service detail form design of Customer Relationship Management

Customer Relationship Management 26


Miniproject Report

This input screen contains all the details about account of the customer service details. This screen
contains six dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The
command buttons have their usual meaning

Service Holder form design of Customer Relationship Management

This input screen contains all the details about account of the Service holder details.
This screen contains five dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and
‘close’. The command buttons have their usual meaning.

Transaction detail form design of Customer Relationship Management

Customer Relationship Management 27


Miniproject Report

This input screen contains all the details about account of the Transaction details. This
screen contains six dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’.
The command buttons have their usual meaning.

Enquiry detail form design of Customer Relationship Management

This input screen contains all the details about account of the Enquiry details. This
screen contains four dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’.
The command buttons have their usual meaning.

Customer Relationship Management 28


Miniproject Report

Status of service detail form design of Customer Relationship Management


This input screen contains all the details about account of the Status of service details. This screen
contains six dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The
command buttons have their usual meaning.

Non Service Holder form design of Customer Relationship Management

Customer Relationship Management 29


Miniproject Report

This input screen contains all the details about account of the non service holder. This screen contains
five dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The command
buttons have their usual meaning.

Claim detail form design of Customer Relationship Management

This input screen contains all the details about account of the claim details. This screen contains eight
dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The command buttons
have their usual meaning.

Claim detail form design of Customer Relationship Management

This input screen contains all the details about account of the transaction error details. This screen
contains eight dialog boxes and four command buttons as ‘add’, ‘update’, ‘delete’, and ‘close’. The
command buttons have their usual meaning.

Customer Relationship Management 30


Miniproject Report

Customer Relationship Management 31


Miniproject Report

CODING
Coding is the activity where a design is converted to run able code. Depending on the
details of the design specifications, the coding activity may vary greatly. Coding standards are a set of
conventions that the programmer follows to standardize their computer code to some degree and to
make the overall program easier to read.
Oracle Coding
CREATE TABLE CUSTOMER_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_PK PRIMARY
KEY,
C_NAME CHAR (20),
C_AGE NUMBER (2),
C_SEX CHAR (6),
C_OCC VARCHAR2 (10),
C_ADD VARCHAR2 (30));
CREATE TABLE SERVICE_HOLDER (C_ID NUMBER (10) CONSTRAINTS C_FK FOREIGN
KEY,
C_NAME CHAR (20),
C_QUAL CHAR (10),
C_M_STATUS CHAR (10),

Customer Relationship Management 32


Miniproject Report

C_SALARY NUMBER (8));


CREATE TABLE NONSERVICE_HOLDER (C_ID NUMBER (10) CONSTRAINTS C_FK
FOREIGN KEY,
C_NAME CHAR (20),
C_QUAL CHAR (10),
C_M_STATUS CHAR (10),
C_SALARY NUMBER (8))
CREATE TABLE CLAIM_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_FK FOREIGN
KEY,
CL_NAME CHAR (10),
CL_DATE DATE ,
CL_ACC_NONUMBER (5) CONSTRAINTS C_PK PRIMARY KEY,
CL_A_NAME CHAR (20),
CL_R_NAME CHAR (20),
CL_SOL CHAR (20),
CL_TYPE CHAR (15))
CREATE TABLE STATUS_OF_SERVICE_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_FK
FOREIGN KEY,
S_IDNUMERIC (10) CONSTRAINTS C_PK PRIMARY KEY,
S_BEFORESER CHAR (20),
S_DURINGSER CHAR (20),
S_AFTERSER CHAR (20),
S_DFS DATE )
CREATE TABLE CUSTOMER_SERVICE_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_FK
FOREIGN KEY,
CS_IDNUMBER (10) CONSTRAINTS C_PK PRIMARY KEY,
CS_TYPE CHAR (15),
CS_DFS DATE,
CS_NAME CHAR (10),
CS_AREA CHAR (10))
CREATE TABLE TRANSACTION_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_FK
FOREIGN KEY,
T_CODE NUMBER (10) CONSTRAINTS C_PK PRIMARY KEY,
T_ADD CHAR (15),
T_TYPE CHAR (15),
T_DFS DATE )
CREATE TABLE TRANSACTION_ERROR_DETAILS (C_ID NUMBER (10) CONSTRAINTS
C_FK FOREIGN KEY,
TE_CODE NUMBER (10) CONSTRAINTS C_PK PRIMARY KEY,
TE_TIME ,

Customer Relationship Management 33


Miniproject Report

TE_DELAYS VARCHAR2 (15))


CREATE TABLE ERROR_DETAILS (C_ID NUMBER (10) CONSTRAINTS C_FK FOREIGN
KEY,
E_ID NUMBER (10) CONSTRAINTS C_PK PRIMARY KEY,
E_TYPE CHAR (15),
E_SOL CHAR (15));

Visual basic Coding


‘Login window Code
Option Explicit
' Made By Sunanda
Private mUsername As String
Private mPassword As String
Private mCancel As Boolean
Private Sub cmdCancel_Click()
mCancel = True
Unload Me
End Sub
Private Sub cmdOK_Click()
mCancel = False
mUsername = Me.txtUserName.Text
mPassword = Me.txtPassword.Text
Unload Me
End Sub
Public Function GetLogIn(ByRef UserName As String, ByRef password As String, Owner As Object)
As Boolean
Me.txtUserName.Text = UserName
Me.Show vbModal, Owner
UserName = mUsername
password = mPassword
GetLogIn = Not mCancel
End Function
Private Sub Form_Activate()
If Len(Me.txtUserName.Text) > 0 Then Me.txtPassword.SetFocus
End Sub
Option Explicit
' Made By Sunanda
' List all the users in the ListView
Private Sub ListUsers()

Customer Relationship Management 34


Miniproject Report

Dim rsData As ADODB.Recordset


Set rsData = DBConn.Execute("SELECT ID, UserName FROM tblUsers")
lstUsers.ListItems.Clear
If rsData.RecordCount > 0 Then
rsData.MoveFirst
Do Until rsData.EOF Or rsData.BOF
With lstUsers.ListItems.Add(, , rsData("ID").value & "")
.SubItems(1) = rsData("UserName").value & ""
End With
rsData.MoveNext
Loop
End If
End Sub

Private Sub cmdAdd_Click()


Dim Request As String, NewID As Long, rsData As Recordset
Dim MD5 As New clsMD5, NewPassword As String, OldPassword As String
If Len(txtPassword1.Text) > 0 Or Len(txtPassword2.Text) > 0 Then
If txtPassword1.Text <> txtPassword2.Text Then
MsgBox "Confirm password must the same as Password field", vbExclamation
Exit Sub
End If
End If
' get the hash of the passwords
NewPassword = UCase(MD5.DigestStrToHexStr(Me.txtPassword1.Text))
OldPassword = UCase(MD5.DigestStrToHexStr(Me.txtOldPassword.Text))
If cmdAdd.Caption = "&Add" Then
' get the ID for the new record
NewID = SelectNewID(DBConn, "tblUsers")
' prepare the INSERT statement
Request = "INSERT INTO tblUsers VALUES(" & NewID & "," & _
"'" & Replace(Me.txtUserName.Text, "'", "''") & "'," & _
"'" & NewPassword & "')"
Else
' if logged in as a diferent user than the one we are changing now
If LogInUserID <> Val(lstUsers.SelectedItem.Text) Then
' validate user password if logged in as a diferent user
Set rsData = DBConn.Execute("SELECT Password FROM tblUsers WHERE ID = " &
Me.lstUsers.SelectedItem.Text)
If OldPassword <> rsData("Password").value Then

Customer Relationship Management 35


Miniproject Report

MsgBox "Invalid old password." & vbNewLine & "You must enter the valid password
for user selected.", vbInformation
Exit Sub
End If
End If
' Prepare the Update statement
Request = "UPDATE tblUsers SET UserName = '" & Replace(Me.txtUserName.Text, "'", "''") &
"'"
If Len(Me.txtPassword1.Text) > 0 Then
Request = Request & ", [Password] = '" & NewPassword & "'"
End If
Request = Request & " WHERE ID = " & Me.lstUsers.SelectedItem.Text
on back to "Add"
cmdAdd.Caption = "&Add"
End If
' execute the request
DBConn.Execute Request
' Reset controls
ListUsers
txtUserName.Text = ""
txtPassword1.Text = ""
txtPassword2.Text = ""
txtOldPassword.Enabled = False
lblOldPassword.Enabled = False
lstUsers.Enabled = True
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub Form_Load()
ListUsers
End Sub
Private Sub lstUsers_BeforeLabelEdit(Cancel As Integer)
Cancel = 1
End Sub
Private Sub lstUsers_DblClick()
If Not (lstUsers.SelectedItem Is Nothing) Then
Me.txtUserName.Text = lstUsers.SelectedItem.SubItems(1)
lstUsers.Enabled = False
cmdAdd.Caption = "&Update"

Customer Relationship Management 36


Miniproject Report

' Endable the txtOldPassword field when logged in as a diferent user


If LogInUserID <> Val(lstUsers.SelectedItem.Text) Then
txtOldPassword.Enabled = True
lblOldPassword.Enabled = True
End If
End If
End Sub
‘======================== Database Connection Login window

Option Explicit
Public DBConn As ADODB.Connection
Public LogInUserID As Long, LogInUserName As String
Public Function LoadDatabase(ByVal DatabaseName As String, Optional ByVal UserID As String,
Optional ByVal password As String) As ADODB.Connection
Dim conData As ADODB.Connection
Set conData = New ADODB.Connection

conData.Provider = "Microsoft.Jet.OLEDB.4.0"
conData.ConnectionString = "Data Source = " & DatabaseName
conData.CursorLocation = adUseClient
conData.Open , UserID, password
Set LoadDatabase = conData
End Function
Public Function SelectNewID(Cn As ADODB.Connection, ByVal TableName As String, Optional
ByVal IDFieldName As String = "ID") As Long
Dim Request As String, RS As ADODB.Recordset
Dim NewID As Long
Request = "SELECT MAX(" & IDFieldName & ") FROM " & TableName
Set RS = Cn.Execute(Request)
If RS Is Nothing Then
NewID = 1
Else
If RS.RecordCount = 0 Then
NewID = 1
Else
RS.MoveFirst

If IsNull(RS.Fields(0).value) Then
NewID = 1
Else

Customer Relationship Management 37


Miniproject Report

NewID = CLng(RS.Fields(0).value) + 1
End If
End If
End If
SelectNewID = NewID
End Function
‘========= Password encryption for Login window
Option Explicit
' Visual Basic MD5 Implementation
' Robert Hubley and David Midkiff (mdj2023@hotmail.com)'
' Standard MD5 implementation optimised for the Visual Basic environment.
' Conforms to all standards and can be used in digital signature or password
' protection related schemes.
Private Const OFFSET_4 = 4294967296#
Private Const MAXINT_4 = 2147483647
Private State(4) As Long
Private ByteCounter As Long
Private ByteBuffer(63) As Byte
Private Const S11 = 7
Private Const S12 = 12
Private Const S13 = 17
Private Const S14 = 22
Private Const S21 = 5
Private Const S22 = 9
Private Const S23 = 14
Private Const S24 = 20
Private Const S31 = 4
Private Const S32 = 11
Private Const S33 = 16
Private Const S34 = 23
Private Const S41 = 6
Private Const S42 = 10
Private Const S43 = 15
Private Const S44 = 21
Property Get RegisterA() As String
RegisterA = State(1)
End Property
Property Get RegisterB() As String
RegisterB = State(2)
End Property

Customer Relationship Management 38


Miniproject Report

Property Get RegisterC() As String


RegisterC = State(3)
End Property
Property Get RegisterD() As String
RegisterD = State(4)
End Property
Public Function DigestStrToHexStr(ByVal SourceString As String) As String
MD5Init
MD5Update Len(SourceString), StringToArray(SourceString)
MD5Final
DigestStrToHexStr = GetValues
End Function
Public Function DigestFileToHexStr(InFile As String) As String
On Error GoTo errorhandler
GoSub begin
errorhandler:
DigestFileToHexStr = ""
Exit Function
begin:
Dim FileO As Integer
FileO = FreeFile
Call FileLen(InFile)
Open InFile For Binary Access Read As #FileO
MD5Init
Do While Not EOF(FileO)
Get #FileO, , ByteBuffer
If Loc(FileO) < LOF(FileO) Then
ByteCounter = ByteCounter + 64
MD5Transform ByteBuffer
End If
Loop
ByteCounter = ByteCounter + (LOF(FileO) Mod 64)
Close #FileO
MD5Final
DigestFileToHexStr = GetValues
End Function
Private Function StringToArray(InString As String) As Byte()
Dim i As Long, bytBuffer() As Byte
ReDim bytBuffer(Len(InString))
For i = 0 To Len(InString) - 1

Customer Relationship Management 39


Miniproject Report

bytBuffer(i) = Asc(Mid$(InString, i + 1, 1))


Next i
StringToArray = bytBuffer
End Function
Public Function GetValues() As String
GetValues = LongToString(State(1)) & LongToString(State(2)) & LongToString(State(3)) &
LongToString(State(4))
End Fu nction
Private Function LongToString(Num As Long) As String
Dim A As Byte, b As Byte, C As Byte, D As Byte
A = Num And &HFF&
If A < 16 Then LongToString = "0" & Hex(A) Else LongToString = Hex(A)
b = (Num And &HFF00&) \ 256
If b < 16 Then LongToString = LongToString & "0" & Hex(b) Else LongToString =
LongToString & Hex(b)
C = (Num And &HFF0000) \ 65536
If C < 16 Then LongToString = LongToString & "0" & Hex(C) Else LongToString =
LongToString & Hex(C)
If Num < 0 Then D = ((Num And &H7F000000) \ 16777216) Or &H80& Else D = (Num And
&HFF000000) \ 16777216
If D < 16 Then LongToString = LongToString & "0" & Hex(D) Else LongToString =
LongToString & Hex(D)
End Function

Public Sub MD5Init()


ByteCounter = 0
State(1) = UnsignedToLong(1732584193#)
State(2) = UnsignedToLong(4023233417#)
State(3) = UnsignedToLong(2562383102#)
State(4) = UnsignedToLong(271733878#)
End Sub
Public Sub MD5Final()
Dim dblBits As Double, padding(72) As Byte, lngBytesBuffered As Long
padding(0) = &H80
dblBits = ByteCounter * 8
lngBytesBuffered = ByteCounter Mod 64
If lngBytesBuffered <= 56 Then MD5Update 56 - lngBytesBuffered, padding Else MD5Update 120
- ByteCounter, padding
padding(0) = UnsignedToLong(dblBits) And &HFF&
padding(1) = UnsignedToLong(dblBits) \ 256 And &HFF&

Customer Relationship Management 40


Miniproject Report

padding(2) = UnsignedToLong(dblBits) \ 65536 And &HFF&


padding(3) = UnsignedToLong(dblBits) \ 16777216 And &HFF&
padding(4) = 0
padding(5) = 0
padding(6) = 0
padding(7) = 0
MD5Update 8, padding
End Sub
Public Sub MD5Update(ByVal InputLen As Long, InputBuffer() As Byte)
Dim II As Integer, i As Long, J As Integer, K As Integer, lngBufferedBytes As Long,
lngBufferRemaining As Long, lngRem As Long

lngBufferedBytes = ByteCounter Mod 64


lngBufferRemaining = 64 - lngBufferedBytes
ByteCounter = ByteCounter + InputLen

If InputLen >= lngBufferRemaining Then


For II = 0 To lngBufferRemaining - 1
ByteBuffer(lngBufferedBytes + II) = InputBuffer(II)
Next II
MD5Transform ByteBuffer
lngRem = (InputLen) Mod 64
For i = lngBufferRemaining To InputLen - II - lngRem Step 64
For J = 0 To 63
ByteBuffer(J) = InputBuffer(i + J)
Next J
MD5Transform ByteBuffer
Next i
lngBufferedBytes = 0
Else
i=0
End If
If InputLen > 0 Then
For K = 0 To InputLen - i - 1
ByteBuffer(lngBufferedBytes + K) = InputBuffer(i + K)
Next K
End If
End Sub

Private Sub MD5Transform(Buffer() As Byte)

Customer Relationship Management 41


Miniproject Report

Dim X(16) As Long, A As Long, b As Long, C As Long, D As Long


A = State(1)
b = State(2)
C = State(3)
D = State(4)
Decode 64, X, Buffer
FF A, b, C, D, X(0), S11, -680876936
FF D, A, b, C, X(1), S12, -389564586
FF C, D, A, b, X(2), S13, 606105819
FF b, C, D, A, X(3), S14, -1044525330
FF A, b, C, D, X(4), S11, -176418897
FF D, A, b, C, X(5), S12, 1200080426
FF C, D, A, b, X(6), S13, -1473231341
FF b, C, D, A, X(7), S14, -45705983
FF A, b, C, D, X(8), S11, 1770035416
FF D, A, b, C, X(9), S12, -1958414417
FF C, D, A, b, X(10), S13, -42063
FF b, C, D, A, X(11), S14, -1990404162
FF A, b, C, D, X(12), S11, 1804603682
FF D, A, b, C, X(13), S12, -40341101
FF C, D, A, b, X(14), S13, -1502002290
FF b, C, D, A, X(15), S14, 1236535329

GG A, b, C, D, X(1), S21, -165796510


GG D, A, b, C, X(6), S22, -1069501632
GG C, D, A, b, X(11), S23, 643717713
GG b, C, D, A, X(0), S24, -373897302
GG A, b, C, D, X(5), S21, -701558691
GG D, A, b, C, X(10), S22, 38016083
GG C, D, A, b, X(15), S23, -660478335
GG b, C, D, A, X(4), S24, -405537848
GG A, b, C, D, X(9), S21, 568446438
GG D, A, b, C, X(14), S22, -1019803690
GG C, D, A, b, X(3), S23, -187363961
GG b, C, D, A, X(8), S24, 1163531501
GG A, b, C, D, X(13), S21, -1444681467
GG D, A, b, C, X(2), S22, -51403784
GG C, D, A, b, X(7), S23, 1735328473
GG b, C, D, A, X(12), S24, -1926607734

Customer Relationship Management 42


Miniproject Report

HH A, b, C, D, X(5), S31, -378558


HH D, A, b, C, X(8), S32, -2022574463
HH C, D, A, b, X(11), S33, 1839030562
HH b, C, D, A, X(14), S34, -35309556
HH A, b, C, D, X(1), S31, -1530992060
HH D, A, b, C, X(4), S32, 1272893353
HH C, D, A, b, X(7), S33, -155497632
HH b, C, D, A, X(10), S34, -1094730640
HH A, b, C, D, X(13), S31, 681279174
HH D, A, b, C, X(0), S32, -358537222
HH C, D, A, b, X(3), S33, -722521979
HH b, C, D, A, X(6), S34, 76029189
HH A, b, C, D, X(9), S31, -640364487
HH D, A, b, C, X(12), S32, -421815835
HH C, D, A, b, X(15), S33, 530742520
HH b, C, D, A, X(2), S34, -995338651

II A, b, C, D, X(0), S41, -198630844


II D, A, b, C, X(7), S42, 1126891415
II C, D, A, b, X(14), S43, -1416354905
II b, C, D, A, X(5), S44, -57434055
II A, b, C, D, X(12), S41, 1700485571
II D, A, b, C, X(3), S42, -1894986606
II C, D, A, b, X(10), S43, -1051523
II b, C, D, A, X(1), S44, -2054922799
II A, b, C, D, X(8), S41, 1873313359
II D, A, b, C, X(15), S42, -30611744
II C, D, A, b, X(6), S43, -1560198380
II b, C, D, A, X(13), S44, 1309151649
II A, b, C, D, X(4), S41, -145523070
II D, A, b, C, X(11), S42, -1120210379
II C, D, A, b, X(2), S43, 718787259
II b, C, D, A, X(9), S44, -343485551

State(1) = LongOverflowAdd(State(1), A)
State(2) = LongOverflowAdd(State(2), b)
State(3) = LongOverflowAdd(State(3), C)
State(4) = LongOverflowAdd(State(4), D)
End Sub

Customer Relationship Management 43


Miniproject Report

Private Sub Decode(Length As Integer, OutputBuffer() As Long, InputBuffer() As Byte)


Dim intDblIndex As Integer, intByteIndex As Integer, dblSum As Double
For intByteIndex = 0 To Length - 1 Step 4
dblSum = InputBuffer(intByteIndex) + InputBuffer(intByteIndex + 1) * 256# +
InputBuffer(intByteIndex + 2) * 65536# + InputBuffer(intByteIndex + 3) * 16777216#
OutputBuffer(intDblIndex) = UnsignedToLong(dblSum)
intDblIndex = intDblIndex + 1
Next intByteIndex
End Sub
Private Function FF(A As Long, b As Long, C As Long, D As Long, X As Long, s As Long, ac As
Long) As Long
A = LongOverflowAdd4(A, (b And C) Or (Not (b) And D), X, ac)
A = LongLeftRotate(A, s)
A = LongOverflowAdd(A, b)
End Function
Private Function GG(A As Long, b As Long, C As Long, D As Long, X As Long, s As Long, ac As
Long) As Long
A = LongOverflowAdd4(A, (b And D) Or (C And Not (D)), X, ac)
A = LongLeftRotate(A, s)
A = LongOverflowAdd(A, b)
End Function
Private Function HH(A As Long, b As Long, C As Long, D As Long, X As Long, s As Long, ac As
Long) As Long
A = LongOverflowAdd4(A, b Xor C Xor D, X, ac)
A = LongLeftRotate(A, s)
A = LongOverflowAdd(A, b)
End Function
Private Function II(A As Long, b As Long, C As Long, D As Long, X As Long, s As Long, ac As
Long) As Long
A = LongOverflowAdd4(A, C Xor (b Or Not (D)), X, ac)
A = LongLeftRotate(A, s)
A = LongOverflowAdd(A, b)
End Function
Function LongLeftRotate(value As Long, Bits As Long) As Long
Dim lngSign As Long, lngI As Long
Bits = Bits Mod 32
If Bits = 0 Then LongLeftRotate = value: Exit Function
For lngI = 1 To Bits
lngSign = value And &HC0000000
value = (value And &H3FFFFFFF) * 2

Customer Relationship Management 44


Miniproject Report

value = value Or ((lngSign < 0) And 1) Or (CBool(lngSign And &H40000000) And


&H80000000)
Next
LongLeftRotate = value
End Function

Private Function LongOverflowAdd(Val1 As Long, Val2 As Long) As Long


Dim lngHighWord As Long, lngLowWord As Long, lngOverflow As Long
lngLowWord = (Val1 And &HFFFF&) + (Val2 And &HFFFF&)
lngOverflow = lngLowWord \ 65536
lngHighWord = (((Val1 And &HFFFF0000) \ 65536) + ((Val2 And &HFFFF0000) \ 65536) +
lngOverflow) And &HFFFF&
LongOverflowAdd = UnsignedToLong((lngHighWord * 65536#) + (lngLowWord And &HFFFF&))
End Function

Private Function LongOverflowAdd4(Val1 As Long, Val2 As Long, val3 As Long, val4 As Long) As
Long
Dim lngHighWord As Long, lngLowWord As Long, lngOverflow As Long
lngLowWord = (Val1 And &HFFFF&) + (Val2 And &HFFFF&) + (val3 And &HFFFF&) + (val4
And &HFFFF&)
lngOverflow = lngLowWord \ 65536
lngHighWord = (((Val1 And &HFFFF0000) \ 65536) + ((Val2 And &HFFFF0000) \ 65536) + ((val3
And &HFFFF0000) \ 65536) + ((val4 And &HFFFF0000) \ 65536) + lngOverflow) And &HFFFF&
LongOverflowAdd4 = UnsignedToLong((lngHighWord * 65536#) + (lngLowWord And
&HFFFF&))
End Function
Private Function UnsignedToLong(value As Double) As Long
If value < 0 Or value >= OFFSET_4 Then Error 6
If value <= MAXINT_4 Then UnsignedToLong = value Else UnsignedToLong = value - OFFSET_4
End Function
'Private Function LongToUnsigned(value As Long) As Double
' If value < 0 Then LongToUnsigned = value + OFFSET_4 Else LongToUnsigned = value
'End Function
Form coding:
Private Sub cmdclose_Click()
msg = MsgBox("Are you sure you want to exit the form?", vbExclamation + vbOKCancel, "Exit")
If msg = vbOK Then
Unload Me
Else
frmAdmissionDetail.Show
End If

Customer Relationship Management 45


Miniproject Report

End Sub
Private Sub cmdDelete_Click()
msg = MsgBox("Are you sure you want to delete the current record?",
vbExclamation + vbOKCancel, "Delete")
If msg = vbOK Then
Data1.Recordset.Delete
msg = MsgBox("Congrats! The data has been deleted.", vbExclamation +
vbOKOnly, "Deleted")
If Not Data1.Recordset.EOF Then
Data1.Recordset.MoveNe
Else
Data1.Recordset.MoveLast
End If
Else
frmAdmissionDetail.Show
End If
End Sub
Private Sub cmd Add_Click()
Data1.Recordset.AddNew
Data1.Recordset.Fields(0) = val(Text1.Text)
Data1.Recordset.Fields(1) = val(Text2.Text)
Data1.Recordset.Fields(2) = val(Text3.Text)
Data1.Recordset.Fields(3) = Text4.Text
Data1.Recordset.Fields(4) = val(Text5.Text)
Data1.Recordset.Fields(5) = Text6.Text
Data1.Recordset.Update
Data1.Refresh
End Sub

Code Optimization
Optimization is examining our application’s performance, and then making
information decision about which parts of the application to modify to enhance that performance.
“PERFORMANCE” refers to :
Customer Relationship Management 46
Miniproject Report

 Algorithm Performance.
 Image Size (Disk Space).
 Memory Utilization.
 Network Performance.
 User Interface Performance.
In today’s world, no matter what aspect of your application’s performance needs to be
improved, the act of improving is referred to as Optimization. Most of the time we will not be able to
optimize for individual performance characteristics e.g. Optimizing to reduce the compiled ize of an
executable typically reduces execution speed, and optimizing for speed often results in an increased in
disk space. Keeping this in mind about optimization to my code I asked myself the following basic
questions as I move through my development cycle:

• Where to optimize (Means finding out where in our program the performance problem originates).
• How much to optimize (Means Knowing when to stop optimizing, as we need to remember “we can
spend forever trying to create the “ Completely optimized program”).
• What to optimize (Refers to the aspect of the program performance we wish to address).
So we need to understand the implication of our optimization before we begin optimization.
We often find that as we increase performance in one area, we decrease performance in another area.
e.g. Adding “Show” statement to a Form Load procedure may increase the speed at which the form
becomes visible. As this is a S/W product, so there will be more code, making application disk space
larger. It becomes important for me to keep the following in mind while optimizing my code.

 Display Speed.
 Execution Speed.
 Perceived Speed.
 Size in memory.
 Size on Disk.
Display Speed Optimization: Display speed refers to the speed at which my forms load and display,
graphics load & paint, controls such as list boxes load and navigation, and so on. Display speed is
critical factor in user’s acceptance of our product. To gain display speed in my application I used the
following codes in every form.
e.g. to load a form on selecting a menu option I generally used the Code
MenuOption_Click ()
Form.Show
End Sub
‘ This Code reduces the loading speed of the form into memory in comparison to “Load Form”.
For achieving Form Navigation speed I used the code like this in every form.
Private Sub Combo1_KeyPress (Key ASCII As Integer)
Text11.SetFocus
Combo1.BackColor = &HFFFFFF
End Sub
After using this code when we press the Return Key the cursor moves to the next field.
As per this e.g. when the cursor is in Combo1 and we press the Return Key the Cursor moves to the
Text11 text box. This kind of navigation speedups the work.
Execution Speed Optimization: Execution speed is the speed with which our code gets executed.
This can be achieved by using the precompiled procedures or functions provided by the
Customer Relationship Management 47
Miniproject Report

environment we are working in. So to achieve the maximum execution speed I tried to use the
predefined functions in my project as far as possible rather than writing my own procedures.
e.g. consider the following code, which searches a string for a delimiter and then returns a sub
string.
Private Function Status Bar (Byval sMenuText As String) As String
Dim i As Long
For i = 1 to Len (sMenuText)
If Mid$ (sMenuText, i, 1) = vbLf then
tmp =Mid$ (sMenuText, i –1)
Exit For
End If
Next
Status Bar = tmp
End Function
These codes can slowdown menu navigation in this example because it has to step through every
single character looking for the delimiter vbLf. Every time the user of this hypothetical program
chooses a menu item, this process delay is imposed. The optimized code is as follows:
Private Function Status Bar (Byval sMenuText As String) As String
Dim runi As Long
runi = InStr (sMenuText, vbLf)
If runi > 0 Then StatusBar = Left$ (sMenuText, runi – 1)
End Function
Perceived Speed : it refers to the user’s impression of performance, not necessarily poor
performance itself. E.g. any VB form automatically executes all its contained code and then
displays the form last. Which gives an impression to the user that the application is slow, this is
avoided by just simply adding the Show method as the first line of my code the user will see the
form much sooner, making for a completely different user experience.
Size in Memory: This refers to the amount of memory the application occupies while executed. VB
can take a lot of space if we don’t take care of it. E.g. every form loaded uses memory. We might
think that by hiding or unloading the form, the memory used by its graphics and code would be
released is wrong. But VB offers the Code “ Set Form to Nothing “, to free the memory used by the
form. The code I used for this is as follows:
……..
Unload Form1
Set Form1= Nothing

Code Efficiency
A typical checklist for code inspection to identify the code efficiency for the codlings is given as
1. DATA DECLARATION.
a) All variables defined?
b) Correct lengths, types, and storage classes assigned?

Customer Relationship Management 48


Miniproject Report

c) Initialization consistent with storage class?


d) Arrays and strings initialized properly?
e) Any variables with similar names?
2 DATA REFERENCE.
a) Subscript within bound?
b) Record and structure attributes match?
c) Off-by-one errors in indexing or subscripting operations?
d) Correct attributes when aliasing?
e) String limits exceeded?
3. COMPUTATION.
a) Mixed-mode computation?
b) Computation on non –arithmetic variables?
c) Computation on variables of different lengths?
d) Intermediate result overflow or underflow?
e) Division by zero?
f) Target size less than size of assigned leave1s?
g) Variable’s value outside meaningful range?
4) COMPARISON.
a) Comparison between inconsistent variables?
b) Comparison relationship correct?
c) Boolean expressions correct?
d) Operator precedence understood?

5) CONTROL FLOW.
a) Multi-way branches exceeded? d) Any loop bypasses because of entry
b) Will each loop terminate? conditions?
c) Will program terminate? e) Off-by- one iteration errors?
6) INPUT/ OUT PUT.
a) File attributes correct? d) Buffer size matches record size?
b) Open statements correct? e) End-of –file conditions handled?
c) Format specifications match I/O
statement?
7 INTERFACES
a) Number of input parameters matches argument list?
b) Types of input parameters match the argument variables?
c) Global variable definitions consistent across modules?
d) Constants passed as arguments?
8. OTHER CHECKS.
a) Missing function?
b) Input checked for validity?
b) Input checked for validity?
Software Validation Check
Software validation is achieved through a series of black-box tests that demonstrate
conformity with requirements. A test plan outlines the classes of tests to be conducted, and a test
procedure defines specific test cases that will be used in an attempt to uncover errors in conformity with

Customer Relationship Management 49


Miniproject Report

requirements. Both the plan and procedure are designed to ensure that all functional requirements are
satisfied; all performance requirements are achieved; documentation is correct and human engineering;
and other requirements are met (e.g. transportability, comsabitribility, error recovery and
maintainability).
After each validation test case has been conducted, one of two possible conditions exist:
1. The function or performance characteristics confirm to specification and accepted, or
2. A deviation from specification is uncovered and a deficiency list is created. Deviation or
error discovered at this stage in a project can rarely be corrected prior to scheduled
completion. It is often necessary to negotiate with the customer to establish a method for
resolving deficiencies.
Validation Tests and Techniques to Entrance the Validity of Data Input
Validation Test Description

Class or Composition Test to assure that data are of proper type (e.g., all numeric, all
alphabetic, alphanumeric)

Combinations Tests to see if the value combinations of two or more data fields
are appropriate or make sense given the type of product?)

Expected Values Test to see if data is what is expected (e.g., match with existing
customer names, payment amount, etc.)

Missing Data Test for existence of data items in all fields of a record (e.g., is
there a quantity field on each line item of a customer order?)

Pictures/Templates Test to assure that data conform to a standard format(e.g., are


hyphens in the right places for a student ID number?)

Range Test to assure data are within proper range of values (e.g., is a
student’s grade point average between 0 and 4.0?)

Reasonableness Test to assure data are reasonable for situation (e.g., pay rate for
a specific type of customer)

Self-Checking Digits Tests where an extra digit is added to a numeric field in which its
value is derived using a standard formula

Size Test for too few or too many characters (e.g., is social security
number exactly nine digits?)

Values Test to make sure values come from set of standard values (e.g.,
two-letter state codes)

As we use the GUIs environment for the front end, is needed to be tested. So we have kept all
the forms under the MDI form. So the menu design interface contains all the input and output forms. So
it needs to be tested. So after testing we found the following results:
 When we press the window menu based command button, it opens up properly.
 And it can be resized scrolled and moved.

Customer Relationship Management 50


Miniproject Report

The window contains window property addressable with a mouse, function keys, directions,
and arrows.
 The window is properly generated and exited.
 All the command buttons, radio buttons function properly.
 As we design the input, incase of any error data is given, dialog box appears.
 At a time multiple windows are displayed.
 The design is well-tested and debugged henceforth pull down operations work properly.
 The menu functions are properly addressable by the mouse.
 It is possible that the key combinations or in a single key press, menu and command
buttons are activated properly.
We give dialog box for any mismatch of a text at the time of input

When the data values are entered correctly, they are saved in the respective files. File
attributes are correct; open/close statements are correct, format specifications matches the input/output
statements. As we design database in Oracle, the buffer size matches the record size. We declare the
variables properly, so the necessary tables are opened before use. Input/output errors are handled. Once
a data is recorded in database at a key field, the same data can’t be accepted again. It takes default
values and gives error messages for improper or inconsistent typing.
The matter of testing, the security of the data is one of the most important aspect of
testing the software. Security and protection mechanisms built into the system, so as to prevent the
system from unauthorized access. Here all the forms are taken into source safe. So it is secured and run
properly.

Customer Relationship Management 51


Miniproject Report

Testing case of GUI:


It presents intervening challenges for software engineers. Because visible components
provided as a part of GUI, the creation of the user interface has become less time consuming. The
complexity of GUIs has grown.
GUI has a series of standard tents can be derived. Before we test GUI some question are arises
such as for window.
I. Window is starting properly
II. It is moved, verized and sorfled
III. Is the mouse, keyboard functioning work properly
IV. Is window regenerate properly
V. All menu bar, dialog box are displayed properly
VI. Are multiple window display and work
VII. Window is updated and closed etc.
For menu and mouse
I. Appropriate menu are displayed
II. Application menu bar displayed system related features
III. Scrollbar, menu function, help waits for menu
IV. Multiple clicks are worked properly for menu
V. Are mouse work properly
For Data entry
I. Input to system properly
II. Graphical modes of data entry
III. Invalid data properly recognized

Customer Relationship Management 52


Miniproject Report

IV. Data input message intelligible


Here only the black-box testing method of the Graphical-based testing method is used.
Finite state modeling graphs may be used derive a series of tests that address specific
data and program objects that are relevant to the GUI. So large number of permutation associated with
GUI, testing should be used automated tools. Will exhaustive testing (earn if it is possible for every
small program) guarantee that the program is 100% covered
The decision of tests for software and other engineered products can be as challenging as the
initial design of the product itself. Varieties of test cases design methods evolved for software such as
black-box testing, white-box-testing, Exhaustive testing etc. It white box testing would lead to “100%
convert program” As it is define all logical paths, develop test cases to exercise them, and evaluate
result, i.e. generate test case to execute programs logically.
But exhaustive testing presents certain logistical problems. For even small programs, the
number of possible logical paths can be very large.

Testing Techniques

Customer Relationship Management 53


Miniproject Report

Testing Strategic

Testing is a set of activities that can be planned in advance and conducted systematically. There
are no of software testing strategies and they are the following characteristics
I. Testing begins at the module level
II. Different testing techniques are appropriate at different points in time
III. Testing in conduct by developer or other test graph
IV. Testing and debugging is different
It must accommodate low-level tests such as soon code implementation and high-level tests
validate major system functions requirements of customer.

Verification and Validation


Software testing is one element referred to as verification and validation

 Verification refers to the set of activities that ensure that software correctly implement a specific
function.
 Validation refers to a different set of activities that ensure that the software that has been built is
traceable to customer requirement.
 Are we building the product right verification
 Are we building the right product validation?
 Verification testing runs the system in a simulated environment using simulated data.
 Validation testing the process of using software in a live environment in order to find errors.
 It is sometime called as alpha testing verification
 Validation is sometime called Beta testing.
 Verification is primarily for errors and omissions regarding and users and design specification.
 Validation is produces changes in the software to deal with errors and failures that are
uncovered.
Verification and validation encompass a wide array of SQL activities that include formal
technical reviews, quality and configuration audits, performance monitoring, simulation, feasibility
study, documentation review, database review, algorithm analysis, development testing, qualification
testing and installation testing.

Several Different Types of Tests

Customer Relationship Management 54


Miniproject Report

Software application testing is an umbrella terms that covers several types of tests.
Mosley (1993) organizes the types of tests according to whether they employ static or dynamic
techniques and whether the test is automated or manual.

 Inspection is a testing technique in which participants examine programmed code for


predictable language specific errors. Inspections are formal group activities where participant are
manually examine code for occurrence of well-known errors. Syntax, grammar, and some other routine
errors can be checked by automated inspection software, so manual inspection checks are used for more
subtle errors.

 Unit testing : each module is tested alone in an attempt to discover any errors in its code.
 Integration testing : the process of bringing together all of the modules that a progamme
comprises for testing purposes. Programmed are typically integrated in a top down incremental fashion.
 Stub testing : A technique used in testing modules, especially where modules are written and
tested in a top down fashion, where a few lines of code are used to substitute for sub ordinate modules.

The Testing Process


There are two important things to remember about testing information system such as:
1. The purpose of testing is conforming that the satisfies requirements.
2. Testing must be planned
These two points have several implications for the testing process, regard less of the type of
test being conducted,. First testing is not haphazard. Attention is paid in many aspects of a system, such
as response time, response to boundary data response to no input, response to heavy volumes of inputs,
and so on. A test case is a specific scenario of transactions, queries, or navigation paths that represents a
typical, critical, or abnormal use of the system. A test case should repeatable; so that it can be rerun as
new versions of the software are tested. This is important for all code, whether written in house,
developed by a contractor, or purchased. Test cases need to determine that new software works with
other existing software with which it must share data. Even though analysts often do not do the testing,
systems analysts because of their intimate knowledge of applications, often make up or find test data.

 Automating Testing Software testing tolls provide the following functions, which improve the
quality of testing:
1. Record or build scripts of data entry, menu selections and mouse clicks, and input data,
which can be replayed in exact sequence for each turn run.
2. Compare the results of one test run with those from prior test cases to identify errors or to
high lights the results of new features.
3. Supported an attempted script playing to simulate high volume of stress situations. Such
tools can reduces the time for software testing by almost 80 percent.

Customer Relationship Management 55


Miniproject Report

Radically combining coding and testing Although coding and testing are in many ways part of the
same process, it is not uncommon in large and complicated systems developments environments to find
the two practices separated from each other. Big companies and big projects often have dedicated
testing staffs, who develop test plan and then use the plans into the test software after it has been
written. Code is tested very soon after it is written. Code is written, integrated into the system, and then
tested if all the test runs successfully then development proceeds.
 Acceptance testing: the process whereby actual users test a completed information
system, the end result of which is the users acceptance of it.
 Alpha testing: user testing of a completed information system using simulated data. The
most acceptance of testing will include alpha testing, where simulated but typical data are used for
system testing; beta testing, in which live data are used in the user’s real working environment; and a
system audit conducted by the organization’s internal auditors or by members of the quality assurance
group. During alpha testing, the entire system is implemented in a test environment to discover whether
or not the system is overtly destructive to itself or the rest of the environment. The types of tests
performed during alpha testing include the following;
Recovery testing: -forces the software (or environment) to fail in order to verify that recovery
is properly performed.
 Security testing : verifies that protection mechanisms built into the system will protect
it from improper penetration.
 Stress testing: tries to break the system (viz what happens when a record is written to
the database with incomplete information or what happens under extreme on-line transaction loads or
with a large number of concurrent users)
 Performance testing: determines how the system performs on the range of possible
environments in which it may be used (viz. different hardware configurations, networks, operating
system and so on) often the goal is to have the system performance measures in each environment.
 Beta testing: user testing of a completed information system using real data in the real
user environment. In beta testing, a subset of the intended users runs the system in their own
environments using their own data. The intent of the beta test is to determine whether the software,
documentation, technical support, and training activities work as intended.
Installation
The process of moving from the current information system to the new one is
called installation. Installation is the organizational process of changing over from the
current information system to a new one.

Direct installation: Direct installation is the changing over from the old information
system to a new one by turning off the old system when the new one is turned on. Under
direct installation, users are at the mercy of the new system.

Parallel installation: running the old information system and the new one at the
same time until management decides the old system can be turned off. Since all work is
done twice, a parallel installation can be very expensive. A parallel installation approach
may not be feasible, especially if the users of the users of the system cannot tolerate
redundant effort or the size of the system is large.

Single location installation: trying out anew information system at one site and
using the experience to decide if and how then new system should be developed
throughout the organization. The key advantage of this installation is that it limits
potential damage and potential cost by limiting the effects to a single site.
Customer Relationship Management 56
Miniproject Report

Phased installation: It is also called staged installation and it is an incremental


approach. Changing from the old information system to the new one incrementally,
starting with one or few functional components and then gradually extending the
installation to cover the whole new system. Phased installation allows for some benefits
from the new system before the whole system is ready.

Implementation & maintenances


Introduction
An important aspect of a system analyst’s job is to make sure that the new design is
implemented to established standards. The term implementation has different meanings, ranging from
the conversion of a basic application to a complete replacement of a computer system. The procedure
however is virtually the same. Implementation is used here to mean the process of converting a new or
a revised system design into an operational one. Conversion is one aspect of implementation. The
other aspects are the post implementation review and software maintenance. These topics re covered
later in the chapter.

Customer Relationship Management 57


Miniproject Report

There are three types of implementation:


Implementation of a computer system to replace a manual system. The problems
encountered are converting files, training users, creating accurate files, and verifying printouts for
integrity.
Implementation of a new computer system to replace an existing one. This is usually a
difficult conversion. If not properly planned, there can be many problems. Some large computer
systems have taken as long as a year to convert.
Implementation of a modified application to replace an existing one using the same
computer. This type of conversion is relatively easy to handle, provide there are no major changes in
the files.
This MIS software having the activities involved in conversion and the changes made in
the system following implementation. Software maintenance is becoming an important aspect of
building and maintaining systems.

Conducting Systems Maintenance


The purpose of maintenance is to fix and enhance the system to respond to problems and
changing business conditions. Maintenance includes activities from all system development phases. It
also involves responding to requests to change the system, transforming requests into changes,
designing the changes and implementing the changes.

A significant portion of the expenditures for information systems within organizations


does not have into the development of new system but to the maintenance of the existing systems.
Maintenance is the changes made to a system to fix or enhance its functionally.
Types of maintenance There are several types of maintain ace such as
 Corrective maintenance: changes made to a system to repair flaws in its design coding, or
implementation. More corrective maintenance problems surface soon after installation.
 Adaptive maintenance:: changes made to a system to evolve its functionally to changing
business needs or technologies.
 Protective maintenance: changes made to a system to add new features or to improve
performance.
 Preventive maintenance: changes made to a system to avoid possible future problems
 Maintainability: the ease with which soft ware can be understood, corrected, adapted, and
enhanced.
 Managing maintenance: as maintenance activities consume more and more of the system
development budget, maintenance management has become increasingly important.
Configuration management is a final aspect of managing maintenance is configuration
management, which is the process of assuring that only authorized changes are made to a
system.
• Baseline modules: software modules that have been tested, documented and
approved to be included in the most recently created version of a system.
• System Liberian: a person responsible for controlling the checking out and
checking in baselines modules for a system when a system is being
developed or maintained.
• Build routines: guidelines that lists the instructions to construct an
executable system from the baseline source code.

Customer Relationship Management 58


Miniproject Report

Cost estimation of the project


Determining project costs similar to benefits, an information system can have both
tangible and intangible costs. Tangible costs refer to Customer that you can easily measure in Rs and
with certainty. From an IS development perspective, tangible costs include Customer such as hardware
costs, labor costs, and operational costs such as customer training and building renovations.
Alternatively, intangible costs are those Customers that you cannot easily measure in terms of Rs or
with certainty. Intangible costs can include loss of customer goodwill, customer morale, or operational
inefficiency. Table 6-4 provides a summary of common costs associated with the development and
operation of an information system. Predicting the costs associated with the development and
operation of an information system is an inexact science. IS researchers, however have identified
several guidelines for improving the cost-estimating process (see the Table). Both underestimating and
overestimating costs are problems you must avoid. Underestimation results in cost overruns while
overestimation results in unnecessary allocation of resources that might be better utilized.
Besides tangible and intangible costs, you can distinguish IS-related development costs
as either one-time or recurring (the same is true for benefits although we do not discuss this discuss this
difference for benefits). One-time costs refer to those associated with project initiation and
development and the start-up of the system. These costs typically encompass activities such as system
development, new hardware and software Market, user training, site preparation, and data or system
conversion. When conducting an economic cost-benefit analysis, a worksheet should be created for
capturing these expenses. For very large projects, one-time costs may be staged over one or more
years. In these cases, a separate one-time cost worksheet should be created for each year. This
separation will make it easier to perform present value preservations (see below). Recurring costs refer
to those costs resulting from the ongoing evolution and use of the system. Example of these costs
typically include

• Application software maintenance


• Incremental data storage expense
• Incremental communications
• New software and hardware leases
• Supplies and other expenses (for example, paper, forms, data center personnel)
Both one-time and recurring costs can consist of Customer that are fixed or variable in nature.
Fixed costs refer to costs that are billed or incurred at a regular interval and usually at a fixed rate (a
facility lease payment). Variable costs refer to Customer that vary in relation to usage (long distance
phone charges).
Guidelines for better estimating
1. Assign the initial estimating task to the final developers.
Customer Relationship Management 59
Miniproject Report

2. Delay finalizing the initial estimate until the end of a thorough study.
3. Anticipate and control user charges.
4. Monitor the progress of the proposed project.]
5. Evaluate proposed progress by using independent auditors.
6. Use the estimate to evaluate project personnel.
7. Study the cost estimate carefully before approving it.
8. Rely on documented facts, standards, and simple arithmetic formulas rather than guessing,
intuition, personal memory, and complex formulas.
9. Don’t rely on cost-estimating software for an accurate estimate.

ONE TIME COSTS


10.WORKSHEET
vodafone
11.
Year 2010
12.
A. Development costs
5,500 13.
B. New Hard ware 15,000
14.
C. New Purchase Software 5,000
15.
D. User Training 5,000
16. During the process of determining project cost identified in one time, this
E. cost at the development time now the cost is calculated for maintenance and training cost.
is Costs
Other
1,550

TOTAL one-time cost

RECURRING COSTS WORKSHEET


vodafone

Year 1 through 5

A. Application software maintenance 30,000


B. Incremental data storage required 4,000

C. Incremental communication 2,550


Customer Relationship Management 60
D. New software / hardware leases
2,525

TOTAL recurring costs


Miniproject Report

17.

The above cost is calculated at once in the project time, the total cost contains

112125 in Rs and the cost of the project can be evaluated within the five years of effort.

PERT Charts & GANNT chart


Project Control System
The purpose of controlling a project is to monitor the progress of the activities against the plans,
to ensure that the goals are being approached and eventually achieved. In software engineering, as in any
design-dominated discipline, it is essentially important to plan the system realistically and even
constructively, so as to minimize the need for corrective action. Generalized project scheduling tools and
techniques can be applied to the software with little modification. Several structures are there to define
schedule a project.
(I) PERT CHART ( Program Evaluation Review Technique)
( II ) GANTT CHART ( Bar Chart )
Both provide quantitative tools that allow the software planner to
( I ) Determine Critical Path
( II ) To establish most likely time estimate
( III ) To calculate boundary times
These are
(a) Earliest time a task can begin
(b) Latest time for task initiation
(c) The earliest finish time
(d) The latest finish time
(e) Total amount of surplus time

(I) PERT CHART :


It can be both a cost and time management system. It is organized by events and activities or
tasks. It also facilitates finding the right balance between completing a project on time and completing it
Customer Relationship Management 61
Miniproject Report

within the budget. It gives a graphical representation of the information. The chart shows purely that the
project consists the activities like : information collection took 2 days, descriptions took 30 days, setting of
objectives took 3 days, creation of modules took 21 days, preparation of feasibility report took 18 days,
analysis took 35 days, software requirement specification took 9 days, process and data flow
diagram(DFD) took 3 days, design concept took 2 days, input design took 19 days, output design took 15
days, report generation took 14 days , table creation 4 days, coding took 11 days, testing and validation
took 3 days and implementation took 2 days . Thus the total time spent for developing the project, it took
90 days in total.
The analysis of the carrying process took considerable amount of time due to the technical
behaviors involved within it. The design for the system also took time due to various constraints related to
the customer satisfaction.

PERT CHART

PROJECT START 10-jan-2011

12-jan-
2011
INFORMATION COLLECTION

14-jan-2011 02-feb-2011 22-FEB-2011


15-jan-2011

DESCRIPTION OBJECTIVE MODULES FEASIBILITY REPORT

27-FEB-2011
03-MAR-2011

ANALYSIS

SOFTWARE REQUIRMENT SPECTIFICATION


PROCESS
05-MAR-2011
08-MAR-2011

DATA FLOW DIGRAM


09-MAR-2011

DESIGN
11-MAR-
2011 11-MAR-2011
11-MAR-2011

INPUT OUTPUT REPORT

15-MAR-2011
Customer Relationship Management 62
Miniproject Report

25-MAR-2011
TABLE

CODING
03-APR-2011 07-APR-2011
05-APR-2011
TESTING VALIDATION

IMPLEMENTATION
10-APR-
FINISH OF PROJECT 2011

(II)GANTT CHART :

Gantt chart is otherwise known as bar chart. It is the simplest form of formal project
management technique. It is used as almost exclusively for scheduling purpose and therefore controls
only the time dimension of the project. It is a control technique that can be used for several purpose
including scheduling, budgeting and resource planning. With each bar representing an activity. The
bars are drawn against a time line. The length of each bar is proportional to the length of time planned
for the activity.

In the gantt chart for the CRM the time line is equally divided into parts of 7-10 days interval.
There are 8 time line divisions starting from 10th Jan 2011, 12 Jan 2011, 15th Feb 2011, 25th Feb 2011,
5th March 2011, 18th March 2011, 27th March 2011 and 10th April 2011. There are 20 activities within
the time line range. This chart is given below.

The analysis for the customer carrying process was scheduled to be completed within a fixed
time period, but it could not be completed within that period due to some unavoidable situations in the
organization.

Customer Relationship Management 63


Miniproject Report

GANTT CHART
10 12 15 25 5 18
27 10

JAN JAN FEB FEB MAR MAR


MAR APR

START

INFORMATION COLLECTION

DESCRIPTION

OBJECTIVE

MODULES

FEASIBILITY REPORT

ANALYSIS

SOFTWARE REQUIRMENT SPECFICATION

PROCESS

Customer Relationship Management DATA FLOW DIGRAM 64

DESIGN
IIN OUTPUT
REPORT TABLE IMPLEMENTATION
Miniproject Report

CODING

TESTING
VALIDATIO

FINISH

Future scope of the project


The CUSTOMER RELATIONSHIP MANAGEMENT is developed with lots of testing
and discussion with the users as well as the authority. As this system is working on network and met
the current timely requirement of JEEVAN JYOTI, LIC, CUTTACK. Many other factors are there to
be looked after and updated with time considering the feasibility and requirement of the client. In the
future the organization of JEEVAN JYOTI, LIC, CUTTACK could require this system to be updated to
meet the requirement. There are many scopes for this current computer application system for
CUSTOMER RELATIONSHIP MANAGEMENT to be updated or new features to be added to make
this system for CUSTOMER RELATIONSHIP MANAGEMENT more flexible and user friendly.
Some of those scopes are as follows.

1. For the computer system the client could update it to maintain through database so that
easily updated for any information could be done. Thus it would add the user's ability to
change the information with the required ease.

2. Computer system for the Customers should be updated to carrying system so that with
very low cost a customer could reach the different authority of corresponding section of
CUSTOMER RELATIONSHIP MANAGEMENT.

3. The service section should be updated to receive claims and thus this system will help
for maintaining the reports of the customers.
4. Enquiry and contact also could be connected to the system to make it very fast and
effective.

Customer Relationship Management 65


Miniproject Report

Future scope of the project


The CUSTOMER RELATIONSHIP MANAGEMENT is developed with lots of testing
and discussion with the users as well as the authority. As this system is working on network and met
the current timely requirement of VODAFONE, FORTUNE TOWER, B.B.S.R. Many other factors are
there to be looked after and updated with time considering the feasibility and requirement of the client.
In the future the organization of ,VODAFONE, FORTUNE TOWER, B.B.S.R. Could require this
system to be updated to meet the requirement. There are many scopes for this current computer
application system for CUSTOMER RELATIONSHIP MANAGEMENT to be updated or new features
to be added to make this system for CUSTOMER RELATIONSHIP MANAGEMENT more flexible
and user friendly. Some of those scopes are as follows.
5. For the computer system the client could update it to maintain through database so that
easily updated for any information could be done. Thus it would add the user's ability to
change the information with the required ease.
6. Computer system for the Customers should be updated to carrying system so that with
very low cost a customer could reach the different authority of corresponding section of
CUSTOMER RELATIONSHIP MANAGEMENT.
7. The service section should be updated to receive claims and thus this system will help
for maintaining the reports of the customers.
8. Enquiry and contact also could be connected to the system to make it very fast and
effective.

Customer Relationship Management 66