Professional Documents
Culture Documents
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.
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).
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
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
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)
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.
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.
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.
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.
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:
Features
Customer Relationship Management 12
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
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.
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
3.0
Problem
details of
customer
4.0
Problem
customer
on service
process
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
Login
Menu
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
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
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
Enquiry details
The purpose of this table is to identify or enquiry all the transaction and services of the customer.
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
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 .
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.
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
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.
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.
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.
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.
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.
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.
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),
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"
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
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
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
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
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?
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
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?)
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.
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.
Testing Techniques
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 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.
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.
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.
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.
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
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.
Year 1 through 5
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.
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
12-jan-
2011
INFORMATION COLLECTION
27-FEB-2011
03-MAR-2011
ANALYSIS
DESIGN
11-MAR-
2011 11-MAR-2011
11-MAR-2011
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.
GANTT CHART
10 12 15 25 5 18
27 10
START
INFORMATION COLLECTION
DESCRIPTION
OBJECTIVE
MODULES
FEASIBILITY REPORT
ANALYSIS
PROCESS
DESIGN
IIN OUTPUT
REPORT TABLE IMPLEMENTATION
Miniproject Report
CODING
TESTING
VALIDATIO
FINISH
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.