Sie sind auf Seite 1von 33

Customer Support System

1. Introduction
1.1 Purpose Summary

Customer support system (also tech support) is a range of services providing assistance with
technology products such as mobile phones, televisions, computers, or other electronic or
mechanical goods. In general, customer support services attempt to help the user solve specific
problems with a product—rather than providing training, customization, or other support services.

Most companies offer customer support services for the products they sell, either freely available
or for a fee. Technical support may be delivered over the telephone or online by e-mail or a web
site.
Here we have developed software for such companies which will be useful to them in order to
deliver such services. This Project is for companies who deliver service through phones. It will
store all the record of caller, useful in checking warranty, and solving problem.

1.2. Scope

With the increasing use of technology in modern times, there is a growing requirement to
provide technical support. Many organizations locate their technical support departments
or call centers in countries with lower costs. There has also been a growth in companies
specializing in providing technical support to other organizations. These are often
referred to as MSP's (Managed Service Providers). So it would be very useful for such
companies.

2. Project Management

2.1 Project Planning & Scheduling

2.1.1 Project Development Approach

Prototyping is a model that addresses the fact that requirements are very seldom fully known at
the beginning of a project. The main theme is to build at first, simplified version of the system
and seek feedback from the different groups of people involved in order to come up with a
second, better system. This is repeated until the system meets the clients' conditions of
acceptance.

1
Customer Support System

Figure 4.1 Modified Waterfall Model

The following list details the steps for using the waterfall model:

 System Requirements: - Establishes the components for building the system, including the
hardware requirements, software tools, and other necessary components. Examples include
decisions on hardware, such as plug-in boards (number of channels, acquisition speed, and
so on), and decisions on external pieces of software, such as databases or libraries.

 Software Requirements: - Establish the expectations for software functionality and


identify which system requirements the software affects. Requirements analysis includes
determining interaction needed with other applications and databases, performance
requirements, user interface requirements, and so on.

 Architectural Design: - Determines the software framework of a system to meet the


specified requirements. The design defines the major components and the interaction of
those components, but the design does not define the structure of each component. You
also determine the external interfaces and tools to use in the project.

2
Customer Support System

 Detailed Design: - Examines the software components defined in the architectural design
stage. Produces a specification for how each component is implemented.

 Coding: - Implements the detailed design specification.

 Testing: - Determines whether the software meets the specified requirements and finds any
errors present in the code.

 Maintenance: - Addresses problems and enhancement requests after the software releases.

2.1.2 Project Plan

In the development of this project, we will first check to see if our project is feasible
functionally, technically and economically. Then we collect the requirements from the end users
and analyze it. We also analyze similar systems to get an exact idea of how to create this system.
Hence, we gather all the requirements which we need to develop our system. Then, after
thoroughly understanding the need of end user, we will develop the Graphical User Interface
(GUI).

The GUI is viewed by the user and the user communicates with the system and hence, it
should be appealing an attractive. After this comes the coding part, which involves handling
databases and manages queries and forms etc. There are certain coding standards to be followed so
that the flow of program is easily understood.

Testing will ensure that our system will work efficiently using all valid values and does not
give errors. To test the system we have to perform unit testing, module testing and the finally the
system testing.

To maintain system up to date with the changes in the organization and ensuring it meets
the goals of the organization by implementing changes to the system when necessary.

2.1.3 Schedule Representation

Scheduling the project tasks is an important project planning activity. It involves deciding
which tasks should be taken up and when. In order to schedule the project activities, a software
project manager needs to do the following:

 Identify all the tasks needed to complete the project.


 Break down large tasks into small activities.
 Determine dependencies amongst different activities.

3
Customer Support System

 Establish most likely estimates for the time durations necessary to complete the
activities.
 Allocate resources to activities.
 Plan the starting and ending dates for various activities.
P r o je c t D e v e lo p m e n t S c h e d u le

JAN U AR Y FEBUARY MARCH A P R IL

W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK W EEK
PR O JEC T STE PS
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
D o m a in U n d e r s ta n d in g
A n a ly s is
L e a r n in g P r o c e s s
D e s ig n A r c h it e c t u r a l D e s i g n W e b s ite D e s ig n

C o d in g a n d T e s tin g

D o c u m e n ta tio n
F in a l D o c u m e n ta tio n

EXPECTED ACTUAL DAY

DAY

ANALYSIS 8 10

DESIGN 12 14

CODING 7 9

TESTING 15 18

4
Customer Support System

18
16
14
12
10
Expected Days
8 Days
6
4
2
0
ANALYSIS DESIGN CODING TESTING

3. System Requirement Study


 System requirement specification contains the requirement for the system
and its functional operations.

3.1 User Characteristics

 User must know how to run web application.

 The user must have the basic knowledge of computers.

 User must have good understanding to use the system more efficiently with the
use of appropriate messages given while using the system.

3.2Hardware & Software Requirements

Server Side Requirements

Hardware Requirement:-
 Pentium IV Processor or above.
 160GB hard-disk.
 1 GB of RAM.
 Mouse, Keyboard

5
Customer Support System

Software Requirement:-
 Windows 2003 server or higher version.
 Java Runtime Environment (JRE)
 JDK 1.4
 Oracle 10g
 Java Script enabled browser

Developer Side Requirements


Hardware Requirement:-
 Pentium IV Processor or above.
 80GB hard-disk.
 512 MB of RAM.
 Mouse, Keyboard

Software Requirement:-

 Windows 2000, XP and higher version.


 Java Runtime Environment (JRE)
 JDK 1.4
 Netbeans
 Oracle 10g
 Photoshop
 Dream weaver
 Java Script enabled browser

User Side Requirements


Hardware Requirement:-
 Pentium IV Processor or above.
 40GB hard-disk.
 512 MB of RAM.
 Mouse
 Keyboard

Software Requirement:-

 Windows XP and higher version.


 Java Script enabled browser

3.3 Constraints

 The Web Application can run on an independent machine with Windows XP


or higher version of OS or required software.

6
Customer Support System

 The Project must be completed within four months.


 The system design must be user friendly.

4. System Analysis

4.1 FEASIBILITY STUDY

1) ECONOMIC FEASIBILITY

Economic analysis is most frequently used for evaluation of the effectiveness of the
system. More commonly known as cost/benefit analysis the procedure is to determine the
benefit and saving that are expected from a system and compare them with costs, decisions
is made to design and implement the system.

This part of feasibility study gives the top management the economic justification for the
new system. This is an important input to the management the management, because very
often the top management does not like to get confounded by the various technicalities that
bound to be associated with a project of this kind. A simple economic analysis that gives
the actual comparison of costs and benefits is much more meaningful in such cases.

In the system, the organization is most satisfied by economic feasibility. Because, if the
organization implements this system, it need not require any additional hardware resources
as well as it will be saving lot of time.

2) TECHNICAL FEASIBILITY

Technical feasibility centers on the existing manual system of the test management process
and to what extent it can support the system. According to feasibility analysis procedure the
technical feasibility of the system is analyzed and the technical requirements such as
software facilities, procedure, inputs are identified. It is also one of the important phases of
the system development activities.

The system offers greater levels of user friendliness combined with greater processing
speed. Therefore, the cost of maintenance can be reduced. Since, processing speed is very
high and the work is reduced in the maintenance point of view management convince that
the project is operationally feasible.

3) BEHAVIOURAL FEASIBILITY

People are inherently resistant to change and computer has been known to facilitate
changes. An estimate should be made of how strong the user is likely to move towards the
development of computerized system. These are various levels of users in order to ensure
proper authentication and authorization and security of sensitive data of the organization.

7
Customer Support System

4.2 Functions of System

Required software is for conducting on-line `objective’ type examination and providing
immediate results. The system should satisfy the following requirements:

 Administrator Aspect

1. Editing/ Deleting/ Creating the database.


2. Adding or expelling employee.
3. Changing the super password.

 Employee Aspect

1. Logging into the system.


2. Solving problem of Customer.
3. Registering new complain.
4. Check the warranty of product.
5. Search any old complain.
6. Change its user name password.
7. Send mail to Customer.

 Data Employee Aspect

1. Logging into the system


2. Entering new product information.
3. Entering Warranty of sold product.
4. Taking backup of the database.

4.3 Data Modeling

8
Customer Support System

4.3.1 Use Case Diagram:

4.3.2 Class Diagram/E-R Diagram

9
Customer Support System

Class Diagram:

4.3.3 System Activity or Object Interaction Diagram

Login Activity Diagram:

10
Customer Support System

System Activity Diagram:

11
Customer Support System

4.3.4 Data Dictionary

Login table

Employee table

12
Customer Support System

Complain table

Product table

13
Customer Support System

4.4 Function & Behavioral Modeling

4.4.1 Context Diagram

4.4.2 DFD

14
Customer Support System

4.4.3 Process Specification & Decision Table


Structure English:
If username = invalid or password = invalid
Then
Back to login page;
Else
If user = admin
Then
Admin homepage;
End if
If user = tech_emp
Then
tech_emp homepage;
End if
If user = data_emp
Then
data_emp homepage;
End if
End if

15
Customer Support System

5 DATABASE DESIGN/DATA STRUCTURE DESIGN

5.1 Tables and Relationship

16
Customer Support System

6. Implementation Planning & Details

The project was a result of a group consensus. The team was having two members. The team
structure depends on the number of people in the team and their skill levels and the problem
difficulty.

Considering all these points our Team organization was Democratic Decentralized in which there
is no team leader. Decision on the problem was made by group consensus. Communication among
the team member was horizontal.

The work was divided among all the members. The modules were distributed among the entire
member and we have teamwork on the modules simultaneously.

6.1 Implementation Environment


GUI vs Non-GUI
The system is completely GUI. This is because today user feels comfortable while working with
images or pictures. As the project is web based, it can be used by any end-user. Thus user should
feel convenient while working with the system. Thus system is user-friendly.

6.2 Program / Module Specification

Main Modules of Customer Support System are described below.

1. Add employee
Admin add new employee which might be technician employee or data feeding employee. He
enters his basic information both and provides username and password.

2. Register complain
Technician employee register complain of customer s. He first checks warranty and then if its in
warranty period then registers complain.

3. Search
There is good facility of searching system the Admin can search the detail of employee or detail of
complain. Technician can search the warranty of product or old complains.

17
Customer Support System

4. Add product
Data employee’s job is to add the detail of product and the warranty of all products.

6.3 Security Features

The administrator has got all the rights like adding new employee or edit or delete employee, he even can
view all complains by date and month and can know the progress of firm..

The employee have not been given any rights like uploading, adding, deleting, modifying his details. The
employee can only register complain.

6.4 Coding Standards


The coding standard is the well-defined and standard style of coding. With the help of the coding
standards any person can go into any code and figure out what’s going on and new people can get up to
speed quickly. A coding standard ways of doing several things such as the way variables are to be named,
the code is to be laid out, the comments are to be described, the work of function are to be carried out.

This section describes the coding standards, which we have used in the program. In the context of coding
standard the tag consists

6.5 Sample Coding

<%
String z=(String)session.getAttribute("User");
if(z==null)
{
z="";
response.sendRedirect("login.jsp");
}
%><%--
Document : Admin
Created on : Apr 18, 2010, 11:20:33 PM

--%><%@ page contentType="text/html; charset=iso-8859-1"


language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

18
Customer Support System

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-
1" />
<title>HP Customer Support System</title>
</head>

<%
String post = (String) request.getParameter("e_post");
String uid = (String) request.getParameter("e_id");
String pswd = (String) request.getParameter("e_password");
String fname = (String) request.getParameter("e_fname");
String lname = (String) request.getParameter("e_lname");
String gender = (String) request.getParameter("e_gender");
String d = (String) request.getParameter("dd");
String m = (String) request.getParameter("mmm");
String y = (String) request.getParameter("yy");
String emailid = (String) request.getParameter("e_emailID");
String a_emailid = (String) request.getParameter("e_a_emailID");
String contact = (String) request.getParameter("e_contact");
String ques = (String) request.getParameter("e_ques");
String ans = (String) request.getParameter("e_ans");
String join_date = (String)request.getParameter("join_date");
String a_city = (String) request.getParameter("e_city");
String a_state = (String) request.getParameter("e_state");
String a_country = (String) request.getParameter("e_country");
/*
out.print(post);
out.print(uid);
out.print(pswd);
out.print(fname);
out.print(lname);
out.print(gender);
out.print(dob);
out.print(emailid);
out.print(a_emailid);
out.print(contact);
out.print(ques);
out.print(ans);
out.print(city);
out.print(state);
out.print(country);
*/
Connection con=null;
Statement st=null;
ResultSet rs=null;

try

19
Customer Support System

{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// out.println("driver installed");
}
catch(Exception e)
{
out.println("Driver can not be loaded"+e);
}

try
{
con =
DriverManager.getConnection("jdbc:odbc:XE","umang","parekh");
}
catch(Exception e)
{
out.println("Can't get connection"+e);
}

try
{

st = con.createStatement();
String s = "insert into reg
(post,uname,pswd,fname,lname,gender,dob,emailid,a_emailid,contact,que
stion,answer,joining_date,city,state,country) values
('"+post+"','"+uid+"','"+pswd+"','"+fname+"','"+lname+"','"+gender+"'
,'"+d+"-"+m+"-"+y+"','"+emailid+"','"+a_emailid+"',"+contact+",'"+que
s+"','"+ans+"','"+join_date+"','"+a_city+"','"+a_state+"','"+a_countr
y+"')";
String s1 = "insert into login (post,username,password)
values ('"+post+"','"+uid+"','"+pswd+"')";

st.executeUpdate(s);
st.executeUpdate(s1);
response.sendRedirect("confirm_add.jsp");
con.close();
}
catch(Exception e)
{
out.println("Exception: "+e);
//response.sendRedirect("a_fails.jsp");
}

%>
<body>
</body>

20
Customer Support System

</html>

7. Testing

The aim of testing process is to identify all defects existing in software product.
Testing a program consists of subjecting the program to as test inputs and observing if
the program behaves expectedly or not. If the program fails by any means or gives
unexpected results than the failure occurred are noted for later debugging and
corrections.

7.1 Testing Plan

The testing process is a process that to a greater extends runs in parallel with other
processes. As the same thing applied for the whole system for testing and once the
entire module works perfectly as desired, at later stages test suite are made to test in
integrated environment to check for proper functioning. So the software is tested at
various levels by various testing techniques. A well rounded test plan notes any risk
factors that jeopardize and includes a testing schedule. So we can say that Test
planning details the activities, dependencies and effort required to conducting the
system test.

7.2 Testing Strategy

The test strategy is a formal description of how a software product will be tested. A
test strategy is developed for all levels of testing as and when required. The testing
team analysis the requirements, writes the test strategy and reviews the plan with the
project team. The test plan may include test cases, conditions and the test environment,
a list of related tasks, pass/fail criteria and risk assessment.

As we were working in a team it was a bit difficult to check the work done as no
individual was assigned for that particular task or work. Moreover checking the work
done was very important to reduce risk factor. Right from the starting we planned to
adopt one technique called Assessment by rotation. Thus the work done by one
member was assessed by the other for some time and again revolved for other level
check reduced the errors.

7.3 Testing Methods


Testing methods are mainly divided into two parts:
1) Black Box Testing
2) While Box Testing

1) Black box testing:

21
Customer Support System

It is the testing without the knowledge of the internal working of the item being
tested. For this testing test groups are often used. Due to the nature of this testing
the test planning can begin as soon as the specifications are written. This testing
has some advantages like it is more effective on larger units of code than glass box
testing, tester needs no knowledge of implementation, including specific
programming languages, tester and programmer are independent of each other,
tests are done from a user’s point of view, will help to expose any ambiguities or
inconsistencies in the specifications, test cases can be designed as soon as the
specifications are complete.

2) White box testing:

It is the testing strategy that deals with the internal logic and structure of the code.
White box texting is also called as the glass testing, structural testing, open testing
or the clear box testing. The advantages of the white box testing are that as the
knowledge of internal coding structure is needed, it becomes easy to find out which
type of input data can help min testing the application effectively. It helps in
optimizing the code helping in removing the extra code which may cause hidden
defects in the system.

The other sub testing techniques are as follows:

 Unit Testing
Unit testing focuses on verification effort on the smallest unit of the project that
is the module. Unit testing exercises specific paths in a module’s control
structure to ensure complete coverage and maximum error detection. This test
focuses on each module individually, ensuring that it functions properly as a
unit. Hence, the naming is Unit testing.

 Integration Testing
Integration testing addresses the issues associated with the dual problems of
verification and program construction. After the software has been integrated a
set of high order tests are conducted. The main objective in this testing process
is to take unit tested modules and builds a program structure that has been
dictated by design.

 Task Testing
Task testing helps the system to test whether all the tasks are carried out
properly or not. It also solves logical errors. By carrying this test we were
assured that all processes in our project are appropriate.

 Behavioral Testing
This testing is used to check the behavior of the system. This test helped us to
develop the test case for the particular system. This testing thus helps to test the
different events associated with the system.

22
Customer Support System

 Inter Task Testing


There are several processes or tasks which are carried simultaneously.
Moreover this testing also helps to test the errors associated with the data
storage activities. This testing helped our project to solve the error while data
designing which is very much important for a successful project.

 Final Testing
After the integration of all the modules we deploy whole application. One of
the member of the development team will do the testing of the whole project
and create the excel sheet of the bugs. After the completion of the solving of
these errors the project would be ready to use.

 Alpha Testing
Alpha testing is done by the person not involved in the project. In our case it
would be done by out concerned faculty members itself.

7.4 Test Cases


In software engineering the most common definition of a test case is set of conditions
or variables under which a tester will determine if a requirement or use case upon an
application is partially or fully satisfied. In the situation each sub requirement must
have at least one test case. A good test should neither be too simple nor too complex.

23
Customer Support System

8. Screen shots

Login:

24
Customer Support System

Change Password form:

Homepage:

25
Customer Support System

Employee Register:

26
Customer Support System

Employee Search:

Employee Registration Successful :

27
Customer Support System

Employee search Result:

Complain Register:

28
Customer Support System

Product Register:

Product Search:

29
Customer Support System

Product Search Result:

Warranty Search:

30
Customer Support System

Warranty Search Result:

Contact us:

31
Customer Support System

About us:

32
Customer Support System

9. Limitations & Future Enhancement

 Mailing and message facility is not provided.


 Employee photo uploading facility is not there.
 Data backup is not possible.

10. Conclusion

Using Netbeans IDE 6.8, we can develop robust and secure web application in nice way. By using
JSP, we have developed “Customer Support System“ which is perfectly running as per expected. It
is more users friendly

33

Das könnte Ihnen auch gefallen