Вы находитесь на странице: 1из 54

INTELLIGENT KNOWLEDE

RETORTER
S.No

TITLE

P.No

1.

SYNOPSIS

2.

INDRODUCTION & SYSTEM STUDY


2.1

Project

overview

2.2 Problem definition

Chapter 1 3. PROBLEM ANALYSIS

3.1 Solution strategies

3.2 H/W & S/W Requirements


3.3 S/w justification
4.

DESIGN & DEVELOPMENT PROCESS


4.1 Module Design
4.2 Design Notations
A. Data flow Diagram
B. Structure Chart
C. E-R Diagram
4.3 Design process
A. Data base design
B. Input design
C. Output design

5.

TESTING & IMPLEMENTATIONS


5.1 Syste m testing
5.2 Syste m Implementation
5.3 Syste m Maintenances

6.

CONCLUSSION
6.1 Scope for future Enhancement
6.2 Bibliography

7.

APPENDIX
SCREEN LAYOUTS
CODE LIST
REPORTS

INTRODUCTION
An Overview
An organization/company will have a number of products and
services they may offer to their customers. Depending on the type of
business or service offered the customers may have several
doubts/complaints/problems. The Intelligent Knowlede Retorter helps
to accomplish this task of solving and clarifying the customers queries.
This product facilitates the user to submit online complaints independent
of the system
The Intelligent Knowlede Retorter can be used by a business
organization to provide online support to its customers. This may include
questions about their services or even complaints the customers may have.
Although a manual system can be done, time plays an important role in
customer satisfaction.
A customer always expects services to be offered as soon as
possible and the organization is responsible for making sure its customers
stay satisfied. As most organizations are going, or are already online, the
Intelligent Knowlede Retorter will prove an added advantage to them in
this internet world.

Objectives of the Project


The manual submission of complaints and customer servicing has
been the most tedious part of the business. The time delay for a response
and accuracy of complaint solving plays as vital role for customer
servicing. This scenarios and objectives play the mandatory development
of application to serve the customer with customer service satisfaction.
This System will allow the business process to run efficiently and will be
used to assist or satisfy the customer by giving a brief solution
for their complaint within a minimum time. The Customer receives
the solution within a day online.
The customers may arise with many problems which cannot be
solved at the same time with full support by the business. The main aim of
the business is the Customer satisfaction. This system helps the customers
to give their problems online whenever the customer needs, without any
constraints implied on them. This system helps the customers to briefly

explain their complaint without any hesitation. Through this system the
customers are assisted with some predefined complaints and immediate
solutions which save the precious time of the customers. The customers
receive the solutions for their complaint within a day and the customer
can also view the status of the complaint at any time using the complaint
no. Through this system the customers receive a brief solution for their
complaint.
BACKGROUND PROFILE (COMPANY PROFILE)

SYSTEM ANALYSIS
Existing System
Current System doesnt extend its functionality for Overseas
Business Process and Outsourcing. The cost and human resource expenses
towards building Customer Services for Business prosperity with in the
Locality are undesirable. The system cannot be enhanced to provide
distribution of data for different services. The complaints are dropped in
the complaint box and they are collected by the respective members for
scanning process and served on day to day basis. This process model and
business approach is inefficient and not dynamic for the future growth of
the organization.
Analyzing the Employees performance and generating reports are
done manually which is time consuming. Accuracy in data maintenance
also becomes a tedious task. Drafting required for trainees also done
manually. Searching for information through multiple files and data
analysis also becomes a tedious task.
Draw Backs

Time-consuming

A tedious task

Cause

damage

to

the

brand

image

of

organization

Slow updation and retrieval of information

the

Proposed System
Problem Definition
The aim is to develop a system to assist the customers by
providing
solutions
for
their
complaints. This
system
focuses on receiving the complaints from
the
customer ,
distributing complaints to the
customer support representatives,
solving complaints
based on some
constraints,
solved
complaints
are
verified
by the
team leaders, providing
accuracy percentage
to the
customer
support
representatives
based
on
failure
constraints, validation engine which is used
to provide the solution
to a repeated complaint.
The complaints are distributed by the distribution engine
category wise. The customer support representatives are classified
under different categories. The distribution engine does not distribute
the same complaint for more than one customer support representative.
The distribution engine maintains the complaint details of how many
complaints have been distributed to the customer support representative
and how many complaints have been solved and how many complaints
have been verified. The distribution engine maintains all the complaint
details category wise. The Complaints are tracked as when the
complaints are distributed to the customer support representative and
when the customer support representatives solve the complaint. The
Time taken for each complaint to be solved is also maintained.
The solution given by the customer support representatives are
forwarded to the team leaders who verify the solution. The solution
given by the customer support representative must be following some
constraints that are already deployed in the system. The customer
support representative can verify the customer records that are
retrieved as and when the complaint is distributed. The Team Leaders
verify whether the given solution has followed the deployed
constraints. The Team Leaders provide accuracy percentage to the
customer support representative based on the failure methodologies.
The failure methodologies validate the career of the customer support
representative. If the customer support representatives get more than a
specified failure percentage the customer support representative will be
taken out from the company. The Team Leaders will be notified about
the time spent on each complaint solved customer support
representative. The complaint for which more time is spent is notified
to the Team Leader by highlighting the complaint no. The customers
can view the status of the complaint using the complaint no generated

at the time of submission. The complaint no is submitted by the


customer only after login.
MODULE DESCRIPTION

The Project Intellect Acquaintance Response deals with the online customer queries.
The project consists of following modules:

1. Client Module
2. FAQ Module
3. QA Module
4. CSR Module
5. Reports

Client Module
The client is the customer for this software company. While client
purchasing software the company will provide an account number. Through this
number userna me and password can create. Using this client can logon to the
website. Client can view the solutions from FAQ list and if it requires client
can post new Complaints and can get the solution back through this website
itself.

FAQ Module
This module consists of a list, which is FAQ list. Here in this
list we will have the Frequentl y Asked Queries and the solutions.

The client

can view this list and if the quer y exists then client can obtain the solution
directl y.

In this Module we will categories the queries based on Software. If

the quer y is not existing the client will send a quer y to the compan y.

QA Module
This module is to supervise the queries and the solutions. The
Qualit y Anal yzer is like supervisors. The quer y from the client will come to the
QA. QA will verifies the quer y. If it is valid it will forward to the CSR
otherwise it will be discarded there itself.
QA will obtain the solution from CSR and check the qualit y of
the solution. If it is qualit y solution then it will send to the Client else it will
be resend back to the CSR.

CSR Module
CSR module is the place where the actual processing takes place.
The CSR will receive the queries from the QA and he will provide solution to
the queries and will forward it to QA. Here the CSR has to satisf y three
constraints, If CSR is opening a quer y then CSR should provide the solution
within 10 minutes, Per da y CSR should provide solution to 50 queries. Per
month a CSR should provide solution to 1200 queries.

Reports
Here in this module we will separate the reports. The da y wise
reports of the CSR , QA and Complaint. Then the monthl y repots provided.

Developing Solution Strategies


Complaint Process Analysis

Clients will have to submit their complaints online. A


complaint number will be generated and given back to the customer. The
number of complaints that will be submitted in a day may range from
80,00 to 1,00,00. Storage will be required to maintain such a large mass
of complaints. The number of complaints submitted in a single second
will be large and proper handling of this has to done. Predefined
solutions will be readily obtained to the customer. To decrease the

response time of retrieving complaints, three separate tables (C T, PT,


AT) will be maintained and depending on the number of complaints
coming these tables have to handle it. The records from the centralized
database should move in batch of 500 complaints at a time or on the
change of date, to the respective tables
Distribution Engine Process Analysis

The Distribution Engine has to distribute a complaint to the CSR


on request. The complaints if present in AT have to be obtained first,
then PT and then CT. Only one complaint at a time should move. Also
the complaints that have been distributed have to also be distributed to
the QA. No one complaint should be received by more than one CSR.
This process is also involved in updating the complaint and solution
tables and also making the corresponding tracking information entries.
Solution Process

Received complaints have to be solved by the CSR. All necessary


information has to be displayed to the CSR in a separate screen.
Complaints will be solved and sent to the solution table. The CSR has to
solve at least 120 complaints in a day with 98% accuracy. If he cannot
solve a complaint immediately he can push it in his PQ but at the end of
his working day he should have solved all those present in the queue.
Evaluation Process

Each complaint solved is evaluated by the QA. Once the


complaints are evaluated the accuracy percentage is awarded to the
customer support representative.

The Failure Methodologies are:


Resolution (25%)
Incomplete work results in resolution failure.
Procedure: Process Knowledge (25%)
If the required steps are not followed, you make any major mistakes it is
procedure failure.
Notes (25%)
Mistakes on notes end in Notes Failure.

Follow Through (25%)


Any wrong letters send to customer then it is follow through failure.This
accuracy percentage is used to find the efficiency and caliber of the
CSRs.

System Specification
Application Specification
Client-Server Architecture

Not so long ago, computer applications were made with a


fixed set of proprietary tools for design, development, testing and
deployment. This usually involved a special breed of top IT talent
who knew nothing but just that. They specialized in a programming
language that works only with a proprietary operating system and a
proprietary database in a proprietary network.
This posed a problem to most HR managers who had to
keep their IT staff pampered owing to the difficulty of sourcing out
these rare birds (of prey). It also posed a problem to IT staff
themselves as they were bound to an allegiance to a single vendor.
But not for long, those days now fizzle out of the horizon...
As networking technology matured significantly in the
PC arena, the role of networks evolved from simple file and
printer/device sharing to complex back-end server applications.
So, then came the introduction of a 2-tiered architecture.
Here, programs are developed using front-end Tools (like PB) which
could hook up to a host of databases (back-end). Soon, databases
could also communicate and share data with proprietary databases
(middle-tier?). Subsequently, with the specialties fragmented, the
end-users have a wider variety of flavors to choose from and need
not be bound to a single vendor or a whiz kid of specific talent.
More choices led to greater flexibility in system design.
A 2-tiered architecture divides an application into 2 pieces:
The GUI (client) and the Database (server).
The client sends a request to the server. The server being a
more powerful machine does all the fetching and processing and
returns only the desired result set back to the client for the finishing
touches. In effect, weaker machines virtually have a shared access
to the strength of the server at the back-end. Faster execution at the

server side results in less network traffic and increased response


time for the program to fetch and process the data.
A 3-tiered architecture on the other hand extends further the
fragmentation of an application's components: The GUI (Client),
Business Rules (Application Server), and the Database (Database
Server). This type of design does not necessarily mean it is better
than the 2-tiered architecture. Factors such as development time
frame, IT resources, application complexity, and future scalability
are things to be considered when choosing between the two.
Most applications employ the 2-tiered architecture. This is
characterized by a faster development time, less vendors to deal
with during setup, and that programmers need to learn only a few
products. On the negative aspect, the choice of vendors is not as
varied as in a 3-tiered setup, business rules cannot be shared with
other products, and scalability is limited .

Software Requirements
Operating System

Server side Script

Back-End Tool

Windows 98/2000/XP/NT
PHP
MYSQL

Hardware Requirements

Processor

Intel Pentium III

RAM

256 MB

Virtual Memory

64 Megabytes

Hard Disk

20 GB

Ke y Board

P/S2 105 Ke ys I Read y

Mouse

P/S2 3Button Mouse

FEASIBILITY STUDY
It is both necessar y and prudent to evaluate the feasibilit y of a
project at the earliest possible ti me. Months or ye ars of effort, thousands and
millions of dollars, and untold professional embarrass ment can be averted if an
ill-conceived s yste m is recognized earl y in the definition phase.
Feasibilit y and risk anal ysis are related in ma ny wa ys . If project
risk is great, the feasibilit y of producing qualit y software is reduced. During
product engineering, however, we concentrate our attention on four primar y
areas of interest.

Technical Feasibility
Technical feasibilit y is the need of hardware and software,
which are needed to imple me nt the proposed s ys tem in the organization.
Technical require ments are to be fulfilled to make the proposed s yste m work.
This should be necessaril y predetermined so as to make the s yste m more
competent.

Economical Feasibility
The Economical feasibilit y must satisf y the needs of the
technical feasibilit y and the operational feasibilit y. It involves the economic
feasibilit y of developing and i mplementing the proposed s yste m.

Operational Feasibility
The proposed s ys tem should use the internet level then the
different t ypes of end users are involved in the s yste m, so it solves the user s
needs and the organization needs. And it supports the all users environment.

Introduction to PHP

History of PHP:
The original release of PHP was designed and created by Rasmus Lerdorf
back in the middle of the 90s as a way of making various common web tasks
easier and less repetitive. Back then, the main goal was to have the minimum
amount of logic as was possible in order to achieve results, and this led to
PHP being HTML-centric that is, PHP code was embedded inside HTML.
The first popular version of PHP was called PHP/FI 2.0, for Personal Home
Page / Form Interpreter, and, despite its parsing inconsistencies, managed to
attract a fair few converts, including myself. The main issue with this version
was that the PHP/FI parser was largely hand-written, and so users often
encountered scripting errors that were not technically errors they were just
the PHP/FI parser screwing up. Furthermore, the parser was absolutely tied to
the Apache web server, and was hardly renowned for its speed.
PHP 3 also finally made the language extensible something that was serious
lacking from prior versions. Particularly keen developers were able to write
their own modules for the language, adding functionality at the core level.
The parser itself, though, was still tied to Apache, and, although speed was
improved a great deal from PHP/FI, it still was not anything to shout about.
The only downside to upgrading to PHP 3 was that the language was a lot
stricter some code that worked on PHP/FI would no longer work after
upgrading. The language was still young, though, so not many were affected.
With PHP 3, the language had gained limited object-oriented support, and this
only added extra fuel to the fire of PHP's growth. By the time PHP 3 was
replaced in the middle of 2000, it was installed on over 2,500,000 web-site
domains, as compared to 250,000 just 18 months before.
In the middle of 2000, PHP 4 was released to the world, containing major
differences to PHP 3 in all aspects. Extensive work had been done to ensure
that backwards compatibility with older PHP scripts would remain upgrading
from PHP 3 to PHP 4 was much smoother than the PHP/FI to PHP 3 upgrade.

Perhaps the most important change made for PHP 4 was the switch to what is
called the Zend Engine. The Zend Engine, created by Zend, a company
founded by Zeev Suraski and Andi Gutmans (the name Zend is a contraction
of ZEev and aNDi) to promote PHP in the corporate environment, allowed
much more flexibility than had ever been seen in PHP before. The engine took
over the core of PHP and introduced reference counting, whereby all
resources used in scripts (database connections, files, etc) are tracked
automatically by the engine, and freed when no longer used to minimise
memory usage and ensure there were no memory leaks.
Also introduced with PHP 4 was complete web server abstraction, meaning
that PHP now runs on Apache 1.3.x, Apache 2, Microsoft's IIS, Zeus,
AOLServer, and more. This opened use of the language up to the 40% of the
world who do not use Apache for their web server.
PHP 4 adopted the "compile first, execute later" paradigm, reading in your
entire script and compiling it to byte code before execution. This resulted in a
large speed increase - the average being around 100% - with some
benchmarks showing up to a fifty-fold increase in speed when PHP 4 was
pushed to its limits.
PHP 5 was a big step forward for the language, although admittedly not as
big as the jump from PHP 3 to PHP 4. The release is focused on language
maturity, and offers a lot of new functionality that has simply been missing
from previous versions simply because the language was a little too simple to
properly support larger projects.
PHP 5 brought with it huge steps forward for object-oriented scripts
developers are now able to declare how their objects may be used, which
makes it easier for one developer to work with another's code. Furthermore,
there is a wide variety of functions available for objects that make them
much more flexible and easy to work with unified constructors are only
available from v5 upwards.
PHP 5 also brought with it new error checking in the form of try/catch
something that programmers from other languages had been enjoying for a
long time. Furthermore, objects are now always handled as references in
order to help programmers who just do not understand how objects work.

A PHP file may contain text, HTML tags and scripts. Scripts in a PHP file are
executed on the server.
What is PHP?

PHP stands for PHP: Hype rtext Preprocessor


PHP is a server-side scripting language, like ASP
PHP scripts are executed on the server
PHP supports ma ny databases (M ySQL, Infor mix, Oracle, Sybase, Solid,
PostgreSQL, Generic ODBC, etc.)
PHP is an open source software (OSS)

PHP is free to download and use

What is a PHP File?

PHP files ma y contain text, HTML tags and scripts


PHP files are returned to the browser as plain HTML
PHP files have a file extension of ".php", ".php3", or ".pht ml"

What is MySQL?

M ySQL
M ySQL
M ySQL
M ySQL
M ySQL

is a database server
is ideal for both small and large applications
supports standard SQL
compiles on a number of platfor ms
is free to download and use

PHP + MySQL

PHP combined with M ySQL are cross-platform (means that you can
develop in Windows and serve on a Unix platform)

Why PHP?

PHP runs on different platforms (Windows, Linux, Unix, etc.)


PHP is compatible with al most all servers used toda y (Apache, IIS, etc.)

PHP is eas y to learn and runs efficientl y on the server side

Where to Start?

Install an Apache server on a Windows or Linux machine


Install PHP on a Windows or Linux ma chine
Install M ySQL on a Windows or Linux ma chine

PHP Syntax
You cannot view the PHP source code by selecting "View source" in the browser you will only see the output from the PHP file, which is plain HTML. This is because
the scripts are executed on the server before the result is sent back to the browser.
Basic PHP Syntax
A PHP scripting block always starts with <?php and ends with ?>. A PHP scripting block
can be placed anywhere in the document.
On servers with shorthand support enabled you can start a scripting block with <? and
end with ?>.
However, for maximum compatibility, we recommend that you use the standard form (<?
php) rather than the shorthand form.
<?php
?>

What can PHP do?


Anything. PHP is mainly focused on server-side scripting, so you can do anything any
other CGI program can do, such as collect form data, generate dynamic page content, or
send and receive cookies. But PHP can do much more.
There are three main areas where PHP scripts are used.

Server-side scripting. This is the most traditional and main target field for PHP.
You need three things to make this work. The PHP parser (CGI or server module),
a webserver and a web browser. You need to run the webserver, with a connected
PHP installation. You can access the PHP program output with a web browser,
viewing the PHP page through the server. All these can run on your home
machine if you are just experimenting with PHP programming. See the
installation instructions section for more information.
Command line scripting. You can make a PHP script to run it without any server
or browser. You only need the PHP parser to use it this way. This type of usage is
ideal for scripts regularly executed using cron (on *nix or Linux) or Task
Scheduler (on Windows). These scripts can also be used for simple text
processing tasks. See the section about Command line usage of PHP for more
information.
Writing desktop applications. PHP is probably not the very best language to create
a desktop application with a graphical user interface, but if you know PHP very
well, and would like to use some advanced PHP features in your client-side
applications you can also use PHP-GTK to write such programs. You also have
the ability to write cross-platform applications this way. PHP-GTK is an extension
to PHP, not available in the main distribution. If you are interested in PHP-GTK,
visit its own website.

PHP can be used on all major operating systems, including Linux, many Unix variants
(including HP-UX, Solaris and OpenBSD), Microsoft Windows, Mac OS X, RISC OS,
and probably others. PHP has also support for most of the web servers today. This
includes Apache, Microsoft Internet Information Server, Personal Web Server, Netscape
and iPlanet servers, Oreilly Website Pro server, Caudium, Xitami, OmniHTTPd, and
many others. For the majority of the servers PHP has a module, for the others supporting
the CGI standard, PHP can work as a CGI processor.
So with PHP, you have the freedom of choosing an operating system and a web server.
Furthermore, you also have the choice of using procedural programming or object
oriented programming, or a mixture of them. Although not every standard OOP feature is
implemented in PHP 4, many code libraries and large applications (including the PEAR
library) are written only using OOP code. PHP 5 fixes the OOP related weaknesses of
PHP 4, and introduces a complete object model.

With PHP you are not limited to output HTML. PHP's abilities includes outputting
images, PDF files and even Flash movies (using libswf and Ming) generated on the fly.
You can also output easily any text, such as XHTML and any other XML file. PHP can
autogenerate these files, and save them in the file system, instead of printing it out,
forming a server-side cache for your dynamic content.
One of the strongest and most significant features in PHP is its support for a wide range
of databases. Writing a database-enabled web page is incredibly simple. The following
databases are currently supported:

Adabas D
InterBase
PostgreSQL
dBase
FrontBase
SQLite
Empress
mSQL
Solid
FilePro (read-onl y) Direct MS-SQL
Syba se
Hype rwave
M ySQL
Velocis
IBM DB2
ODBC
Unix dbm
Infor mix
Oracle (OCI7 and OCI8)
Ingres
Ovrimos
We also have a DBX database abstraction extension allowing you to
transparentl y use any database supported by that extension. Additionall y PHP
supports ODBC, the Open Database Connection standard, so you can connect to
any other database supporting this world standard.

PHP also has support for talking to other services using protocols such as LDAP, IMAP,
SNMP, NNTP, POP3, HTTP, COM (on Windows) and countless others. You can also
open raw network sockets and interact using any other protocol. PHP has support for the
WDDX complex data exchange between virtually all Web programming languages.
Talking about interconnection, PHP has support for instantiation of Java objects and
using them transparently as PHP objects. You can also use our CORBA extension to
access remote objects.
PHP has extremely useful text processing features, from the POSIX Extended or Perl
regular expressions to parsing XML documents. For parsing and accessing XML
documents, PHP 4 supports the SAX and DOM standards, and you can also use the XSLT
extension to transform XML documents. PHP 5 standardizes all the XML extensions on
the solid base of libxml2 and extends the feature set adding SimpleXML and XMLReader
support.
While using PHP in the e-commerce field, you'll find the Cybercash payment,
CyberMUT, VeriSign Payflow Pro and MCVE functions useful for your online payment
programs.

At last but not least, we have many other interesting extensions, the mnoGoSearch search
engine functions, the IRC Gateway functions, many compression utilities (gzip, bz2),
calendar conversion, translation...
As you can see this page is not enough to list all the features and benefits PHP can offer.
Read on in the sections about installing PHP, and see the function reference part for
explanation of the extensions mentioned here.
PHP (recursive acronym for "PHP: Hypertext Preprocessor") is a widely-used Open
Source general-purpose scripting language that is especially suited for Web development
and can be embedded into HTML.
Notice how this is different from a script written in other languages like Perl or C -instead of writing a program with lots of commands to output HTML, you write an
HTML script with some embedded code to do something (in this case, output some text).
The PHP code is enclosed in special start and end tags that allow you to jump into and
out of "PHP mode".
What distinguishes PHP from something like client-side JavaScript is that the code is
executed on the server. If you were to have a script similar to the above on your server,
the client would receive the results of running that script, with no way of determining
what the underlying code may be. You can even configure your web server to process all
your HTML files with PHP, and then there's really no way that users can tell what you
have up your sleeve.
The best things in using PHP are that it is extremely simple for a newcomer, but offers
many advanced features for a professional programmer. Don't be afraid reading the long
list of PHP's features. You can jump in, in a short time, and start writing simple scripts in
a few hours.
Although PHP's development is focused on server-side scripting, you can do much more
with it. Read on, and see more in the What can PHP do? section, or go right to the
introductory tutorial if you are only interested in web programming.
What do I need?
In this tutorial we assume that your server has activated support for PHP and that all files
ending in .php are handled by PHP. On most servers, this is the default extension for PHP
files, but ask your server administrator to be sure. If your server supports PHP, then you
do not need to do anything. Just create your .php files, put them in your web directory
and the server will automatically parse them for you. There is no need to compile
anything nor do you need to install any extra tools. Think of these PHP-enabled files as
simple HTML files with a whole new family of magical tags that let you do all sorts of
things. Most web hosts offer PHP support, but if your host does not, consider reading the
PHP Links section for resources on finding PHP enabled web hosts.

Let us say you want to save precious bandwidth and develop locally. In this case, you will
want to install a web server, such as Apache, and of course PHP. You will most likely
want to install a database as well, such as MySQL.
You can either install these individually or choose a simpler way. Our manual has
installation instructions for PHP (assuming you already have some webserver set up). In
case you have problems with installing PHP yourself, we would suggest you ask your
questions on our installation mailing list. If you choose to go on the simpler route, then
locate a pre-configured package for your operating system, which automatically installs
all of these with just a few mouse clicks. It is easy to setup a web server with PHP
support on any operating system, including MacOSX, Linux and Windows. On Linux,
you may find rpmfind and PBone helpful for locating RPMs. You may also want to visit
apt-get to find packages for Debian.
The point of the example is to show the special PHP tag format. In this example we used
<?php to indicate the start of a PHP tag. Then we put the PHP statement and left PHP
mode by adding the closing tag, ?>. You may jump in and out of PHP mode in an HTML
file like this anywhere you want. For more details, read the manual section on the basic
PHP syntax.
A Note on Text Editors: There are many text editors and Integrated Development
Environments (IDEs) that you can use to create, edit and manage PHP files. A partial list
of these tools is maintained at PHP Editors List. If you wish to recommend an editor,
please visit the above page and ask the page maintainer to add the editor to the list.
Having an editor with syntax highlighting can be helpful.
A Note on Word Processors: Word processors such as StarOffice Writer, Microsoft
Word and Abiword are not optimal for editing PHP files. If you wish to use one for this
test script, you must ensure that you save the file as plain text or PHP will not be able to
read and execute the script.
A Note on Windows Notepad: If you are writing your PHP scripts using Windows
Notepad, you will need to ensure that your files are saved with the .php extension.
(Notepad adds a .txt extension to files automatically unless you take one of the following
steps to prevent it.) When you save the file and are prompted to provide a name for the
file, place the filename in quotes (i.e. "hello.php"). Alternatively, you can click on the
'Text Documents' drop-down menu in the 'Save' dialog box and change the setting to "All
Files". You can then enter your filename without quotes.
Now that you have successfully created a working PHP script, it is time to create the most
famous PHP script! Make a call to the phpinfo() function and you will see a lot of useful
information about your system and setup such as available predefined variables, loaded
PHP modules, and configuration settings. Take some time and review this important
information.

Overview of the MySQL Database Management System


M ySQL, the most popular Open Source SQL database manage me nt s ys te m, is
developed, distributed, and supported by M ySQL AB. M ySQL AB is a
comme rcial compan y, founded by the M ySQL developers, that builds its
business by providing services around the M ySQL database ma nagement
s yste m.
The M ySQLWeb site (http://www.mys ql.com/) provides the latest information
about M ySQL software and M ySQL AB. M ySQL is a database manage me nt
s yste m.
A database is a structured collection of data. It ma y be anyt hing from a simple
shopping list to a picture galler y or the vast a mounts of information in a
corporate network. To add, access, and process data stored in a computer
database, you need a database manage me nt s ys te m such as M ySQL Server. Since
computers

are

ver y

good

at

handling

large

a mounts

of

data,

database

manage me nt s ys tems pla y a central role in computing, as stand-alone utilities or


as parts of other applications.
M ySQL is a relational database ma nagement s yste m. A relational database
stores data in separate tables rather than putting all the data in one big
storeroom. This adds speed and flexibilit y. The SQL part of M ySQL stands
for Structured Query Language . SQL is the most common standardized
language used to access databases and is defined by the ANSI/ISO SQL
Standard. The SQL standard has been evolving since 1986 and several versions
exist.
Open Source means that it is possible for anyone to use and modif y the
software. Anybody can download the M ySQL software from the Internet and use
it without pa ying anything. If you wish, you ma y study the source code and
change it to suit your needs.

Why use the MySQL Database Server?


The M ySQL Database Server is ver y fast, reliable, and eas y to use. If that is
what we are looking for, we should give it a tr y. M ySQL Server also has a
practical set of features developed in close cooperation with users.
M ySQL Server was originall y developed to handle large databases much faster
than existing solutions and has been successfull y used in highl y de manding
production environments for several yea rs. Though under constant development,
M ySQL Server toda y offers a rich and useful set of functions. Its connectivit y,
speed, and securit y make M ySQL Server highl y suited for accessing databases
on the Internet.
The technical features of MySQL Server.
The M ySQL Database Software is a client/server s ys te m that consists of a
multi-threaded SQL server that supports different backend, several different
client progra ms and libraries, administrative tools, and a wide range of
application programming interfaces (APIs).
M ySQL Server provides a multi- threaded librar y which you can link into your
application to get a smaller, faster, easier-to-manage product. There is a large
a mount of contributed M ySQL software available. It is ver y likel y that you will
find that your favorite application or language already supports the M ySQL
Database Server.
History of MySQL
We started out with the intention of using mySQL to connect to our tables using
our own fast low-level (ISAM) routines. However, after some testing, we ca me
to the conclusion that mySQL was not fast enough or flexible enough for our
needs. This resulted in a new SQL interface to our database but with al most the

same API interface as mySQL. This API was designed to allow third-part y code
that was written for use with mySQL to be ported easil y for use with M ySQL.
The derivation of the na me M ySQL is not clear. Our base director y and a large
number of our libraries and tools have had the prefix my for well over 10
ye ars. However, co-founder Mont y Wideniuss daughter is also named M y.
Which of the two gave its na me to M ySQL is still a myst er y, even for us.
The na me of the M ySQL Dolphin (logo) is Sakila. Sakila was chosen by the
founders of M ySQL AB from a huge list of na mes suggested by users in our
Name the Dolphin contest. The winning name was submitted by Ambrose
Twebaze, open source software 6 M ySQL Technical Reference for Version
5.0.0-alpha developer from Swaziland, Africa. According to Ambrose, the name
Sakila has its roots in SiSwati, the local language of Swaziland. Sakila is also
the na me of a town in Arusha, Tanzania, near Ambroses countr y of origin,
Uganda.

The Main Features of MySQL


The following list describes some of the i mportant characteristics of the
M ySQL Database Software.
Internals and Portability

Written in C and C++.

Tested with a broad range of different compilers.

Works on ma ny different platforms.

Uses GNU Automake, Autoconf, and Libtool for portabilit y.

APIs for C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl are
available.

Full y multi- threaded using kernel threads. This means it can easil y use
multiple CPUs if the y are available.

Provides transactional and non-transactional storage engines.

Uses ver y fast B-tree disk tables (M yISAM) with index compression.

Relativel y eas y to add another storage engine. This is useful if we want


to add an SQL interface to an in-house database.

A ver y fast thread-based me mor y allocation s ys te m.

Ver y fast joins using an opti mized one-sweep multi-join.

In-me mor y hash tables which are used as te mporar y tables.

SQL functions are imple me nted using a highl y optimized class librar y
and should be as fast as possible. Usuall y there is no me mor y allocation
at all after quer y initialization.

The M ySQL code is tested with Purif y (a commer cial me mor y leakage
detector) as well as with Valgrind, a GPL tool.

The server is available as a separate progra m for use in a client/server


networked environment. It is also available as a librar y that can be
e mbedded (linked) into standalone applications. Such applications can be
used in isolation or in environments where no network is available.

Column Types

Many column t ypes: signed/unsigned integers 1, 2, 3, 4, and 8 byt es


long, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE,
TIME, DATETIME, TIMESTAMP, YEAR, SET, ENUM, and OpenGIS
geometr y t ypes.

Fixed-length and variable-length records.

Commands and Functions

Full operator and function support in the SELECT and WHERE clauses
of queries.
For exa mple: mys ql > SELECT CONCAT (first_name, ' ', last_na me)
-> FROM tbl_name
-> WHERE income/dependents > 10000 AND age > 30;

Full support for SQL GROUP BY and ORDER BY clauses. Support for
group functions (COUNT(), COUNT(DISTINCT ...), AVG(), STD(),
SUM(), MAX(), MIN(), and GROUP_CONCAT()).

Support for LEFT OUTER JOIN and RIGHT OUTER JOIN with both
standard
SQL and ODBC s yntax.

Support for aliases on tables and columns as required by standard SQL.

DELETE, INSERT, REPLACE, and UPDATE return the number of rows


that were changed (affected). It is possible to return the number of rows
matched instead by setting a flag when connecting to the server.

The

M ySQL- specific

information

about

SHOW

databases,

command
tables,

can

and

be

used

indexes.

to

The

retrieve
EXPLAIN

command can be used to determine how the opti mizer resolves a quer y.

Function na mes do not clash with table or column names. The onl y
restriction is that for a function call, no spaces are allowed between the
function name and the ( that follows it.

We can mix tables from different databases in the same quer y

Security

A privilege and password s yste m that is ver y flexible and secure, and
allows

host-based

verification.

Passwords

are

secure

because

all

password traffic is encr ypted when you connect to a server.


Scalability and Limits

Handles large databases. We use M ySQL Server with databases that


contain 50 million records. We also know of users that use M ySQL
Server with 60,000 tables and about 5,000,000,000 rows.

Up to 32 indexes per table are allowed. Each index ma y consist of 1 to


16 columns or parts of columns. The maxi mum index width is 500 byt es
(this ma y be changed when compiling M ySQL Server). An index ma y use
a prefix of a CHAR or VARCHAR column.

Connectivity

Clients ma y connect to the M ySQL server using TCP/IP sockets on any


platform. On Windows s yste ms in the NT fa mil y (NT, 2000, or XP),
clients ma y connect using na med pipes. On UNIX s ys te ms, clients ma y
connect using UNIX domain socket files.

The Connector/ODBC interface provides M ySQL support for client


progra ms that use ODBC (Open-Database-Connectivit y) connections. For
example, you can use MS Access to connect to your M ySQL server.
Clients ma y be run on Windows or UNIX. Connector/ODBC source is
available. All ODBC 2.5 functions are supported, as are many others.

The Connector/JDBC interface provides M ySQL support for Java client


progra ms that use JDBC connections. Clients ma y be run on Windows or
UNIX. Connector/JDBC source is available.

Localization

The server can provide error messages to clients in many languages.

Full support for several different character sets.

All data is saved in the chosen character set. All comparisons for normal
string columns are case-insensitive.

Sorting is done according to the chosen character set.

Clients and Tools

The M ySQL server has built-in support for SQL state ments to check,
opti mize, and repair tables. These state ments are available from the
comma nd line through the mys qlcheck client.

All M ySQL programs can be invoked with the --help or -? options to


obtain
Online assistance.

MySQL Stability
This section addresses the questions How stable is MySQL Server? and Can
I depend on MySQL Server in this project? We will tr y to clarif y these issues
and answer some i mportant questions that concern ma ny potential users. The
infor mation in this section is based on data gathered from the mailing list,
which is ver y active in identif ying problems as well as reporting types of use.
The M ySQL Server design is multi-la ye red with independent modules. Some of
the newer modules are listed here with an indication of how well-tested each of
them is:
Replication Ga mma Large groups of servers using replication are in
production use, with good results.
BDB tables Gamma
The Berkele y DB code is ver y stable, but we are still i mproving the BDB
transactional storage engine interface in M ySQL Server, so it will take some
time before this is as well tested as the other table types.
Full-text searches Beta
Full-text searching works but is not ye t widel y used. I mportant enhancements
have been imple me nted in M ySQL 4.0.
Connector/ODBC 3.51 (uses ODBC SDK 3.51) Stable
In wide production use. Some issues brought up appear to be application related
and independent of the ODBC driver or underl ying database server.
Automatic recover y of M yI SAM tables Ga mma
This status applies onl y to the new code in the M yI SAM storage engine that
checks if the table was closed properl y on open and executes an automatic
check or repair of the table if it wasnt. Pa yi ng customers receive high-qualit y
support directl y from M ySQL AB. M ySQL AB also provides the M ySQL mailing

list as a communit y resource where anyone ma y ask questions. Bugs are usuall y
fixed right awa y with a patch. For serious bugs, there is almost alwa ys a new
release.
How Big MySQL Tables Can Be
M ySQL Version 3.22 had a 4GB (4 gigabyt e) limit on table size. With the
M yISAM storage engine in M ySQL Version 3.23, the maxi mum table size was
increased to 8 million terabytes (2 ^ 63 byt es). With this larger allowed table
size, the maxi mum effective table size for M ySQL databases now normall y is
deter mined by operating s yste m constraints on file sizes, not by M ySQL
internal li mits.
The InnoDB storage engine maintains InnoDB tables within a table space that
can be created from several files. This allows a table to exceed the ma ximum
individual file size. The table space can include raw disk partitions, which
allows extremel y large tables. The maxi mum table space size is 64 TB.

Cost Estimation an Scheduling


Estimating Cost
There are many factors to consider when estimating the total cost of a
project. These include labor, hardware and software purchases or rentals, travel
for meeting or testing purposes, telecommunications (e.g., longdistance phone
calls, video-conferences, dedicated lines for testing, etc.), training courses,
office space, and so on.
Exactl y how you esti mate total project cost will depend on how your
organization allocates costs. Some costs ma y not be allocated to individual
projects and ma y be taken care of by adding an overhead value to labor rates ($
per hour).
Often, a software development project ma nager will onl y estimate the labor
cost and identif y any additional project costs not considered overhead by the
organization. The si mplest labor cost can be obtained by multipl yi ng the

projects effort estimate (in hours) by a general labor rate ($ per hour). A more
accurate labor cost would result from using a specific labor rate for each staff
position (e.g., Technical, QA, Project Management, Documentation, Support,
etc.). You would have to determine what percentage of total project effort
should be allocated to each position. Again, historical data or industr y data
models can help.

Nominal Project Plan For 4 Months


Management Metric
Direct Resources Costing
Indirect Resource Costing
No of Employees
Hosting Plan
Development Plan
Testing Plan
Requirement Analysis
Maintenance

Planning Value
25 %
5%
18.2%
Project Scheduling
5%
30.8%
14%
Starting Date
Ending Date
2%

System Study and Requi rements

Dec13, 2006

Dec27, 2006

Dec28, 2006

Dec30, 2006

Anal ysis
System

Requirement

Specification
High Level Design

Starting Date

Ending Date

Breaking

Jan02, 2007

Jan05, 2007

Protot ype Development

Jan06, 2007

Jan15, 2007

Logical Database Design

Jan16, 2007

Jan23, 2007

Low Level Design

Starting Date

Ending Date

Ph ysical Database Desi gn

Feb04, 2007

Feb07, 2007

into

Sub-Systems

(Modul es)

User

Interface

Design

Desi gn)
Coding

Test

Case

Design

(form

Feb08, 2007

Feb13, 2007

Feb15, 2007

Feb28, 2007

and Starting Date

Ending Date

Debugging
Recovery Testing

Mar01, 2007

Mar02, 2007

Debuggin g of errors

Mar03, 2007

Mar04, 2007

Stress Testing

Mar05, 2007

Mar06, 2007

Debuggin g of errors

Mar07, 2007

Mar08, 2007

Performance Testing

Mar09, 2007

Mar10, 2007

Debuggin g of errors

Mar11, 2007

Mar12, 2007

User Acceptance Testing

Mar13, 2007

Mar15, 2007

Final Outline Of the Proposed System


The proposed system is designed based on the objectives prepared in
the analysis phase of the existing system. The motive of the system is to
distribute the data globally from one location to another with high
security and integrity with business constraints and process which reduces
the cost of implementation in Customer services.
The system enables the customers to submit the complaint online and
receive the response of the complaints with in the stipulated period with
accuracy. The system also enables the CSR to access the complaints based

on the request and it avails the information regarding the customer for
updation and verification. The system automates the process through
which dynamically , thousands of complaints are distributed
simultaneously to hundreds of CSR logged in , with request of the
complaint.
The system also evaluates the process of complaint solving and the
life cycle of the complaint through tracking application. The system
provides Quality Assurance for every request of the customers. The
application evaluates the CSR performance through quality parameters and
ensures the business scale towards Business Process Outsourcing never
declines. The System facilitates the end user with analytical and
graphical reports which forecast and analyse the status of the business.
Intellect Acquaintance Response is dynamic, Secured highly integrated
application software designed with latest technologies to reach the limit
of Business Process Outsourcing.

DESIGN AND DEVELOPMENT PROCESS


Fundamental Design Concepts
A set of fundamental design concepts are evolved over the past three
decades. Although the degree of interest in each concept has varied over
the years, each has stood the test of time. Each provides the software
designer with a foundation from which more sophisticated design methods
can be applied. Fundamental design concepts provide the necessary
framework for getting it right.
Abstraction
Abstraction permits one to concentrate on a problem at some
level of generalization without regard to irrelevant low level details, use
of abstraction also permits one to work with concepts and terms that are
familiar in the problem environment without having to transform them to
an unfamiliar structure. Two types of abstraction are there, one is
procedural abstraction and data abstraction. A procedural abstraction is a
named sequence of instructions that has a specific and limited function. A
data abstraction is a named collection of data that describes a data object.
Modularity
Modularity is the single attribute software that allows a program to be
intellectually manageable. Software architecture embodies modularity,
that is, software is divided into named and addressable components, called
modules that are integrated to satisfy problem requirements.

Softw are Architecture


Software Architecture alludes to the overall structure of the
software and the ways in which that structure provides conceptual
integrity for a system. Control hierarchy also called program structure,
represents the organization of control. The tree structure used to represent
the control hierarchy.
Structural Partitioning
The program structure should be partitioned both horizontally and
vertically. Horizontal partitioning defines separate branches of the
modular hierarchy for each major program function, Vertical partitioning
called factoring, suggest that control and work should be distributes topdown in the program architecture. Top level modules should perform
control functions and do little actual processing work. Modules reside low
in the architecture should be the workers, performing all input,
computational, an output tasks.
Data Structure
Data Structure is a representation of logical relationship among individual
elements of data. Because the structure of information will invariably
affects the final procedural design, data structure is very important as the
program structure to the representation of the software architecture. Data
structure dictates the organization, methods of access, degree of
associatively, and processing alternatives for information. The
organization and complexity of a data structure are limited only by the
ingenuity of the designer. Scalar item array and linked list are some of the
representations of the data structure.

Softw are Procedure


Program structure defines control hierarchy without regard to the
sequence of processing and decisions. Software procedure focuses on the
processing details of each module individually. Procedure must provide a
precise specification of processing, including sequence of events, exact,
decision points, repetitive operations and even data organization /
structure. Information hiding suggests that modules be characterized by
design decisions that hide from all others. In other words, modules
should be specified and designed so that information contained within
module is inaccessible to other module.

Design is defining a model of the new system and continues by converting


this model to a new system. The method is used to convert the model of
the proposed system into computer specification. Data models are
converted to a database and processes and flows to user procedures and
computer programs. Design proposes the new system that meets these
requirements .This new system may be built by a fresh or by changing the
existing system. The detailed design starts with three activities, database
design, user design and program design. Database design uses conceptual
data model to produce a database design. User procedure design uses those
parts of the DFD outside the automation boundary to design user
procedures.

Data Flow Diagram


The data flow diagram (DFD) is one of the most important tools used by
system analysts. Data flow diagrams are made up of a number symbols,
which represent system components. Most data flow modeling methods
use four kinds of symbols. These symbols are used to represent four kinds
of system components. Processes, data stores, data flows and external
entities. Processes are represented by circles in DFD. Data Flow
represented by a thin line in the DFD and each data store has a unique
name and square or rectangle represents external entities.
Unlike detailed flowchart, Data Flow Diagrams do not supply detailed
description of the modules but graphically describes a systems data and
how the data interact with the system.
To construct a Data Flow Diagram, we use,

Arrow
Circles
Open End Box
Squares

An arrow identifies the data flow in motion. It is a pipeline through which


information is flown like the rectangle in the flowchart. A circle stands
for process that converts data into information. An open-ended box
represents a data store, data at rest or a temporary repository of data. A
square defines a source or destination of system data.
Six rules for constructing a Data Flow Diagram

Arrows should not cross each other.


Squares, circles and files must bear names.
Decomposed data flow squares and circles can have same names.

Choose meaningful names for data flow


Draw all data flows around the outside of the diagram.

C O N T E X T A N A L Y SIS D IA G R A M

A d m in is t r a t o r

O BSE

C u s to m e r

CSR

Q A

L e v e l 1 D F D fo r C U S T O M E R
C u s t - L o g in
C o m p - M a s te r

C USTO M ER

L o g in

L O G IN

C o m p l ia n t
s u b m is s i o n &
S o lu t i o n
r e t r ie v a l

I n v a lid
S o lu t io n

L e v e l 2 D F D fo r C U S T O M E R

S o lu t io n

F A Q

FAQ

C u s t - L o g in

S e le c t i o n
P ro c ess
C u s to m e r

L o g in

C o m p -M a s te r

L o g in
P ro c ess

I n v a lid
S o lu t i o n

S o lu t io n s

S o lu t io n

C u s t o m iz e d
C o m p li a n t

c o m p lia n t n u m b e r

L e v e l 1 D F D fo r C S R
C S R L o g in
C o m p -M a s te r
C S R

L o g in

In va lid

L o g in

C o m p la i n t
S o l v in g
S o lu t io n

L e v e l 2 D F D fo r C S R
C u rre n t
C S R - lo g

C o m p -M a s te r

D is t r ib
u t io n
P e n d in g

C S R

L o g in

A c t io n

L o g in

I n v a lid
D is t r i b u t e
to
C SR
C o m p-N o

C u s t_ M a s te r

P e r s o n a l- Q u e u e

S o lu t io
n

E s c a la t io n

S o lu t io n

U n w o r k a b le

L e v e l 3 D F D fo r C S R

C S R - lo g

D is t r ib
u t io n

C o m p -M a s te r

D a te
check

L im it
C heck
C S R

L o g in

L o g in

C u rre n t

A c t io n

P e n d in g

In v a lid

D is t r ib u t e
to
C SR

P r o b le m
S o lu t io n

S o lu t io
n

B r e a k - C a lls

P e r s o n a l In f o

B illin g in f o
U n - W o r k a b le C o m p - N o

C o m p-N o

B illin g

P la n M a s t e r

P e r s o l- Q u e u e
E s c a la t io n

P h o r A /C
C ancel

S u p p re
s s io n

R ange T ab

S o lu t io n
A /C c a n c e l

P ho ne C ancel

P la n D e t a ils

S u p p r e s s io n

P r o m o t io n
C u s t - D e t a ls

L e v e l 1 D F D fo r Q .A
C o m p _ M a s te r

Q A - l o g in

P e r s o n a l- Q u e u e

U n w o r k a b le

Q A - L o g in

L o g in

L o g in
pro c ess

Q A
p ro c ess

I n v a lid
E s c a la t io n

A c c u rac y

V e r if ic a t io n
S o l u t io n

L e v e l 2 D F D fo r Q .A

P e n d in g
A c c u rac y

C u rren t

D is t r i t o
Q A

Q A Log

C u s t_ M a s te r
P e r s o n a l- Q u e u e

C om p_N o

U n w o r k a b le

Q A

L o g in

L o g in
p ro c ess

V e r if i c a t io n
E s c a l a t io n

In v a lid
C o m p -M a s te r

V e r if i c a t io n

A c c u rac y
S o lu t i o n

L e v e l 1 D F D fo r A D M IN IS T R A T O R
X M L F ile s to re
A d m in _ L o g in
R e p o rtin
g

A d m in

L o g in

L o g in
A d m in

In v a lid
A u th o riz
atio n
C S R _ P erso nal

Q A _ P erso nal

Structured Chart
Structure chart is made up of program modules and the
interconnection between them. This program module is represented
by a rectangular box in the structure chart.
Modules at the top level of the structure chart called the modules at
the lower levels. A line between the rectangular boxes represents
the connection between modules. The connection describes data
flow between the called and calling modules.
As well as a DFD, it is also useful to develop a structural
system mode. This structural model shows how a function is
realized by a number of other functions, which it calls. Structure
charts are a graphical way to represent this decomposition
hierarchy. Like DFD, they are dynamic rather than static system
models. They show how one function calls others. They do not show
a static block structure of a function or procedure.
A function is represented on a structure chart as a rectangle.
The hierarchy is displayed by linking rectangles with lines. Inputs
and outputs are indicated with annotated arrows. An arrow entering
a box implies input, leaving a box implies output. Data stores are
shown as rounded rectangles and user inputs as circles.
Rules to be applied
Many systems can be considered as three stages, input,
validation and output.
If data validation is required, function to implement these
should be subordinate to an input function.
The role of function near the top of the structural
hierarchy may be to control and coordinate a set of lower
level hierarchy.
The objective of design process is to have loosely coupled
highly cohesive components.
Each node in the structure chart should have between two
and seven subordinates.

ER Diagram
A conceptual model describes the essential features of system
data. This conceptual model is described by modeling method
known as Entity Relationship analysis. Entity relationship analysis
uses three major abstractions to describe data. These are entitieswhich are distinct things in the enterprise. Relationship-which are
meaningful interactions between the objects and the attributeswhich are properties of entities and relationship

C u s t - id

Pw d

Add

C o m p -N o

T im e

C o -D e s c

C it y
D O B
C u s to m e r

Post

s ta tu s

C o m p lia n t

A /C N o
G e ts
S o lu t io n

C o m p -N o

S o lu t io n
CSR

P r o v id e s

S o lv in
g
CSR

D a te

-ID

Pw d
CSR

V e r if ie s

G r o u p id

-ID

M o n it o r s

P h o n e-n o
G r o u p - id

Phone N o

Q .A
R ig h t s

Q A -ID

pw d

R ig h t s
A d m in n a m e

A d m in

A d m in id

pw d

INPUT DESIGN
Input design is a part of overall s ys te m design. The main objective
during the input designs the input designs is given bellow:
To produce a cost-effective method of input.
To achieve the highest possible level of accurac y
To ensure that the input is acceptable and understood by the user.

INPUT STAGES
The main input stages can be listed below:

Client Module
FAQ Module
QA Module
CSR Module
Reports

INPUT TYPES
It is necessar y to deter mine the various types of inputs can be
categorized as follows:
External inputs, which are prime inputs for the s yste m
Internal inputs, which are user communication with the s ys tem.
Operational, which are computer department s communication to
the s yste m
Interactive, which are inputs entered during a dialogue

INPUT MEDIA
At this stage choice has to be made the input media. To conclusion about
the input me dia consideration has to be given to:
Type of output
Flexibilit y of for mat
Speed
Accurac y
Verification methods
Rejection rates

Ease of correction
Storage and handling require ments
Securit y
Eas y to use
Portabilit y
Keeping in view the above description of the input type s and input
media, it can be said that most of the inputs are of the form of internal and
interactive. As input data is to be the directl y ke yed in by the user, the
ke yboard can be considered to be the most suitable input device .

ERROR AVOIDANCE
As this stage care is to be taken to ensure that input data re mains
accurate for m the stage at which it is recorded up to the stage in which the data
is accepted by the s yste m. This can be achieved onl y by means of careful
control each time the data is handled

ERROR DETECTION
Even though ever y effort is make to avoid the occurrence of errors, still
a s mall proportion of errors are alwa ys likel y to occur, these t ypes of errors can
be discovered by using validation to check the input data.

DATA VALIDATION
Procedures are designed to detect error in data at a lower level of detail.
Data validations have been included in the s ys te m in almost ever y area where
there is a possibilit y for the user to commit errors. The s yste m will not accept
invalid data. Whenever an invalid data is ke yed in, the s yste m i mme diatel y
prompts the s yste m will accept the data onl y if the data is correct. Validations
have been included where necessar y.
The s ys te m is designed to be a user friendl y one. In other words the
s yste m has been designed to communicate effectivel y with the user. The s ys te m
has been designed with pop up menus.

USER INTERFACE DESIGN


It is essential to consult the s ys tem users and discuss their needs while
designing the user interface. The user interface s yste m can be broadl y classified
as:
User initiated interface the user is in charge. Controlling the
computer-initiated interface, the computer selects the next stage in
the interaction.
Computer initiated interfaces
In the computer initiated interfaces the computer guides the progress of
the user/computer dialogue. Infor mation is displa yed and tJhe user response of
the computer takes action or displa y further information.

USER INITIATED INTERFACE


User initiated interface fall into two approximate classes:
Comma nd driven interfaces: in this t ype of interface the user
inputs

commands

or

queries

which

are

interpreted

by

the

computer.
For ms oriented interface: the user calls up an image of the form to
his/her screen and fills in the for m. The forms oriented is chosen
because it is the best choice.

COMPUTER-INITIATED INTERFACE
The following computer-initiated were used:
The menu s ys tem for the user is presented with a list of
alternatives and the user chooses on: of alternatives.
Question answer t ype dialog where the computer asks question
and takes action based on the basis of users repl y.
Right form the start the s yste m is going to be menu driven; the opening
menu displa ys the available options. Choosing one option gives another popup

menu with more option. In this wa y ever y option leads the users to data entr y
where the user can ke y in the data

ERROR MESSAGE DESIGN


The design of the error massages is a i mportant part of the user interface
design. As user is bound to commi t some error or other will design a s yste m
should be design to be helpful by providing the user information regarding the
error he/she has commi tted. This application is able to produce the output at
different modules of different inputs.

PERFORMANCE REQUIREMENT
Perfor mance is measured in terms of report generation weekl y and
monthl y. Requirement specification is pla y important parts in the anal ys is of
the s yste m. Once the require ment specifications are properl y given, it is
possible to design the s yste m, which will fit into the required environment. It
rests largel y in the par of the user of existing s ys te m to give the requirement
specification because the y are the people who finall y use the s yste m.

This is

because the require ments have to be known during the initial stages so that the
s yste m can be designed according to those requirements. It is ver y difficult to
change the s yste m once it has been designed and on the other hand designing a
s yste m, which does not cater to the requirements of the user, is of no use. Stage
as given bellow:

The s ys te m to able to interface with the existing s yste m

The s ys te m is to be accurate

The s ys te m to be better than the existing s yste m

The existing s ys tem is completel y dependent on the staff to perform all


duties.

OUTPUT DEFINITION
The output should be defined in ter ms of the following points:
Type of the output
Content of the output

For mat of the output


Location of the output
Frequenc y of the output
Volume of the output
Sequence of the output
It is not alwa ys desirable to print to displa y data as it is held on a
computer. It should be decided as which for m of the output is the most suitable.

OUTPUT MEDIA
In the next stage it is to be decided that which medium is the most
appropriate for the output. The main consideration when deciding about the
output me dia are:

The suitabilit y or the device to the particular application.


The need for hard copy
The response time required
The location of the users
The software and hardware available
The cost
Keeping in view the above description the project is to have outputs mainl y
coming under the categor y of internal outputs. The main outputs desired
according to the require ment specification are:
The outputs were needed to be generated as a hot copy and as well
as queries to be viewed on the screen .
Keeping in view these outputs
The for mat for the output is taken for m the outputs
Which are currentl y being obtained after manual processing
The standard printer is to be used as output media for hard copies

PROJECT TESTING
Testing is the most i mportant phases in the software development activit y. In
software development life c ycle (SDLC), the main ai m of the testing process in the

qualit y,

the

developed

software

is

tested

against

attaining

the

required

functionalit y and performance.

During the testing process the software is worked with some particular test case and
the output of the test cases are analyzed whether the software is working according to the
expectations or not.
The success of the testing process in determining the error is mostl y depends
upon the test case criteria, for testing any software we need to have a description
of the expected behavior of the s yste m and method of determining whether the
observed behavior confir med to the expected behavior.

LEVEL OF TESTING
Since the error in the software can be injured at any stage. so, we have carr y out
the testing process at different levels during the development. The basic levels of
testing are

Unit Testing

Integration Testing

Syste m Testing

Acceptance Testing.

The Unit Testing is carried out on coding.here different modules are tested against
the specification produced during design for the modules .In case of integration
testing different tested are combined into sub s yste m and tested in case of the
Syste m testing the full software is tested and in the next level of testing the s yste m
is tested with user requirement document prepared.

UNIT TESTING
Unit testing mainly focused first in the smallest and low level modules, proceeding
one at a time. Bottom-up testing was performed on each module. As developing a driver
program, the test modules by developed or used. But for the purpose of testing modules
themselves were used as stubs, to print verification of the actions performed. After the lower

level modules were tested, the modules that the next higher level those make use of the lower
modules were tested
Each module was tested against required functionalit y and test cases were
developed to test boundar y values.
The unit testing has been tested with sample data and adequate corrections
were made as per the user requirement, such that login module was tested with user
id and code and appropriate error messages are provided for errors like data entr y
error, id error,etc.

INTEGRATION TESTING
Integration testing is a s ys tematic technique for constructing the progra m
structure, while at the same ti me conducting tests to uncover error associated with
interfacing. As the s ys te m consists of the number the edges of the two modules.
The software tested under this incremental bottom- up approach.
Bottom- up

approach

integration

strategy

was

i mplemented

with

the

following steps.

Low modules were combined into clusters that perform specific software sub

function

The clusters were tested

TESTING PROCESS
A number of activities must be perfor med for testing software.
Testing start with test plan. Test plan identifies all testing related activities that
need to be performed along with the schedule and guide lines for testing. The plan
also specified the levels of testing that need to be done, by identif yi ng the
different testing units. For each unit specified in the plan first the test cases and
reports are produced. These report are anal yz ed.

TEST PLAN

Test plan is a general document for entire project, which defines the scope,
approach to be taken and the personal responsible for different activities of testing.
The inputs for forming test plan are

Project Plan

Requirements Document Syst e m Design

There are two basic approaches for testing. The y are

Functional Testing

Structural Testing

SYSTEM TESTING
Series of different tests whose primary purpose is to fully exercise the
computer-based system. It also tested to find discrepancies between the system and its
original objective, current specifications.10011

EXECUTION TESTING
This progra m was successfull y loaded and executed. Due to progra mmi ng
there were no execution errors as fall as possible

QUALITY ASSURANCE
Quality assurance defines the objectives of a project and reviews
the overall activities so that error are corrected early in the development process.
LEVELS OF QUALITY ASSURANCE
Qualit y Assurance comes in three main levels na mel y

Testing

Validation

Certification

TESTING

In system testing a common view is to eliminate program errors. This is


extremely difficult and time consuming. Since designers cannot prove 100% accuracy. A
successful test, then, is one that find errors.

VALIDATION
It checks the quality of the software in both simulated and live
environments. In the Simulated approach the developers test the product on their
workplace to make the products meet its requirements. In the Live Environment phase
the product is given to the customer to evaluate the products functionality.
Validation refers to the different set of activities that ensure that
software correctl y i mplements a specific function and the software that
been built is traceable to customer requirements. Verification and
validation can be defined in a wa y like:
Verification
Validation
Software validation is achieved through a series of black-box test that
de monstrate conformit y with requirement. After each validation check a test has
been conducted, one of the two possible condition exists
The function or performance characteristics confor m to specification and
are expected
A deviation from specification is uncovered and a deficienc y list is
created

ALPHA AND BETA TESTING


The alpha testing is conducted at the developer s site by the customer.
the software is used in the natural setting with the developerlooking over the
developer and recording errors and usages proble ms. Alpha test is conducted in
controlled environment
The beta testing is conducted at one or more customer site by the end
user of the software. Unlike software testing the developer is generall y not

present. Therefore

beta

test

is

live

application of

the

software

in

an

environment that cannot be controlled by the developer

VALIDATION CHECK APPLIED IN THE PROJECT


The files entered in the project must onl y have the doc extension
The data entered must have onl y one for mat
One should not make a enter into without checking the password
The qc must enter into the status column onl y accepted or not
accepted
File which are already be registered should not be registered once
again or other ti me
Qc cant enter the file which are not entered by the dc
Qc should enter the file into corresponding filena mes registered by
the dc
Files which are registered and not accepted for the first ti me should
not be registered again but the reentr y of date and status should be
done onl y

CERTIFICATION
Certification is to certify that the program or software package is correct
and confirms to standards. With growing trend towards purchasing ready to use software,
certification has become more important.

System Security
Software integrit y has become increasingl y i mportant in the age of
hackers and firewalls. This attributes measures a s ys te m abilit y to withstand
attacks (both accidental and intentional) to its securit y. Attacks can be ma de on
all three components of software progra m, data, and documents
To measure integrit y, two additional attributes must be defined
o

Thread

Securit y

THREAD
Threat is the probabilit y (which can be derived or estimated from
e mpirical evidence) that an attack of specific t ype occur with in a specific time.

SECURITY
Securit y is the probabilit y (which can be estimated or derived from
e mpirical evidence) that attack on the specific t ype will be repelled.

SECURITY TESTING
Any computer based s yste m that manages sensitive information or causes
action that can improperl y har m(or benefit) individuals is the target for
i mproper or illegal penetration. Penetration spans a board range of activities;
hackers who penetrate s ys te m for sport; disgruntled e mploye e who atte mpt to
penetrate for revenge; dishonest individual who penetrate for illicit personnel
gains
Securit y testing to verif y that protection mechanis m built into a
s yste m will in fact provide proper protection form i mproper penetration. During
s yste m testing, the tester pla ys the role of the individual who desires to
penetrate the s ys te m. Anyt hing goes! The tester ma y attempt to acquire
password through external clerical means; ma y attack the s yste m with custom
software designed to break down any defenses that have been constructed ma y
overwhelm the s yste m thereby denying the service to other; ma y purposel y
cause s yste m errors.

IMPLEMENTATION
I mplementation is used here to mean the process of converting a new or
revised s yste m design into operational one; conversion is one aspect of
i mplementation. the other aspect is post i mple me ntation review and software
and maintenance
There are three type of imple me ntation:

I mplementation of a computer s ys te m
I mplementation of new computer s yste m
I mplementation of a modified application

IMPLEMENTATION OF THE COMPUTER SYSTEM


Its should be replace a manual s yste m the problems encountered are
converting files, training users creating accurate files, and verif yi ng printouts
for integrit y

IMPLEMENTATION OF NEW COMPUTER SYSTEM


Its should be replace an existing one this is usuall y a difficult
conversion. if not properl y planned there can be many proble ms. Some large
computer s yste m have taken even yea rs to convert

IMPLEMENTATION OF A MODIFIED APPLICATION


Its should be replace an existing one using the same computer. This t ype
of conversion is relativit y eas y to handle, provided there are no major changes
to the file

MAINTENANCE
After the system has successfully implemented maintenance activity may require
continuous involvement of the developers. Provision must be made for environmental
changes, which may affect either the computer, or other parts of computer based system:
such activity is normally called maintenance. It includes both the improvement of system
functions and the correction of faults that arise during the operation of a system.
Maintenance activity may require the continuing involvement of a large
proportion of computer department resources. Maintenance works may arise due to two
reasons.
Error that creep up during normal running.

Request for changes by the service providers. As part of the normal


running of the system when errors are found.
This maintenance work will help to ensure that the system works smoothly as
predicted in the open environment. Whenever a maintenance work arises, the work has to
be properly carried out with proper documentation. This is to avoid any form of changes
in the structure of the system.
For ever y maintenance work an a mendment notification is to be issued. This
notification will have the required changes and also authenticated. On receipt of
the amendment notification the amendment log is prepared which records these
courses of action that has been planned to be taken. It also records the
esti mated and the actual completion of each of the activities.

SCOPE FOR FURTHER ENHANCEMENT


The application developed is designed in such a way that any further enhancements can
be done with ease. The system has the capability for easy integration with other systems.
New modules can be added to the existing system with less effort.
Currently, the only way for the training department to know about their efforts on
the training programs conducted is the feedbacks send towards them by the participants
The drawback which persists in this procedure is that the department should blindly
believe on the comments they have received from the participants. An enhanced way to
receive the feedback of the training given, is to conduct an online examination based on
the training program. The training department can later evaluate the results and get a clear
cut idea of their efforts on training programs conducted.
Providing extra facilities can enhance the planning module. One of them is the
provision for communication with the resource managers. Currently while planning the
planning personal checks for the resource availability in a manual way. A well consistent
communication facility can be provided between the system developed and the resources
available. The will help a lot for the planning personals to know weather the resources are
free or not at the time of planning itself. If the venue for a training program is not vacant
the planning personal can then go for another one, which is vacant.
Currently the system do not have any control on the monetary details. The System can be
facilitated to have a control on the monetary details.

Вам также может понравиться