Beruflich Dokumente
Kultur Dokumente
PROJECT TITLE
CRMS
MEMBERS
AAMER QAYYUM KHAN
BBIT (HONS)
IQRA UNIVERSITY,
LAHORE CAMPUS
ADVISOR
PROF: DR. ADNAN
DEDICATION
I dedicate my work to my parents, without whom encouragement nothing
would have been possible. Thank you for your love and support.
Last but not the least I would like to dedicate this work to the Great of asset of
our country “PAKISTAN ARMY” who are the defenders of our borders. I am
feeling extremely proud for dedicating my work to the brave & valiant soldiers of
our beloved country who are holding the motto for the nation that
Acknowledgement
Praise to Allah the most beneficent and the most merciful, gave me the power
of knowledge to overcome this task. I would like to thank my parents and my
Advisor Dr. Adnan for his support, cooperation and his faith in me. I would also
like to thank my colleagues for their support and ideas.
Chapter 1
The need for this system arose in order to overcome the limitations of previously working
software this product would abide by the latest conventions and standards to ensure better
conformity and to compete with existing software’s of its nature.
1. 2 Software Scope
The software will facilitate customer relationship management the current systems is
telephone based CRM system and the customer does not get the required information in a
straightforward manner the purposed system being online would provide the client with
all the information in plain and efficient manner all the billing and supplementary
transactions with the customer will be carry out online.
Customers (client) have much importance in any organization the goal of this software is
to provide the customer with all the required information regarding their valued
investments and to keep the good will of the customers.
This software will be much more efficient compared to telephone based CRM system and
will be mutually beneficial for both company and the customers.
1. 3 Software Perspective
There are many companies that are providing mobile services and this number increases
day by day. In these competitive circumstances, there is a serious concern for these
companies to pay attention towards maintaining strong relationship with its customers.
The relationship with the customers should be strong enough to hold them to the
particular cellular network. The system that is being developed aims to provide support
and services to the customers through a consistent channel, this is how the thought of
developing this system emerged.
This proposed product would be linked to official website of MOBILINK but would be
completely stand alone in its functionality it would be a self contained product and would
only require raw data and some feedback as an input, although there are certain similar
products already in application at certain organization yet it is the first member (1st
version) of its family. The product would be developed according to latest standards and
therefore would hopefully be competitive enough to replace its current counter parts.
HEADING FONT
TYPE: Times New Roman SIZE: 12 BOLD
OVERALL FONT
TYPE: Times New Roman SIZE: 12
SUBHEADING FONT
TYPE: Times New Roman SIZE: 12 BOLD
1. Project Manager.
2. Client Engineers.
3. Client Manager.
4. System Developers.
Chapter 2
1.1 Introduction
The system is basically a Customer Relationship Management System in which the
backend would be in SQL SERVER and the database would be interpreted by SQL
queries. As an on-line system, It will act as an information source about the organization
and will manage the information of customers for them, As it is a CRM system so it
would provide services related to sales and marketing i.e. online payments, billing, query
management system requests for blocking a sim and much more.
What will be the main challenge for you in building the system?
In building a CRM system the main challenge is that of research and learning of new
tools and technologies along with their implementation using methods and techniques as
required by the task. Research is a main challenge as the technologies that are not known
would be required to be learned and the ones that are already known would be researched
further to increase the functionality and effectiveness of the system.
For developing a CRM system for a cellular network and implementing that system in a
real world environment needs comprehensive research in the particular business. One
needs to know the process and policies of the concerned business. The different theories
related to CRM have to be studied and implemented in the system to provide the CRM
services to the customer.
What new ideas and theory will you need to learn to build the system?
In building a CRM system following would have to be learned:
Languages:
Any of .NET framework (ASP, ASP.NET, VB.NET)
Structured Query Language (SQL)
Hyper Text Markup Language (HTML)
Tools:
Microsoft Visaul Studio.Net
SQL SERVER
Microsoft IIS 5
Macromedia Dream weaver 4 or higher
Macromedia Flash 5
Macromedia Swish 2.0
Software:
Microsoft Visual Studio.NET (Enterprise Edition)
SQL SERVER
Microsoft IIS 5
Macromedia Dream weaver 4 or higher
Macromedia Flash MX, Swish 2.0
Microsoft Visio
Adobe Photoshop 7.0
Hardware:
Standard PC with modem (for accessing the internet)
Books and research papers are the main source of references for theories on Customer
Relationship Management. Web sites also prove to be another useful resource for
learning technologies such as ASP.NET and SQL SERVER.
For requirements gathering we interviewed the sales manager for problem relating to
sales, marketing manager for their targeted market, users, and problems in marketing.
People Interviewed:
Sales Manager
Marketing Manager
The system would be developed using the latest technologies and techniques that are in
use nowadays. In programming, Object Orientated Techniques would be used for
increased functionality, reusability and efficiency. For the front end, ASP .NET would be
used to create dynamic web pages using client side and server side scripting technologies.
For the backend, database would be developed in SQL server. A comprehensive research
on learning these technologies needs to be done to deliver a successful system. For the
research, web sites offering tutorials, support centers, how to articles, code samples,
books and related teachers would be helpful.
Interface Design:
This area includes the development of the interface of the system. The contents would be
identified along with their arrangement. This will also incorporate the navigational
system by which the user will navigate through the system. For these tasks storyboarding
would be used and HCI considerations would be looked after.
Database Design:
This development area will include designing of the central database in which all the
necessary data will be stored. In this stage, the data will be identified that is to be stored,
entities, attributes along with their relationships with each other.
Coding:
This is the major development area which includes coding of the system in the stated
languages. All the major functions would be developed and testing side by side. After
development, integration of all the units would be done and tested to see the functionality
after integration.
Brief description of the evaluation and test plan for the proposed project:
Security Test:
This test will ensure that no unauthorized user is able to enter the system as administrator
and make any updation to the system.
Justification of Choice
ASP.Net has been chosen the technology for the development of the CRMS instead of
classic ASP. ASP.Net was preferred over ASP, as the chosen one provides certain
benefits when compared. Firstly ASP is restricted to use only VBScript/JavaScript which
are not complete programming languages to add processing logic to the web page while
ASP.Net offers a variety of programming languages like VB.Net, C#, Jscript.Net for the
development of the system. Moreover it separates the code from html by providing two
file in a web page. One being the html file that has relevant formatting instruction while
the other code behind file that contains the server side code. Then ASP object support
consists of six main objects which are components that make web development dynamic.
The objects are interface based, not object based so are often called components. Object
usage could be extended with COM objects or COM+ (including transactions) that can
interact with ASP objects. It supports default interface COM programming, not multiple
interfaces. COM and COM+ objects tend to need GUI tools that automate their creation.
ASP.Net can also consume COM and COM+ objects and can be used to create objects
that support interfaces and inheritance. Languages can inherit and override methods of
objects created in different languages. These can be built with text editors and GUIs are a
convenience not a necessity. The components could be transformed into SOAP listeners
and proxies with trivial amounts of work by just setting a few attributes. Classic ASP has
Database support via ADO which communicates with ODBC and OLEDB databases.
Most database display is done through record sets and loops. Most database manipulation
requires code coupled to back-end database that may fail if drivers are switched and
needs to be written while ASP.Net supports data access via ADO.net which
communicates with ODBC and OLEDB databases, XML Streams, Binary Streams but is
loosely coupled so differences between database vendors do not affect the programming
model. Moreover database display never involves loops. Templates, grouped controls,
Grids and many other structures eliminate need for loops and flexibility is provided so
programmer can control all interaction between these objects. ASP is a browser neutral
technology but ASP. Net’s validators and built-in components use detection to render
GUIs that behave consistently on a variety of browsers. ASP.net has lots of facilities so
that controls can detects the browser and renders the GUI very differently depending on
what browser requests the page without having to expose this sensing to higher level call.
2.1.1Login:
This is executed when administrator wants to use the services provided by the
website, administrator enters his login and password and if authenticated by the
system the user is allowed to enter the website.
2.1.2Add connection:
This is executed when administrator wants to add connections in the inventory list,
the administrator presses the add connections link on the main page and enters the
serial number the system saves this information in the database and a connection is
added.
2.1.3Add bills:
This is executed when administrator wants to add bills of customers in order to
process their requests to pay bills the administrator presses the add bill link on the
main page system show the customer name and submits the form the user also enters
the customer information. This request goes to the system and if there is no problem
the bill is added.
2.1.15 Logoff:
This is executed when administrator wants to stop using the services provided by the
site. The administrator presses the log off link on the man page and his connection is
blocked from the site he cannot interact with the site any more.
2.2.2 Login
This is executed when user wants to use the services provided by the website so he/she
logs in the system, user enters his login and password and if authenticated by the system
the user is allowed to enter the website.
2.2.5 Query
This is executed, when user wants some information from the system. User writes the
query on the query window and sends it through the website to the CRMS system where
his query is studied and replied later.
2.2.6 Feedback
This is executed when user wants to give some feedback about the system or about its
some feature. The user presses feedback link on the main page he/she enters its feedback
which is send to CRMS centre for further processing and is used to make system more
useful and user friendly
the profile is ok and the number is the same as the customer wants to block then he sends
the request which is processed by the system and if there is no problem his sim is
blocked.
2.2.9 International roaming
This is executed when user wants to switch on his international roaming through internet,
the user presses the international roaming link on the main page he/she views its profile
and sends request which is processed by the system and it there is no problem roaming is
switched on for the particular customer.
2.2.11Change password
This is executed when user wants to change his/her password the user presses the change
password link on the main page the system displays him a form a form the user enters his
password information which if validated, his profile is changed with the new password .
2.2.12 Logout
This is executed when user wants to stop using the services provided by the site. The user
presses the log off link on the man page and his connection is blocked from the site he
cannot interact with the site any more.
Chapter 3
1. 1 Overview of Analysis
The analysis phase holds much importance in the development process of a system as the
outputs of this phase helps in understanding the underlying nature of the system. At this
time the functional and other requirements are gathered that clarifies different features of
the system. Above all, the user requirements are collected. These requirements are
gathered by letting people to fill a questionnaire and by interviewing people related to the
particular business as they are serving the customers and know much about their needs
and problems. The requirements that have been gathered are then examined carefully to
formulate use cases. The development of use cases is a good approach in determining the
user requirements and hence the functionality of the system. UML is used to make the
use cases. The use cases describe what the system has to do and not how it would be
done. Besides, user requirements regarding the interface of the system are collected
which helps in designing of the first prototype that could be evaluated and necessary
amendments could be made to the prototype.
The traditional service solution for the company and other cellular networks has been the
call center where the telephone accounts for the majority of interactions. However, call
centers are not a service model that can best address the customer and enterprise
requirements for several reasons. Call centers are inbound, reactive service environments,
requiring costly agent intervention to resolve every issue. Call centers typically suffer
from a lack of access to relevant information, as agents cannot review past interactions
nor gain access to customer data outside the call center database. Without this
information, agents have little understanding of the customer’s behavior or interactions
with other parts of the enterprise.
Customers want a business relationship with the enterprise that delivers firstly more and
more efficient interactions. They demand communication channel choice and around-the-
clock interactions. In addition, as workloads accelerate, they seek higher productivity
through automated interactions that eliminate the need for human intervention to
complete tasks. Secondly greater information and process access. The Internet has made
the possibility of information access and process participation a reality, and customers
want to take advantage of this transparency to gain insight into what is taking place inside
the enterprise related to them. So the proposed web based system aims to relate the
customers directly to the system, which would prove to be an effective way of solving
their problems as described by them. As the customer would be using the system, so the
system should be very user friendly in which the user finds no difficulty in using the
system effectively to satisfy its needs/solve his/her problems.
The CRM system will also act as an e-commerce web project. The basic aim of the
system is to facilitate the mobile service for the customers to build an everlasting
relationship with its customers. The system would be a part of the official website of the
company so combined these will act as a CRM system as well as a source of information
and marketing for the new users.
As a CRM system, it will facilitate online payments and registration for the purchase of
new connections, on line payments for monthly billings, query management system,
which would allow customers to send their queries about a problem and receive the
solution, knowledge acquisition for market research with feedback forms, pre and post
transactional information, user manuals, online sales, services to acquire the market.
Besides this, there would be special logins for the employees of the company as
administrators of the system with full authority to the system. These people could make
all the necessary changes and updation to the system and database.
1. 2. 4 The Customers/Users
Besides the organization, customers mostly young people (age: 15 to 30) and including
businessmen, government officials etc. Gender could be male/female. The users could be
any one who uses a mobile phone. A large number of users (i.e. approx. 1,000,000)
would be using the system. Most of them would be computer literate who just know how
to operate a computer or at least know to use the Internet. These people are currently
provided support from call centers but with new system, not much time of the user will
be wasted and he/she would be provided with value added services to support them.
The end users of the system being developed are also the people (employees) working in
the organization because the system is directly related to the employees, as they are the
one who would be using it along with the customers. But eventually the system will serve
the customers. As the organization is a mobile service provider so the customers who
have any queries would be using the system.
1. 2. 5 The Environment
The implementation of the new system would result in changing of some of the
environmental factors of the company because the proposed system aims to computerize
most of the operations that are manually done by the company. For instance, the online
sales of new connections will be done through the system (Internet). This will involve in
modification of some of the business processes.
1. 2. 6 Functional Requirements
In order to provide support for the company’s customers, a query management system is
added with the system to incorporate the queries and their solutions to and for the
customers.
The customers want to be a part of the business process that involves them and a web
based CRMS is the best way of involving them from their home to the company (system).
1. 2. 7. 1 Interface Requirements
The system would be used by a large number of users who have different behavior. Some
would have high computer knowledge while others have limited knowledge. Some
people have different perception than others. So the proposed system requires being user
friendly so that any user who logs on to the system could easily navigate through the
system and would find no difficulty in solving his/her problems through the system.
1. 2. 7. 2 Performance Requirements
The system shall be up to the mark when performance is challenged. The system will take
not more than 15 seconds to load in normal circumstances relating to internet speed and
system usage. The response time for any request to the system would be minimum.
1. 2. 7. 3 Quality Requirements
The CRMS needs to up to the quality standards. This means that the system should be
able to complete the tasks that it is designed for with no errors and faults. This requires
extra amount of work during the testing of the system so that all the modules and
functions are thoroughly tested to identify errors and faults and that must be corrected
immediately
1. 2. 7. 4 System/Hardware Requirements
The proposed system requires a standard PC running Windows 95/98/2000/NT operating
system. 75 MHZ Pentium or faster (or compatible). 64 MB RAM (Random Access
Memory), VGA or Higher Resolution Monitor (SVGA Recommended), a 56k modem to
connect to Internet. Besides, high speed Internet connection is required which could
provide high data rate for transporting the information to and from the system. Monitor
resolution would be incorporated after development.
1. 2. 7. 5 Security Requirements
The business requires security of its systems as well as information. So the system
requires security and integrity of the information that is stored by the system. No
unauthorized individual either in the company or out side the company would be able to
use the system to crash it or retrieve any useful information from the system. Only people
who are authorized by the company would be able to use the system according to their
right privileges.
The CRMS is based on the client server model of web applications. The system would be
maintaining an SQL SERVER database at the backend. This would be a central database
which would be maintaining records of all the persistence entities namely customer,
administrator, billings, sales, inventory, queries etc. The diagram shows a high level
architecture of the CRMS. Every operation that has to be done by the system is in form of
a request made to the web server. Every request is of a certain web page that is designed
to perform some operation. The user PC (personal computer) or browser forwards the
request made by the user to the web server. The web server could be thought of as a big
storage space where all the web pages of the application are stored. It locates the pages
and examines the extension as if found; it forwards it to the ASP.Net engine which is
responsible for the execution of the code in the page. The code might request a database
operation which is done by the SQL Server. After completion of all the operations
requested by the user, a web pages is generated dynamically which might contain
confirmation of operation or some other information. The generated pages are presented
to the user. All the operations of the CRMS follow the cycle shown in the figure.
Chapter 4
Actors
Customer
This actor represents an important role in the current system as it is the main user of the
system. There is constraint for operating the system i.e. the user must be registered to the
system. The customer should be a Mobilink customer to use the system. Almost all the
use cases are directly or indirectly initiated by this actor.
Administrator
This actor is the administrator of the system who has the privileges of modifying the data
in the main database of the system (company). The system on the whole could be
configured and modified as the administrator has all the knowledge necessary for those
operations.
Basic Information
Actors: Administrator, Sub administrator and Customer.
Purpose: This use case is executed, when user wants to login.
Cross References: Nil
Feature: To login.
Typical Course of Events
1. The user presses the login link on the main page.
2. The system displays a login form.
3. The user enters his username and password and submits the form.
4. The system validates the user and if validated it gives him access to website.
Alternate Course of Events
4. The data entered for sub admin is invalid. The system prompts the user invalid
username/Password.
Basic Information
Actors: Administrator.
Purpose: This use case is executed, when user wants to create sub administrator.
Cross References: Nil
Feature: To create sub administrator.
Typical Course of Events
1. The user presses the create sub admin link on the main page.
2. The system displays add sub-administrator form.
3. The user enters the sub administrator information and submits the form.
4. The system gives a prompt sub-administrator created and saves the data.
Alternate Course of Events
3. The data entered for sub-administrator is invalid. The system prompts the user to fill
again.
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user adds bill against billing request
of customers.
Cross References: Nil
Feature: To add bills.
Typical Course of Events
1. The user presses the add bills link on the main page.
2. The system displays a form showing person’s name that has send request to pay bill
online.
3. The user enters the billing information about the customer and submits the form.
4. The system saves the information.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user add connections in the items list.
Cross References: Nil
Feature: To add connections.
Typical Course of Events
1. The user presses the add connections link on the main page.
2. The system displays a form showing connection type and serial number.
3. The user enters the serial number and submits the form.
4. The system saves the information and prompts connection added.
Alternate Course of Events
3. The data entered for sub admin is invalid. The system prompts the user to fill again.
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to see the block sim
requests in the items list.
Cross References: Nil
Feature: To block sim.
Typical Course of Events
1. The user presses the block sim request link on the main page.
2. The system displays a form showing number of all unblock connections, customers
username and sim status along with a search text box.
3. The user views the customer profile, his sim status through search or in sequence and
presses the block sim button.
4. The system saves the information and blocks the user sim and reduces the number of
blocked Sims.
Alternate Course of Events
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view customer profile.
Cross References: Nil
Feature: To view customer profile.
Typical Course of Events
1. The user presses the view customer profile link on the main page.
2. The system displays a form showing a search bar.
3. The user searches the customer.
4. Then the system shows selected customer’s profile.
Alternate Course of Events
Nil
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view feedback.
Cross References: Nil
Feature: To view feedback.
Typical Course of Events
1. The user presses the view feedback link on the main page.
2. The system displays a form showing customer’s feedback along with the number of
feed backs pending.
3. The user will view the feedback
4. System will remove the feedback from the list on form.
Alternate Course of Events
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view and process
online payment requests.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view and process
roaming requests.
Cross References: Nil
Feature: To check roaming.
Typical Course of Events
1. The user presses the international roaming link on the main page.
2. The system displays a form showing a customer name along with the number of
roaming requests.
3. The user will view information and then press the commit button
4. System will save the information in the database and will switch on international
roaming for the customer.
Alternate Course of Events
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Administrator and sub-administrator.
Purpose: This use case is executed, when user wants to update his profile.
Cross References: Nil
Feature: To update profile.
Typical Course of Events
1. The user presses the update profile link on the main page.
2. The system displays a form containing user profile without the password field.
3. The user views his profile and presses the update profile button.
4. The system displays a form the user updates the profile and presses the save button.
Basic Information
Actors: Administrator and sub-administrator.
Purpose: This use case is executed, when user wants to change password.
Cross References: Nil
Feature: To change password.
Typical Course of Events
1. The user presses the change password link on the main page.
2. The system displays a form containing with fields old password, new password and
confirm new password.
3. The user enters his password detail and presses submit button.
4. The system saves this information is user’s profile and prompts the user password
changed.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view query.
Cross References: Nil
Feature: To view query.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants to pay his bills online.
Cross References: Nil
Feature: To pay bill.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants some information from
the system.
Cross References: Nil
Feature: To ask query.
Typical Course of Events
1. The user presses the query link on the main page.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants to purchase a new
connection.
Cross References: Nil
Feature: To purchase connection.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user gives some feed back about the
system.
Cross References: Nil
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants to open roaming on his
account.
Cross References: Nil
Feature: To open roaming.
Typical Course of Events
1. The user presses the international roaming link on the main page.
2. The system displays a form containing customer profile and a send request button.
3. The user views his profile and presses the send request button.
4. The system prompts the user request send.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants to block his sim.
Cross References: Nil
Feature: To block sim.
Typical Course of Events
1. The user presses the block connection link on the main page.
2. The system displays a form containing customer profile and his number.
3. The user views his profile and presses the send request button.
4. The system prompts the user your connection has been blocked.
Basic Information
Actors: Customer
Purpose: This use case is executed, when user wants to update his profile.
Cross References: Nil
Feature: To update customer profile.
Typical Course of Events
1. The user presses the update profile link on the main page.
2. The system displays a form containing customer profile without the password field.
3. The user views his profile, updates profile and presses the submit button.
4. The system prompts the user your record has been updated successfully.
Basic Information
Actors: Customer.
Purpose: This use case is executed, when user wants to change password.
Cross References: Nil
Feature: To change password.
Typical Course of Events
1. The user presses the change password link on the main page.
2. The system displays a form containing with fields old password, new password and
confirm new password.
3. The user enters his password detail and presses submit button.
4. The system saves this information is user’s profile and prompts the user password
changed.
Alternate Course of Events
3. If old and new password are not validated than user is prompted to fill again.
4. The data could not be saved in the database due to a run time error. The system will
then perform error handling routines.
Basic Information
Actors: Customer
Purpose: This use case is executed when a new user (customer) wants to operate
the system for the first time, to register new users.
Cross References: Nil
Feature: To register user.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view connections
information.
Cross References: Nil
Feature: To view connections information.
Typical Course of Events
1. The user presses the connections information link on the main page.
2. The system displays a form showing all the connections that are available and that
have been sold.
Alternate Course of Events
2. The data could not be retrieved from the database due to a run time error. The system
will then perform error handling routines.
Basic Information
Actors: Administrator and sub administrator.
Purpose: This use case is executed, when user wants to view payments information.
Cross References: Nil
Feature: To view payments information.
Typical Course of Events
1. The user presses the payments information link on the main page.
2. The system displays a form showing information of all the transactions made i.e. bills
paid or connections sold.
Alternate Course of Events
2. The data could not be retrieved from the database due to a run time error. The system
will then perform error handling routines.
Login
Use case reference UC_ADMIN_CUST_01
Pre-condition 1. User must be connected to internet
2. User must know website URL.
Step Action Software Reaction
#
1. The user presses the login link 2. The system displays a login form.
on the main page.
3. The user enters his username 4. The system validates the user and if
and password and submits the validated it gives him access to
form. website.
4 a. The data entered for sub admin is invalid. The system prompts the user
invalid Username/Password.
Scenario Notes
This used case is executed when user wants to use the services provided by the
website or wants to handle customer’s requests so he/she logs in the system,
user enters his login and password and if authenticated by the system the user is
allowed to enter the website.
Post Conditions
Step Description
#
Log off
Use case reference UC_ADMIN_CUST_02
Pre-condition 1. User must be connected to internet.
2. User must be logged in.
Step Action Software Reaction
#
1. The user presses the log off 2. The system displays a log off form
link on the main page. with the message logged off.
.
Scenario Notes
This used case is executed when user wants to stop using the services provided
by the site or when he/she us done using the system. The user presses the log
off link on the man page and his connection is blocked from the site he cannot
interact with the site any more.
Post Conditions
Step Description
#
1. User cannot access or interact with the website through the last
password.
Create Sub-administrator
Use case reference UC_ADMIN_03
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the get sub- 2. The system displays a sub-
administrator link on the main administrator form with empty fields
page. and a submit button.
3. The user enters the sub 4. The system saves the data in
administrator information and database with status as sub
submits the form. administrator.
3 a. The data entered for sub-administrator is invalid. The system prompts the
user to fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants too create sub-administrator who
can perform all the functions of the administrator except creating sub-
administrator the user presses the create sub-admin link on the main page the
user enters the sub-administrator information and submits the form, the request
is processed by the system and a sub-administrator is created.
Post Conditions
Step Description
#
Add Bills
Use case reference UC_ADMIN_04
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the get add 2. The system displays a form
bills link on the main page. showing person’s name who has send
request to pay bill online and an add
bill button at the bottom.
3. The user enters the 4. The system saves the information.
information about the
customer and presses the add
bill button.
3 a. The data entered for sub admin is invalid. The system prompts the user to
fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to add bills of customers in order to
process their requests to pay bills the user presses the add bill link on the main
page system show the customer name and submits the form the user also enters
the customer information. This request goes to the system and if there is no
problem the bill is added.
Post Conditions
Step Description
#
Add Connections
Use case reference UC_ADMIN_05
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the add 2. The system displays a form
connections link on the main showing connection type and serial
page. number.
3. The user enters the serial 4. The system saves the information.
number and submits the form.
3 a. The data entered for sub admin is invalid. The system prompts the user to
fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to add connections in the inventory
list, the user presses the add connections link on the main page and enters the
serial number the system saves this information in the database and a
connection is added.
Post Conditions
Step Description
#
Block request
Use case reference UC_ADMIN_06
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the block sim 2. The system displays a form
request link on the main page. showing number of all unblock
connections, customers username and
sim status along with a search text
box.
3. The user views the customer 4. The system saves the information
profile, his sim status through and blocks the user sim.
search or in sequence and
presses the block sim button.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to block some ones sim the user
enters the block connections link on the main page the system shows the
unblock connections and sim status the user blocks the connection in sequence
or by searching a specific customer.
Post Conditions
Step Description
#
1. The system reduces the number of blocked sims and removes the record
from the form.
View profile
Use case reference UC_ADMIN_07
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the view 2. The system displays a form
customer profile link on the showing a search bar.
main page.
3. The user searches the customer 4. Then the system shows selected
by using either his user name, customer’s profile.
first name or through his
mobile number.
Scenario Notes
This used case is executed when user wants to view profile of some customer
the user presses the view profile link on the main page the system shows a
search bar to search for certain customer, the system shows the customer
profile.
Post Conditions
Step Description
#
View Feedback
Use case reference UC_ADMIN_08
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the view 2. The system displays a form
feedback link on the main showing customer’s feedback along
page. with the number of feed backs
pending.
3. The user will view the 4. System will remove the feedback
feedback from the list on form.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view feedback of some customer
this system show the feedbacks pending the user views the feedbacks and the
system removes that particular feedback from the list that has been seen by the
administrator.
Post Conditions
3. The user will view customer 4. System will save the information in
profile and press the button, the database and the will remove the
add to online. customer form the list.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view and process on line
payment requests the user presses the online payment request link on the man
page the system shows the number of pending requests the user either views the
customer profiles or presses the add to online link which changes the status to
online request from seen to unseen and the information is stored in database.
Post Conditions
Step Description
#
1. Form now onwards the billing of the customer will be online.
International roaming
Use case reference UC_ADMIN_10
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the 2. The system displays a form
international roaming link on showing a customer name along with
the main page. the number of roaming requests.
3. The user will view information 4. System will save the information in
and then press the commit the database and will switch on
button international roaming for the
customer.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view and process roaming
requests by customers the user presses the international roaming request link on
the main page the system shows the number of pending requests, the user start
viewing the requests and will also switch their international roaming on if there
is no problem with the customer information.
Post Conditions
Step Description
#
1. From now onwards international roaming will be on for the customer.
3. The user views his profile 4 The system displays a form the user
there are two buttons at the updates the profile and presses the
bottom of the form save and save button which is enabled now.
update, save is disabled at the
beginning but update is
enabled so the user first
presses the update profile
button.
3 a. If the customer profile does not match then the customer either updates
his profile or contacts the main office.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to update his profile, the user
presses the update profile link on the main page he/she views its profile and
updates it and submits it which is saved over his/her previous profile.
Post Conditions
Step Description
#
Change password
Use case reference UC_ADMIN_12
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the change 2. The system displays a form
password link on the main containing with fields old password,
page. new password and confirm new
password.
3. The user enters his password 4. The system saves this information
detail and presses submit is user’s profile.
button.
3 a. If old and new password are not validated than user is prompted to fill
again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case us executed when user wants to change his/her password the
user presses the change password link on the main page the system displays
him a form a form the user enters his password information which if
validated, his profile is changed with the new password .
Post Conditions
Step Description
#
1. The system prompts the user password changed.
View Query
Use case reference UC_ADMIN_13
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step Action Software Reaction
#
1. The user presses the view 2. The system displays a form
query link on the main page. showing customer’s query along with
the number of queries pending.
3. The user will view the query. 4. System will remove the query from
the list on form.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view feedback of some customer
this system show the feedbacks pending the user views the feedbacks and the
system removes that particular feedback from the list that has been seen by the
administrator.
Post Conditions
Step Description
#
Pay Bills
Use case reference UC_CUST_14
Pre-condition 1. User must be connected to internet.
2. User must know website URL
3. User must be logged in.
4. User must have pending bills.
5. User already has sent the request to pay online.
Step Action Software Reaction
#
1. The user presses the pay bill 2. The system displays a form
link on the main page. showing billing information and a
card validation panel at the bottom.
3 a. The data entered for validation is invalid. The system prompts the user to
fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to pay his pending bills online.
They user presses the pay bill link on the user main, the system shows him his
pending bills he adds his credit card details the system verifies his card and if
the card is verified his bill is paid online.
Post Conditions
Step Description
#
1. The system displays the prompt bill paid.
2. Next time when customer logs in his pending bills column is empty.
Query
Use case reference UC_CUST_15
Pre-condition 1. User must be connected to internet
2. User must know website URL.
3. User must be longed in.
Step Action Software Reaction
#
1. The user presses the query link 2. The system displays a form
on the main page. containing space for query.
3. The user writes the query and 4. The system checks for validation of
presses the submit button at data and saves the information in the
the bottom of the page. database.
3 a. The data entered for validation is invalid. The system prompts the user to
fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This use case is executed, when user wants some information from the system.
User writes the query on the query window and sends it through the website to
the CRMS system where his query is studied and replied later.
Post Conditions
Step Description
#
1. The system prompts the user query send.
Purchase Connection
Use case reference UC_CUST_16
Pre-condition 1. User must be connected to internet
2. User must know website URL.
3. User must be longed in.
Step Action Software Reaction
#
1. The user presses the purchase 2. The system displays a form
connection link on the main containing the status of connections,
page. with a proceed button at the bottom.
3. The user presses the proceed 4. The system displays the user profile
button. loaded from customer table and his
references. Their is a send request
button at the bottom of the form..
Feed back
Use case reference UC_CUST_17
Pre-condition 1. User must be connected to internet
2. User must know website URL.
3. User must be longed in.
Step Action Software Reaction
#
1. The user presses the feed back 2. The system displays a form
link on the main page. containing a space for feed back.
3. User fills that space and 4. The system checks for validation of
submits it. data and stores the data.
3 a. The data entered for validation is invalid. The system prompts the user to
fill again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This user case is executed when user wants to give some feedback about the
system or about its some feature. The user presses feedback link on the main
page he/she enters its feedback which is send to CRMS centre for further
processing and is used to make system more useful and user friendly.
Post Conditions
Step Description
#
1. They system prompts the user feedback send.
International Roaming
Use case reference UC_CUST_18
Pre-condition 1. User must be connected to internet
2. User must know website URL.
3. User must be longed in.
Step Action Software Reaction
#
1. The user presses the 2. The system displays a form
international roaming link on containing customer profile and a
the main page. send request button.
3. The user views his profile and 4. The system switches on roaming
if there is no problem in it on requested.
he/she presses the send
request button.
3 a. If the customer profile does not match then the customer either updates
his profile or contacts the main office.
Scenario Notes
This used case is executed when user wants to switch on his international
roaming through internet, the user presses the international roaming link on
the main page he/she views its profile and sends request which is processed
by the system and it there is no problem roaming is switched on for the
particular customer.
Post Conditions
Step Description
#
1. The system prompts the user request send.
Block Connection
Use case reference UC_CUST_19
Pre-condition 1. User must be connected to internet
2. User must know website URL.
3. User must be longed in.
Step Action Software Reaction
#
1. The user presses the block 2. The system displays a form
connection link on the main containing customer profile and his
page. number.
3 a. If the customer profile does not match and the number displayed is not the
same as the one he wants to block then the customer either updates his profile
or contacts the main office.
Scenario Notes
This used case is executed when customer wants to block his connection
online, the user presses the block connection link on the main page he/she
views its profile and mobile number and if the profile is ok and the number is
the same as the customer wants to block then he sends the request which is
processed by the system and if there is no problem his sim is blocked.
Post Conditions
Step Description
#
1. The system prompts the user your connection has been blocked.
3 a. If the customer profile does not match then the customer either updates
his profile or contacts the main office.
Scenario Notes
This used case is executed when user wants to update his profile, the customer
presses the update customer profile link on the main page he/she views its
profile and updates it and submits it which is saved over customer’s old
profile.
Post Conditions
Step Description
#
1. The system prompts the user your record has been updated
successfully.
3 a. If the customer profile does not match then the customer either updates
his profile or contacts the main office.
Scenario Notes
This used case is executed when user wants to convert his billing to online
from offline, user presses the request for online payment link on the main page
system shows the customer his/her profile and mobile number if the
information is correct the user submits it this request is processed by the
system and if there is no problem the billing of customer is switched from
offline to online.
Post Conditions
Step Description
#
1. The system prompts the user your billing is online now.
Change password
Use case reference UC_CUST_22
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be logged in.
Step Action Software Reaction
#
1. The user presses the change 2. The system displays a form
password link on the main containing with fields old password,
page. new password and confirm new
password.
3. The user enters his password 4. The system saves this information
detail and presses submit is user’s profile.
button.
3 a. If old and new password are not validated than user is prompted to fill
again.
4 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case us executed when user wants to change his/her password the
user presses the change password link on the main page the system displays
him a form a form the user enters his password information which if validated,
his profile is changed with the new password .
Post Conditions
Step Description
#
1. The system prompts the user password changed.
Register User
Use case reference UC_CUST_23
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
Step Action Software Reaction
#
1. The user presses the register The system displays a registration
user link on the main site. form.
2. The user fills and submits the The system checks for validation of
form to the system. data and prompts the validation
results. If validated, the data is stored
in the database.
1 a. The data entered for validation is invalid. The system prompts the user to
fill again.
2 a. The data could not be saved in the database due to a run time error. The
system will then perform error handling routines.
Scenario Notes
This used case is executed when user want to register him/her self for the first
time the user presses the register user link on the main site, system opens a
form user fills the form and submit if the information has no problem the user is
given his/password and username.
Post Conditions
Step Description
#
The customer is prompted with his user name and password.
2 a. The data could not be retrieved from the database due to a run time error.
The system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view connections information,
the user presses the connections information link on the main page the system
displays complete information about all the connections sold and available in
the inventory list.
Post Conditions
Step# Description
1. The system either displays the connections information or gives the
prompt no connections available or sold.
Payments Information
Use case reference UC_ADMIN_25
Pre-condition 1. User must be connected to internet.
2. User must know website URL.
3. User must be administrator or sub administrator.
4. User must be logged in.
Step# Action Software Reaction
1. The user presses the payments 2. The system displays a form showing
information link on the main information of all the
page. transactions made i.e. bills
paid or connections sold.
2 a. The data could not be retrieved from the database due to a run time error.
The system will then perform error handling routines.
Scenario Notes
This used case is executed when user wants to view payments information, the
user presses the payments information link on the main page the system
displays complete information about all the payments made i.e. bills paid or
connections sold.
Post Conditions
Step# Description
1. The system either displays the payments information or gives the
prompt no payments made.
2. 1 Sequence Diagrams
These diagrams intends to show the interactions between different objects, which exist
within the system. The interactions are shown as messages sent and received between
objects. These messages cater all types of communications for example procedure calls,
events, signals between flows of execution and hardware interrupts. As the system would
be developed using OOSE which is a use case driven approach, so all the diagrams would
be developed in correspondence to the use cases which showed the functionality of the
system and proved to be very helpful in identifying different objects along with their
interactions. These diagrams show the structure of the system and the flow of execution
which results in completion a process.
ADD BILLS
UC_ADMIN_04
ADD CONNECTIONS
UC_ADMIN_05
BLOCK CONNECTION
UC_ADMIN_06
CHECK FEEDBACK
UC_ADMIN_08
CREATE SUB-ADMIN
UC_ADMIN_03
INTERNATIONAL ROAMING
UC_ADMIN_10
LOGIN
UC_ADMIN_CUST_01
LOGOFF
UC_ADMIN_CUST_02
ONLINE BILLING
UC_ADMIN_09
PASSWORDCHANGE
UC_ADMIN_12
UPDATE PROFILE
UC_ADMIN_11
VIEW PROFILE
UC_ADMIN_07
VIEW QUERY
UC_ADMIN_13
FEEDBACK
UC_CUST_17
INTERNATIONAL ROAMING
UC_CUST_18
LOGOFF
UC_ADMIN_CUST_02
ONLINE PAYMENT
UC_CUST_14
CHANGE PASSWORD
UC_CUST_22
PURCHASE CONNECTION
UC_CUST_16
QUERY
UC_CUST_15
RREGISTER USER
UC_CUST_23
BLOCK CONNECTION
UC_CUST_19
CHANGE PASSWORD
UC_CUST_22
EDIT PROFILE
UC_CUST_20
FEEDBACK
UC_CUST_17
INTERNATIONAL ROAMING
UC_CUST_18
LOG OFF
UC_ADMIN_CUST_02
PURCHASE CONNECTIOHN
UC_CUST_16
QUERY
UC_CUST_15
REGISTER USER
UC_CUST_23
ADD BILLS
UC_ADMIN_04
ADD CONNECTIONS
UC_ADMIN_05
BLOCK CONNECTIONS
UC_ADMIN_06
CHANGE PASSWORD
UC_ADMIN_12
CREATE SUB-ADMIN
UC_ADMIN_03
INTERNATIONAL ROAMING
UC_ADMIN_10
LOG IN
UC_ADMIN_CUST_01
LOG OFF
UC_ADMIN_CUST_02
Controller Administrator/Sub-administrator
+logoffrequest()
+logingoff()
GUI
LogoffGUI
+requesttologoff()
+createlogoffGUI()
ONLINE BILLING
UC_ADMIN_09
UPDATE PROFILE
UC_ADMIN_11
CONNECTION INFORMATION
UC_ADMIN_24
VIEW FEEDBACK
UC_ADMIN_08
PAYMENT INFORMATION
UC_ADMIN_25
Database Administrator/Sub-administrator
+searchrequest()
+searching()
GUI
PaymentsinformationGUI
+requesttoviewpaymentinformation()
+createpaymentsinformationGUI()
VIEW PROFILE
UC_ADMIN_07
Database Administrator/Sub-administrator
+searchrequest()
+searching()
CustomerprofileGUI GUI
+createcustomerprofileGUI() +requesttoviewprofile()
+userinformation()
+performvalidation()
VIEW QUERY
UC_ADMIN_13
Chapter 5
Section 1: GUI
1. 1 Interface Design
The interface of the CRMS required much attention during the development of the
system because a large number of users intend to use the system and user friendliness
guarantees the success of the system. The interface is kept simple so that any user with
any background (computer literate/illiterate) can easily complete the anticipated task. The
use of animations is ignored as it might be confusing for some users and also not much
pictures are used because they might take time be loaded on a slow internet speed. A
common approach is used to maintain the consistency through out the system. The
system uses a three frame page. In the upper frame, the company’s banner, in the left
page navigational bar and the lower frame is used to display different pages as requested
through the navigational bar. The interface is developed according to some of the user
requirements and by storyboarding.
The user enters his/her username and password, if the login is succeeded; the customer is
taken to the index page of customers. This page shows the customer all the operations
he/she could do with links to particular pages.
The pages relating to different operations that could be performed by the system also
follow a common format i.e. firstly a heading at the top which describes intend of the
page immediately followed by some description of the task.
As it is quite clear just by looking at the word HCI that it deals with the principles and
techniques that a web designer follows in order to design a structure of a web application
that would ease the use of application for the user. Particularly in web applications where
commonly there are a large number of users, HCI plays a vital role to facilitate a design
effective enough to cater the needs of its users.
Login
Interface No. UI_ADMIN_01
Use case Reference UC_ADMIN_CUST_01
Snapshot
Home
Interface No. UI_ADMIN_02
Use case Reference UC_ADMIN_CUST_01
Snapshot
Add Connection
Interface No. UI_ADMIN_03
Use case Reference UC_ADMIN_05
Snapshot
Add Bill
Interface No. UI_ADMIN_04
Use case Reference UC_ADMIN_04
Snapshot
Add Sub-Administrator
Interface No. UI_ADMIN_05
Use case Reference UC_ADMIN_03
Snapshot
Roaming Requests
Interface No. UI_ADMIN_08
Use case Reference UC_ADMIN_10
Snapshot
View Queries
Interface No. UI_ADMIN_10
Use case Reference UC_ADMIN_13
Snapshot
View Payments
Interface No. UI_ADMIN_15
Use case Reference UC_ADMIN_25
Snapshot
Update Profile
Interface No. UI_ADMIN_12
Use case Reference UC_ADMIN_11
Snapshot
Change Password
Interface No. UI_ADMIN_13
Use case Reference UC_ADMIN_12
Snapshot
Logoff
Interface No. UI_ADMIN_14
Use case Reference UC_ADMIN_CUST_02
Snapshot
Register User
Interface No. UI_CUST_01
Use case Reference UC_CUST_23
Snapshot
Login
Interface No. UI_CUST_02
Use case Reference UC_ADMIN_CUST_01
Snapshot
Home
Interface No. UI_CUST_03
Use case Reference UC_ADMIN_CUST_01
Snapshot
Pay Bill
Interface No. UI_CUST_04
Use case Reference UC_CUST_14
Snapshot
Connection Status
Interface No. UI_CUST_05
Use case Reference UC_CUST_16
Snapshot
Application Form
Interface No. UI_CUST_06
Use case Reference UC_CUST_16
Snapshot
Query
Interface No. UI_CUST_08
Use case Reference UC_CUST_15
Snapshot
Feedback
Interface No. UI_CUST_09
Use case Reference UC_CUST_17
Snapshot
Block Sim
Interface No. UI_CUST_11
Use case Reference UC_CUST_19
Snapshot
International Roaming
Interface No. UI_CUST_12
Use case Reference UC_CUST_18
Snapshot
Update Profile
Interface No. UI_CUST_13
Use case Reference UC_CUST_20
Snapshot
Change Password
Interface No. UI_CUST_14
Use case Reference UC_CUST_22
Snapshot
Logoff
Interface No. UI_CUST_15
Use case Reference UC_ADMIN_CUST_02
Snapshot
Section 2: Mockups
Static text
Form name Text Field
Button
13)Country = Varchar(50)
14)Status = Varchar(50)
Supplementary information 1. Initially the field is empty. It takes the username of
an administrator and it has a length of 50
2. Initially the field is empty. It stores the
administrator password and has a length of 50
3. Initially the field is empty It stores the
administrator first name and it has a length of 50
4. Initially the field is empty. It stores the
administrator last name and it has a length of 50
5. Initially the field is empty. It stores the
administrator nic number in this field and has a
length of 50
6. Initially the field is empty. It stores the
administrator address in this field and has a length
of 50.
7. Initially the field is empty. It stores the
administrator telephone number and it has a length
50.
8. Initially the field is empty. It stores the
administrator mobile number and it has a length
50.
9. Initially the field is empty. It stores the
administrator email and it has a length 50.
10. Initially the field is empty. It stores the
administrator age and it has a length 50.
11. Initially the field is empty. It stores the
administrator sex and it has a length 50.
12. Initially the field is empty. It stores the
administrator state name and it has a length 50.
13. Either he is administrator or sub administrator and
it has a length of 50.
Chapter 6
Section 1: Testing
1.1 Introduction
The importance of software testing and its impact on software cannot be underestimated.
Software testing is a fundamental component of software quality assurance and
represents a review of specification, design and coding. The greater visibility of software
systems and the cost associated with software failure are motivating factors for planning,
through testing. In the process of testing, some routines are performed that intend to find
errors in the system. The detection of errors depends on the designing of test cases. A
good test case aims to find more errors.
The testing phase received two types of inputs (1) a software configuration; (2) a test
configuration. Tests were performed and all outcomes were considered. Test results were
compared with the expected results. When erroneous data is identified error is implied
and debugging begins. The debugging procedure is the most unpredictable element of
the testing procedure. The time span of debugging error correction can not be stated till
the end.
1. 2 Testing Strategy
The process of testing is distributed through out the development process. Test planning
is done and test cases are designed in the design phase. Testing proceeds with the
implementation phase where actual coding is in progress. Different code modules are
written which correspond to different function of CRMS. As each function is coded, their
respective testing routines (unit testing) are performed for identification and correction of
errors. After completing all the function, they are integrated together to work properly as
combined. This is where integration testing takes place. Then finally system testing is
started which involves testing of the software and other system elements. The test cases
are given in appendix P.
1. 3 Evaluation/Testing Methods
1. 3. 1 Unit Testing
Unit testing concentrates verification on the smallest element of the program i.e. the
module. Using the detailed design description important control paths are tested to
identify errors within the bounds of the module. Unit testing is an additional step with the
coding. Once code is written, reviewed and validated for syntax, unit test case design
starts. The information collected during the design phase help in defining efficient test
cases.
During unit testing, the module interface is tested to ensure that information properly
flows into and out of the program unit being tested. The local data structure is considered
to ensure that data stored temporarily maintains its integrity for all stages in an
algorithm’s execution. Boundary conditions (loops) are tested to ensure that the modules
1. 3. 3 System Testing
This type of testing is performed in the end. The CRMS includes the software and other
system elements so some system validation tests are performed. . System testing is a
series of different tests whose main aim is to fully exercise the CRMS. Although each test
has a different role, all work verifies that all system elements have been properly
integrated and form allocated functions.
1. 3. 4 Security Testing
Security was a crucial requirement identified during the analysis phase. CRMS needs
effective mechanism for enforcing of security and prevention of unauthorized access to
the system from the outside world (internet). During security testing, the tester plays the
role of the individual who wants to enter the system. The tester may try to get passwords
through external clerical approaches; may attack the system with customized software,
purposely produce errors and hope to find the key to system entry. If some fault is
identified, it is reported and corrected.
1. 3. 5 Stress Testing
Stress testing executes a system in the demands resources in abnormal quantity,
frequently or volume. This test checks the CRMS under abnormal condition to see that
the system functions properly.
The testing of CRMS resulted in some important findings which were appropriately
incorporated in the system. While testing the source code, errors that were identified were
corrected. Then usability tests were conducted which intend to test the usability
(working) of CRMS.
While testing, one problem that the evaluators identified was concerned with the security
of the CRMS. The evaluators noted that copying the URL of the page and typing it in
another blank window opens the page which abuses the idea of logging in with a user
name and password. The error was reported and a solution was found. For solving this
problem, session variables were used and at the time of log in, these variables are
assigned the information of the logged in user. Every operation in the CRMS requires this
information before proceeding towards completion.
1.5 Conclusion
The process of testing continued through out the implementation phase. Through testing
resulted in the identification and correction of errors which were ignored previously
during development. The testing procedures and results guarantee the quality of the
CRMS. Testing phase was an extra effort which was necessary for providing the
demanded quality corresponding to the requirements.
The test cases prove to be an effective way of identifying error in the system. The test
cases correspond to the use case model developed during the analysis phase of the
development process. The test cases are designed for the operations where the user has to
manually type some information that has to be stored in the database. Some of the
important test cases are given below.
Administrator
Administrator login
Add connection
Add bills
Update profile
Change password
CUSTOMER
Login
Update profile
New user
Change password
REFERENCES
SITES:
1. http://asp.net
2. http://www.aspfree.com
3. http://www.asp-toolkit.com
4. http://www.411asp.net
5. http://www.aspobjects.com
6. http://www.123aspx.com
7. http://msdn.microsoft.com/asp.net
8. http://www.aspnetfaq.com
9. http://www.devasp.net
10. http://www.aspcode.net/default.aspx
11. http://www.aspexperts.com
12. http://www.aniteps.com
13. http://www.crms2day.com
14. http://www.mobilinkgsm.com
15. http://www.uml.org
BOOKS:
1. Developing Web Applications with ASP.NET by Hank
Meyne
2. ASP .NET Kick Start by Stephen Walther
3. ASP.NET Unleashed, Second Edition by Stephen Walther;
Paperback
4. Programming Microsoft ASP.NET by Dino Esposito
5. Programming ASP.NET, 2nd Edition by Jesse Liberty
6. Beginning ASP.NET 1.0 with Visual Basic.NET by Chris
Goode
7. Programming ASP.NET, 2nd Edition by Jesse Liberty, Dan
Hurwitz
8. ASP.NET for Dummies by Bill Hatfield
9. ASP.NET 2.0 Beta Preview by Bill Evjen
10. The Ultimate VB .NET and ASP.NET Code Book by Karl
Moore
11. ASP.NET v. 2.0-The Beta Version (Microsoft Net
Development Series) by Alex Homer
12. Sams Teach Yourself ASP.NET in 21 Days (2nd Edition)
by Chris Payne