The Card Processing System

The Card Processing System is a web based application that takes care of the complete internal Card Processing activities of a Bank (processing and maintenance of cards). It is suitable for the processing of Debit Cards, Credit Cards as well as Smart Cards. It mainly involves the maintenance and processing of card - related information in a Bank. This product caters to all the Credit, Debit and Smart Card based functions of a bank like Registration of Customers for card issue, Opening Card Accounts for the registered customer, Creation of Cards for registered customers, Hot Carding, making the Card ready for Embossing by creation of Card Data file etc. The Card Processing System could interact with an external Card Transaction System, thereby making the Card-related information maintained by the bank, up-to-date. The purpose is to build a Card Processing System which provides complete card processing, to meet the needs of full-fledged Credit card and Debit card based ATM or Point of Sale network.

1.2 PURPOSE:-
1.2.1 Project Goals:-
' if any Transaction occur in the records like purchase of product, Bank Transaction there arises a need to provide authentication process. updating information becomes tedious and time consuming. This may result in inconsistent and redundant data. As data is stored in files or registers, anyone can read it. Everyone should not be allowed to access the confidential data. So, a secure system is needed that safeguards sensitive information. For this we are developing an Credit Card Processing System. Credit Card processing system is a strategy that focuses on building strong authentication and potential customers for creating and maintaining a loyal customer base. Customer this can increases efficiency and improves customer satisfaction.

1.2.2 Project Objectives:-

' Main intense of our organization such as Increase Customer Revenues.
' This system also takes care of tracking of records of the customers transactions.
' It makes the customer easier to get a cash.
' Customers can check process detail with both sides.
' Customer can cancel the process by cell phone if the want
1.3 SCOPE:-
' Our organization always maintain Personalize Relationship withCustomer.

' Main intense of our organization such as Increase Customer Revenues.

' By using this system "Cross Sell" and "Up Sell" Products More Effectively.

' This system should be possible to be Help Staff to Close Deals Faster.

' To customers having Easy and Efficient Authentication.

' By using our system customers could be More Useful Transaction.

' Customer can apply/cancel a card.
' Any Customer can easily trading by using his/her card with limitations of as par our requirement.
' Any higher authority of an organization can see the details about the Customers information's.
' This system also takes care of tracking of records of the customers transactions.
.
1.4 TECHNOLOGY AND LITERATURE REVIEW:-
' Microsoft ASP.Net
What is Microsoft ASP.Net?
Microsoft ASP.Net or simply, .Net, is a term that has stealthily but rapidly moved into software development nomenclature in the last few years. .Net is considered by many to be the next step in the Internet revolution. The .Net concept dates back to 1999 when it was a part of a discussion of Next Generation Windows Services. Before the derivation of .Net, the acronym of choice by Microsoft was DNA ' Distributed internet Architecture. While .Net is immersed in this notion, it has by far surpassed its initial conception. To fully exploit the potential of the Internet and the web-based applications it enables, a robust and easily integrated architecture is required. Microsoft has filled this void with the .Net vision. With successful promotion by Microsoft and widespread acceptance by companies, .Net has the potential to become the standard foundation for building powerful yet flexible Internet-centric applications.

Fig 1.1 .NET ARCHITECTURE
The .Net initiative is based on an entirely new architecture in comparison to previous versions of Microsoft tools. It is intended to elevate the development environment to a new level of sophistication, capability and ease of use. .Net provides Internet users with a way of 'programming the Web,' giving us a platform for the development of interoperable Web applications. In broad terms, then, .Net can be thought of as software that connects information, people, systems and devices.

Definition
According to Microsoft, .Net is a 'revolutionary new platform, built on open Internet protocols and standards, with tools that meld computing and communications in new ways." .Net is billed as a means for 'connecting a world of information, people, systems and devices together to radically improve communication and business performance' regardless of the platform used. A more Practical way of explaining the concepts behind .Net would be:
' It is a new environment for developing and running software applications
' It provides the framework for an Internet-centric industry standard that makes it possible to tie together applications, information and data sources using Web Services.
' It enables software to become platform and device-independent.
' It employs many standard run-time services available to components written in a variety of programming languages
' It has inter-language and inter-machine operability

Value of .NET Technology
' Increased Application Reliability
' Better Performance
' Higher Level of Flexible Security
' Integration and Interoperability
' Decreased Programming Effort
' Increased Developer Productivity
' Easier Deployment
' Easier Administration
' Business Advantages
' Accelerated Life Cycle Development
' Lowered IT Cost
' Integration for Better Service and Lower Costs
' Increased Mobility Support
' Easier Web Development
' Quick Value Obtained

. Net Framework
Now that we are familiar with the major goals of the .NET Framework, let's briefly examine its architecture. As you can see in Figure, the .NET Framework sits on top of the operating system, which can be a few different flavors of Windows, and consists of a number of components.
The most important component of the Framework is something called the CLR. If you are a Java programmer, think of the CLR as the .NET equivalent of the Java Virtual Machine (JVM). If you don't know Java, think of the CLR as the heart and soul of the .NET architecture. At a high level, the CLR activates objects, performs security checks on them, lays them out in memory, executes them, and garbage-collects them. Conceptually, the CLR and the JVM are similar in that they are both runtime infrastructures that abstract the underlying platform differences. However, while the JVM currently supports just the Java language, the CLR supports all languages that can be represented in the Common Intermediate Language (CIL). The JVM executes bytecode, so it could technically support many different languages, too. Unlike Java's bytecode, though, IL is never interpreted.

Fig 1.2 .NET frame Work
Another conceptual difference between the two infrastructures is that Java code runs on multiple platforms with a JVM, whereas .NET code runs only on the Windows platforms with the CLR (at the time of this writing). Microsoft has submitted the Common Language Infrastructure (CLI), which is functional a subset of the CLR, to ECMA, so a third-party vendor could theoretically implement a CLR for a platform other than Windows. In Figure, the layer on top of the CLR is a set of framework base classes. This set of classes is similar to the set of classes in STL, MFC, ATL, or Java. These classes support rudimentary input and output functionality, string manipulation, security management, network communications, thread management, text management, reflection functionality, and collections functionality, as well as other functions.

On top of the framework base classes is a set of classes that extend the base classes to support data management and XML manipulation. The data classes support persistent data management'data that is stored on backend databases. These classes include the Structured Query Language (SQL) classes to let you manipulate persistent data stores through a standard SQL interface. Similar to the SQL classes, the set of classes called ADO.NET allow you to manipulate persistent data. Alongside of the data classes, the .NET Framework supports a number of classes to let you manipulate XML data, perform XML searching, and perform XML translations.

Introduction to C#
Introduction
It is important to interview C# not in isolation but as an integral part of the entire .NET framework. . NET represents not only a revolution in facilities available for general-purpose Windows programming, but it will also be the immediate environment seen by your .NET code (more properly known as managed code) when it runs.

.NET brings about many benefits, including the easy-to-use object model, the garbage collection mechanism for automatically cleaning up resources, and far improved libraries covering areas ranging from Windows GUI support to data access and generating ASP.NET pages. However, for any environment there is clearly going to be a certain mechanism to access the features of that environment. In classic windows this came from the Windows API, which was written in C and therefore most easily accessible from C and C++ code (One reason why VB has never had easy access to the full features of the Windows API). The real benefit of C# is that it has been designed from scratch specifically with the .NET framework in mind. This means that in many cases the syntax and features of the language have been designed in such a way as to make it is particularly easy for you to take advantage of the features offered by .NET.

Advantages of C#
' C# Supports COM (Component Object Model) and DCOM (Distributed Component Object Model) applications.
' C# is fully Object Oriented Programming Language.
' C# supports language interoperability.
' C# prohibits pointers. In C#, objects are manipulated strictly via references. Consequently, the indirection operator (->) has been eliminated from C#. If you want to use pointers, you can do so only within unsafe blocks, where the code is a subset of C++ rather than C#.
' C# uses a different simpler syntax for arrays.
' To reduce bugs, C# eliminates preprocessor macros, though it retains other useful preprocessor commands, including those that enable conditional compilations.
' C# demands that variables be initialized before their reference.

Introduction ADO .Net

What is ADO.NET?

From an architect's perspective ADO.NET represents the abstract design concepts used to build the data access classes within the .NET Framework. These classes will be reviewed later, but it is first important to understand why these classes were created and how they evolved from current data access APIs. There were several main design goals driving ADO.NET:
' Explicit and factored object model. ADO.NET is designed to be a simple to use object model in which the developer has complete control over how to control data source connectivity, command execution, and data manipulation.
' Disconnected data cache model. N-tier programming and XML Web service architecture require that applications can participate in a disconnected, loosely coupled manner. ADO.NET provides a comprehensive caching data model for marshalling data between applications or services and then to optimistically update the original data sources or source.
' Leverage existing ADO knowledge. Although the ADO.NET object model is different from the existing ADO model, the basic constructs are the same. The ADO.NET object model consists of a provider, connection, and command objects. Thus current ADO developers should be able to efficiently migrate to ADO.NET.
From a developer's perspective ADO.NET represents the concrete implementation of classes inside the .NET Framework used for data access. The following section reviews the overall physical architecture and hierarchy of the classes.

Architecture
The ADO.NET architecture can be divided into two logical pieces: command execution and caching. Command execution requires features like connectivity, execution, and reading of results. These features are enabled with .NET data providers. Caching of results is handled by the DataSet.


The provider enables connectivity and command execution to underlying data sources. Note that these data sources do not have to be relational databases. Once a command has been executed the results can be read using a DataReader. A DataReader provides efficient forward-only stream level access to the results. In addition, results can be used to render a DataSet a DataAdapter. This is typically called "filling the DataSet."

The DataSet object represents a disconnected cache of data. This cache is made up of DataTables and DataRelations that represent the results of the command. The DataSet tracks changes to the underlying data in the cache. Changes can be submitted back to the original data source by using the DataAdapter and applicable Insert, Update, or Delete commands. The DataSet also provides a direct XML view of the underlying data in the cache. This XML can be manipulated with XML standards like XPath and XSLT.

Fig 1.3 ADO.Net Architecture

Fig. No 1.4 ADO.NET Architecture

In addition to being filled through a .NET data provider, the Dataset can also be filled with raw XML data simply by loading it from a file or XML Document. Further details about the XML integration within ADO.NET appear later in this document.
The .NET provider objects are provider-specific. The above objects (Connection, Command, DataAdapter, DataReader) are abstract representations that each provider developer could implement. Thus there will be separate Connection, Command, DataReader, and DataAdapter implementations for each data source. This is much different from the existing ADO model in which OLE DB providers integrate into the common ADO connection, Command, and RecordSet objects. This approach was taken in order to let the .NET data provider implementer take full advantage of the underlying features of the data source. This removes several layers of abstraction inherent in the OLE DB provider model, and so improves performance and simplifies the object model.

Client Side Language: Java Script

Java script for Client Side Validation

' Java script was designed to add interactively to HTML pages.

' Java script is a scripting language ' a scripting language is a lightweight programming language.

' A Javascript is lines of executable computer code.

' A Javascripts is usually embedded directly in HTML page.

' Javascript is an interpreted language.

' Everyone can use JavaScript without purchasing a License.

' Javascript is supported by all major browsers, like Netscape and Internet Explorer.

' SQL Server 2005
Introduction to SQL Server
SQL (Structured Query Language) is a standard data access language used to interact with relational databases. Different databases differ in their support of SQL or add additional features, but the core commands used to select, add, and modify data are common. In database product like Microsoft SQL Server, it's possible to use SQL to create fairly sophisticated SQL Scripts for stored procedures and triggers. If we are using SQL server, you can try the SQL Query Analyzer. This program lets you type in SQL statements, run them, and see the retrieved results, allowing you to test your SQL assumptions and try out queries. SQL Server provides database administrators with all the tools required to fine-tune SQL Server installations running production online systems. SQL Server is also capable of operating efficiently on a small, single-user system with minimal administrative overhead.

Complete Administrative Tool Set
SQL Server offers database administrators several tools for managing their systems.
SQL Server Enterprise Manager is a snap-in component for Microsoft Management Console (MMC). SQL Server Enterprise Manager shares a subset of the MMC user interface for Web administration. It presents all SQL Server objects in a hierarchical console tree with an easy-to-use graphical user interface.
SQL Server Agent allows the definition and scheduling of tasks that run on a scheduled or recurring basis. It also supports alerting administrators when certain warning conditions occur, and can even be programmed to take corrective action.
SQL Server Profiler offers administrators a sophisticated tool for monitoring and analyzing network traffic to and from a server running SQL Server. It also profiles server events such as the acquisition of locks. SQL Server Performance Monitor integrates SQL Server counters into the Windows NT Performance Monitor, allowing administrators to monitor and graph the performance of SQL Server with the same tool used to monitor Windows NT Servers.
Index Tuning Wizard analyzes how an SQL statement, or group of statements, uses the existing indexes on a set of tables. The wizard makes recommendations on index changes that would speed up the SQL statements.

Features of SQL Server
The same Microsoft SQL Server 2005 database engines operate on Microsoft Windows NT Workstation, Windows NT Server and Windows NT Server Enterprise Edition. The database engine is a robust server that can manage terabyte databases being accessed by thousands of users. At the same time, when running at its default settings, SQL Server 7.0 has features such as dynamic self-tuning that let it work effectively on laptops and desktops without burdening users with administrative tasks.
' Dynamic Row-level Locking
' Very Large Database (VLDB) Improvements
' Improved Query Optimizer
' Intra-query Parallelism
' Replication Improvements
' Distributed Query
' Full Integrity Protection
' Distributed Transactions
Client/Server Architecture
Microsoft?? SQL Server' is designed to work effectively in a number of environments:
' As a two-tier or multi-tier client/server database system
' As a desktop database system
Client/Server Database Systems

Client/server systems are constructed so that the database can reside on a central computer, known as a server, and be shared among several users. Users access the server through a client or server application:
In a two-tier client/server system, users run an application on their local computer, known as a client that connects over a network to the server running SQL Server. The client application runs both business logic and the code to display output to the user, and is also known as a thick client.
In a multi-tier client/server system, the client application logic is run in two locations:
1. The thin client is run on the user's local computer and is focused on displaying results to the user. Thin clients request functions from the server application, which is itself a multithreaded application capable of working with many concurrent users.

2. The business logic is located in server applications running on a server. The server application is the one that opens connections to the database server and can be running on the same server as the database, or it can connect across the network to a separate server operating as a database server.

Having data stored and managed in a central location offers several advantages:

' Each data item is stored in a central location.
' Eliminates problems with users having to ensure they are all working with the same information.
' Business and security rules can be defined one time on the server and enforced equally among all users.
' This can be done in a database through the use of constraints, stored procedures, and triggers. It can also be done in a server application.
' A relational database server optimizes network traffic by returning only the data an application needs.
' Hardware costs can be minimized. Because the data is not stored on each client, clients do not have to dedicate disk space to storing data. The clients also do not need the processing capacity to manage data locally, and the server does not need to dedicate processing power to displaying data. The server can be configured to optimize the disk I/O capacities needed to retrieve data, and clients can be configured to optimize the formatting and display of data retrieved from the server. The server can be stored in a relatively secure location and equipped with devices such as an Uninterruptible Power Supply (UPS) more economically than fully protecting each client.

2. PROJECT MANAGEMENT
2.1 PROJECT PLANNING AND SCHEDULING :-
2.1.1 Project Development Approach :-

1) Analyzing Current System:
' Going to software store for gathering practical knowledge.
' Observing and analyzing the system, working in the store.
2) Gathering requirements according to the analysis.
3) Designing the objectives, plan, structure of system and system model.
4) Designing of forms in Dot Net.
5) Creating database.
6) Establishing connectivity between system forms and database.
7) Testing to check if application is running successfully.
8) Creating documentation and report.

Software Process Model:-

We are following spiral model for developing our system.
Spiral model combines the advantages of top-down and bottom-up concepts. Hence, we are using this model due to its following reasons:
' Our system needs continuous development. We will describe the characteristics with high priority first and then develop a prototype based on these. This prototype will be tested and desired changes will be made in the new system. This continual and steady approach will minimize the risks or failure associated with the change in the system.

' We will be developing the system in small segments that will make it easier to do cost calculations.

' The client will be involved in the development of each segment and retains control over the direction and implementation of the system.

' The client's knowledge of the project grows as the project grows, so that they can interface effectively with the system.


Fig 2.1 Software Process Model


2.1.2 Project Plan :

Time Line Chart :

Fig 2.2 Project Plan Time Line Chart
Task June ' Aug Aug ' Oct Oct ' Dec Dec ' Feb Feb ' April April
03/07 ' 19/8 20/8 ' 19/10 20/10'9/12 10/12 ' 19/2 20/2 ' 1/4 2/4 ' 20/4
Problem Identification |||||||||||||||||||||
Requirement Analysis |||||||||||||||||||||
System Design |||||||||||||||||||||
Coding ||||||||||||||||||||||| |||||||||||||||||||||||
Testing |||||||||||| |||||||||||||||||||||||
Monitoring |||||||||||||||||||||||

2.1.3 Schedule Representation:-

Proper project team organization is one of the key constraints to project success. If the project has no productive and well-organized team, there's an increased probability that this project will be failed at the very beginning because initially the team is unable to do the project in the right manner. Without right organization of teamwork, people who form the team will fail with performing a number of specific roles and carrying out a variety of group/individual responsibilities.

Name of Internal Guide : Prof. Mohit Patel
Name of Partners : Patel Gunjan M.
: Patel Mihir B.

A Project Team is an organized group of people who are involved in performing shared/individual tasks of the project as well as achieving shared/individual goals and objectives for the purpose of accomplishing the project and producing its results.

Our team organization is Democratic Decentralized. There is no leader in our team. We have divided out work as per the interests. The modules of our project are divided among us as per the interests so that work will be completed effectively. So we have chosen Democratic Decentralized team organization.

2.2 RISK MANAGEMENT :-
Software is a difficult undertaking. Lots of things can go wrong, and frankly, many often do. It's for this reason that being prepared, understanding the risks and taking proactive measures to avoid or manage them is a key element of good software project management. Once the information is established, these are ranked by probability and impact.
An important task in this project is managing the risk which comes across during the development of project.
There are some important techniques in this Risk management:
' Risk identification
' Risk analysis
' Risk planning
2.2.1 Risk Identification :
It is a systematic attempt to specify threats to the project plan. By identifying known and predictable risks, we take first towards avoiding them when possible and controlling them when necessary.
I had considered the following type of risks to identify the risks in proper manner:
Risk Type Description
Project risk It can threaten project plan i.e. if project risk becomes real it is likely that project schedule, personnel and requirement problems can have their impact on a software project.
Technical risk It can threaten the quality and timeliness of the software to be engineered. If it becomes a reality, implementation may become difficult or impossible.
Business risk It can threaten the viability of the software to be built. A business risk often jeopardizes the project.
Table Risk Identification
1. Technical Risk:
This risk is derived from the software and hardware which is used in this project. If after some time these technologies fail against new technology, then this project may be fail.
We have listed out the minimum hardware requirements for the system but as new configurations are available providing better reliability and better performance, the system made in technology with older configurations may not be much in demand.
2. Tools Risk:
Tools which are used for developing this project must be available at client side. If tools are not available at client side then there may be risk of project failure.
For project this risk has very little importance as the tools used in our project are widely popular and easily available.
3. Requirement Risk:
Requirements which are derived from customer must be same. If requirements change after some phase of project development, there may be risk of project failure.

2.2.2 Risk Analysis :

' Risk Projection
Risk projection, also called risk estimation, attempts to rate each risk in two ways- the likelihood that risk is real and consequences of the problems associated with the risk, should it occur. The following are the table shows the artefacts used in the risk projections.
The risk can be estimated using the probability filed, impact category and the component on which it would be affect in project development.
' Risk Refinement
One should always be ready for an unforeseen event that may or may not occur. The strategy that we had used in for the risk refinement is risk management and contingency planning because it assumes that mitigation efforts have failed and that the risk has become a reality.

2.3 ESTIMATION :-

COCOMO model is used in our project.

This is a simple on-line cost model for estimating the number of person-months required to develop software. The model also estimates the development schedule in months and produces an effort and schedule distribution by major phases. This model is based on Barry Boehm's Constructive Cost Model (COCOMO). This is the top-level model, Basic COCOMO, which is applicable to the large majority of software projects.

The model estimates cost using one of three different development modes: organic, semidetached and embedded. Here is a summary of how Boehm describes the modes:

Organic:
In the organic mode, relatively small software teams develop software in a highly familiar, in-house environment. Most people connected with the project have extensive experience in working with related systems within the organization, and have a thorough understanding of how the system under development will contribute to the organizations objectives. Very few organic-mode projects have developed products with more than 50 thousand delivered source instructions (KDSI).

Semidetached:
The semidetached mode of software development represents an intermediate stage between the organic and embedded modes. "Intermediate" may mean either of two things:
1. An intermediate level of project characteristic.
2. A mixture of the organic and embedded mode characteristics.
Embedded:
The major distinguishing factor of an embedded-mode software project is a need to operate within tight constraints. The product must operate within (is embedded in) a strongly coupled complex of hardware, software, regulations, and operational procedures, such as an electronic funds transfer system or an air traffic control system.

2.3.1 Effort Estimation
Effort estimation methods are one of the important tools for project managers in controlling human resources of ongoing or future software projects. The estimations require historical project data including process and product metrics that characterize past projects.
Software cost and effort estimation will never be an exact science. Too many variables human, technical, environment, political can affect the ultimate cost of software and effort applied to develop it. However, software project estimation can be transformed from a black art to a series of systematic steps that provide estimate with acceptable risk. To achieve reliable cost and effort estimates, a number of options arise:
' Software Sizing

Function point sizing
Standard component sizing

' Problem-Based Estimation

LOC and FP data are used in two ways during software project Estimation:-
' As an estimation variable to size each element of the software and
' As baseline matrices collected from past projects and used in conjunction with estimation variables to develop cost and effort projections.

' Schedules

Obtain an early view of staffing requirements and constraints, and demonstrate the impact of changing deadlines, understaffing, and staff loading.

' Quality

Quantify the impact on defect rates of building to deadlines or reducing staff.

' Risk

Fine tune risk levels for all the major types of risk: size, requirements, technology, maintenance, systems integration, and defects.

2.3.2 Cost Analysis

' Today, software is the most expensive element of virtually all computer based system. For complex, custom systems a large cost estimation error can make a huge difference between profit and loss.
' Cost overrun can be disastrous for the developer.
' Software cost and effort estimation will never be an exact science. Too many variables-human, technical, environment, political, can affect the ultimate cost of software and effort applied to develop it. However, software project estimation can be transformed to a series of systematic steps that provides estimates with acceptable risk.
' Man power cost:

For Cost Analysis we will assume the rate of man power=3,000Rs/month
Therefore Total cost for 5 months=3,000*5
=15,000RS/man power.
Therefore Total cost for 4 team members=15,000*4
=60,000Rs

' Resource Rent:

Computers:1,000Rs*4=4,000Rs/month
Internet Connection:500*4=2000Rs/Month
Total cost for 5 months=4,000*5+2,000*5=30,000Rs
Software:visual Studio 2010 and Microsoft SQL server 2008 License version=10,000Rs
Thus Total Cost for Resources=10,000+30,000=40,000Rs
Grand Total=60,000+40,000
=1, 00,000Rs

Effort, Resource, Cost & Project Duration Estimates:
Function/Program Effort(According to commercial standards) Number of Units Total Build Effort (in person days)
Simple Use Cases 6 person days 7 42
Medium Use Cases 8 person days 10 80
Complex Use Cases 12 person days 5 60
TOTAL 182 person days
Table 2.1 Estimation Result


3.0 SYSTEM REQUIREMENT STUDY:-

3.1 USERS CHARECTERISTICS:-
There are different users existing for the use of system. And those are as follows.
Admin
' This module manages the personal and account details for users. Users are separated in different categories and assigned corresponding rights and tasks.
' Rollback privileges of users:
' Adding new Services information.
' Updating Service Information.
' Bank Employee
' Contact the existing or new customers:
' Provide the information about the product through mail/personal meetings:
' Store and update customer contact information:
' Provide the card to the customer as per his/her requirements:
' Periodically send information of new products to the customers:
' The employee will generate id and customer id, Credit Card Creation and Maintenance

' Customer

' Register with the Organization
' Login, Change password and other Profile Information maintain.
' Generate different type of Transaction
' Check and Validate the Card
' Update their profile with their new Information. .

3.2 HARDWARE AND SOFTWARE REQUIREMENT:-
The tools and technologies used in preparing this system are:
' Front-end : Microsoft Asp.net (with c#)
' Back-end : SQL Database
' Environment : Microsoft Visual Studio 2008
' Documentation : Microsoft Office Word 2007
' Presentation : Microsoft Office PowerPoint 2007,
Crystal Report
' VISIO-2003 : Different types of Diagram

Minimum Hardware Requirement:
' Processor : Pentium 4- 1.6 GB
' Hard disk : 160 GB
' Ram : 2 GB
' Microsoft Compatible Mouse
' Microsoft Compatible Keyboard
' Printer
' Visual Display Unit (15' color)
' Credit Card Embedding System

Software Requirement:
' Microsoft Visual Studio 2008
' Microsoft Office 2007
' Windows XP ,7 Operating System

3.3 CONSTRAINTS

Functional Requirements
Functional requirements are the requirements, which are specified by the user. This type of requirement is necessary for the system to work as a user's need. This requirement represents functional behavior of the system.

We have the system that is divided into four modules and each user can have access to the system part based on the role he is playing.
Main Functionality
' Registration for new user:
The administrator enters employee information in the system and also grants permission to make customer account.

' Rollback privileges of users:
The authority to grant and revoke the rights to the user is in the hands of administrator.

' Adding new Product information:
The administrator will enter the product details so that the information related to the product can be available when customers need to buy them.

' Updating Product Information:
Whenever there are some changes in the existing products features or rates, then the administrator can update the details of the product in the database.

' View/Analyze Reports on Periodically basis:
The administrator can request for various marketing, sales and support related reports for analysis purpose. This helps to improve the service from time to time.

Non-Functional Requirements
Non - Functional requirements are the requirements, which are not explicitly stated by the user. This type of requirement enhanced the quality of software. These types of requirements are common and without it, it's difficult to handle the system.

' System will have consistent and friendly user interface:
We have tried to deign the user-interface in such a way that it is very easy for novice and casual users to interact with system. Suppose any user makes mistake, the system will provide an appropriate error message that will guide the user for the further interaction.

' System will be portable:
The system is implemented using visual studio 2008. Therefore it is operating system independent and the client does not require to install any additional hardware or software. Thus system is portable.

' Each module will be integrated with each other:
Data, control and information flow between each and every modules of the system and they communicate with each other and tightly integrated.

' Every history data will be retrievable in the format of printed report or in any other format:(HTML Document, PDF Files, etc.)
The system consists of analysis module that periodically generates reports and dashboards based on historical data which will be in any format specified above that will be useful to the analyst for forecasting and decision making.

Other features :
System will have security feature to avoid any kind of security breach and the data access of the system will be very fast and accurate.

1. Basic knowledge of computer is required by customers.

2. Internet connection must be available with the customer for interacting with the system.

3. Company must have Intranet and internet facilities with networking.

4. Major limitation of the system is that it doesn't work in rural areas where there are less internet and computer services.
5. System users must regularly update and check the system. If not done, then customer complaints can remain unhandled which hinders the growth of the company.

Company has to regularly update item details such as rates of products, new products introduced by the company, etc so that the company and customers doesn't incur losses.

4. SYSTEM ANALYSIS

4.1 STUDY OF CURRENT SYSTEM :-
As mentioned earlier in the problem summary, the company stores every data in the form of files and registers; therefore it is very difficult to maintain data record in the system as all the records are entered in the register or the respective record books. There are chances of the record books or files in which all the data is kept may be torn or wearied out or some other damages which results in the destroyed data. Also a problem occurs if the data file or register is misplaced somewhere else and is not getting at the time of actual requirement of the data stored. It is also difficult to maintain old files and registers which have data of past years which the owner has kept for future references.
Also, it is very time consuming process to write each and every entry in the database register. Also it takes a lot of time if all the entries are repeated. In the system processes such as making different type of reports, sales order, tedious calculations are examples of time consuming process in the system.
Manual written data cannot be changed or edited once written. If there is a mistake and if we try to rub and write it again it makes the register very dirty and untidy, which creates a bad impression of the business.
Also in the system data should be shown to the person according to his position and post in the office, everybody should not be allowed to use all the data. So security is the major aspects of the organization.
After a certain time period if the executive wants to check number of sales during certain period of time, then it becomes very tedious for the executive to check all the respected sales orders and calculate manually. A computerized system having report making facility can do this job easily and also the executive can draw different types of report according to date and month required.
As mentioned earlier, the same information is written in more than one place that creates the problem, when there is a change or deletion in the recorded data. For example if we would like to change the name of the product due to some mistake earlier or due to some other circumstances, first we will have to identify the places where the product are recorded and then are updated this leads to a very time consuming process and if this is not done properly causes high data inconsistency in the later stages.
In general we can summarize the problems arising in the company as follows:
' Difficulty in Maintenance of Records
' Time Consuming
' Editing of Data becomes a tedious job
' Data Insecurity
' Report Generation
' Data Inconsistency

4.2 PROBLEM AND WEAKNESS OF CURRENT SYSTEM :-
Although system spending is increasing by the day, there is some concern regarding the rate at which system deployments are failing. This two-part piece aims to bring out the issues that system vendors are loath to talk about.
' A system deployment can be a major resource guzzler through its entire lifespan. Costs include cost of software, deployment expenses, customization costs, upgrade costs, licensing costs, cost of lost productivity during implementation, cost of educating the user staff, hardware and equipment costs and costs of maintaining an IT staff for running the system.
' Delayed implementation can lead to increased frustrations as budgeted costs go haywire and employee morale and interest goes down. Rarely does a system system start to deliver an ROI within the theoretical time frame arrived at. Delayed ROI and poor gains from a system system in the initial phases can quickly down management enthusiasm
' A system deployment demands exhaustive changes in the company's business methods. The IT department has to be up to the task of managing a system ; the user base has to be convinced and then trained. Also care needs to be taken that the company's business philosophy does not become secondary to the software, the applications have to fit in with the company's business practices as far as possible.

4.3 REQUIREMENTS OF NEW SYSTEM :-

The company is facing problems with the existing system as mentioned in detailed description of the problem. So there is a need for developing a new system. The system revolves around CUSTOMER as the main entity. Hence, the foremost objective of the system is to satisfy the needs of customers.
Following are other related company's objectives:
a) To facilitate improved and fast communication with customer.
b) To maintain consistent customer base.
c) To retain existing customers.
d) Acquiring new clients using Internet technologies. Reduced cost of marketing.
e) Fast and efficient problem solving of customer through complaint and feedback mechanism.
f) Access to customer account history, order information, and customer information at all touch points.
g) To lower communication and servicing expenses.
h) Be able to pursue a strategy of relationship marketing.
i) To cross sell products more effectively.
j) To increase sales as a result of enhanced system that ensures customer satisfaction.
k) To generate organized and proficient analysis of system workflow.

4.4 FEASIBILITY STUDY :-

Technical Feasibility

It refers to the technical resources needed to develop, purchase, install or operate the system.
Technical feasibility tries to answer the following questions to make the software feasible to develop.
' The software or tools necessary for building or running the application are easily available or not?
' The compatibility amongst software exists or not?
' Are developers aware of these technologies?
' What about the alternative of these chosen technologies?
So, we have found the answers of the above questions, as given below:
' Here we have preferred ASP.NET with C# language, for developing the system.
' Along with ASP.Net the facilities of Java Script, Ajax and SQL database are widely accepted because of their platform independent facet.
' All of we are familiar with these .Net technologies.
' All the products are available from the Internet free of cost.
So, project is technically feasible.

Economical Feasibility

It means that the projected benefits of the proposed system outweigh the estimated cost usually considered, which includes ongoing support and maintenance costs, as well as acquisition costs.
To determine these costs the analyst must estimate costs in each of the following areas:
' Hardware and equipment: There are no additional hardware or equipment specifications required in our system. So, no additional hardware cost.
' Software: We are using .NET technology and Crystal Report which are easily available in market.
' Licenses and fees: Licensed version of the software is already available in the company, therefore no need to purchase new licensed copy.
' Intangible benefits: These are the advantages that are difficult to measure in dollars but are important to the company. Following are some of the intangible benefits provided by our system:
o A user friendly system that improves employee job satisfaction.
o A sales tracking system that supplies better information for marketing decisions.
o A new website that enhances the company's image.
Hence, the system is economically feasible.

Schedule Feasibility

It means that a project can be implemented in an acceptable time frame. When accessing schedule feasibility, a system analyst must consider the interaction between time and cost.
We have been asked to complete the project within the working days of the organization having period of 7-8 months approximately. So we will try to complete the project before given deadline. In the Project Planning section we elaborate our ideas to develop the system within the given period.
Hence, it is feasible to develop a system in predetermined time interval.

Operational Feasibility

It means that a proposed system will be used effectively after it has been developed. Proposed system is helpful for the customer. It will allow them to query them to get the appropriate and adequate information and carry out the transactions successfully.
On studying the operational feasibility of the project, the following conclusions could be derived:
' It will provide advantageous and reliable services.
' If it can be installed within suitable environment, system will do operations under environment of limited resources.
Thus, it is operationally feasible to develop the proposed system

4.5 REQUIREMENTS VALIDATION :-


Admin store the product info and rate with the validity days. After the registration customer can generate the inquiry with the marketing users. Marketing user provide the proper guideline or provide the quotation as per the customer requirement.
Sales department user provide the material delivery schedule after the confirmation of the customer order. Customer check the received material and generate the complaint if any problem in the received material.
Support department user provide the services and feedback to the customer
Admin set the privileges as per the requirement.

4.6 FEATURES OF SYSTEM :-

The primary task of a system is to support the sales process and alleviate bottlenecks using automation and clearly defined workflows. The system stores all data about customers and transactions, and allows this information to be reportedeasilyandefficiently.
There are many common features in a system that a company will find very useful in their sales management and their overall relations with their current and prospective customers. These features are:
' Management of sales leads and actual sales
' Help desk for customer inquiries
' dvanced encryption and authentication to prevent hacking and access by unauthorized people.
' Administration and logging for those who should only be allowed to access certain features and to keep unauthorized personnel out of certain files.
Then of course there is the communication factor of system. Customer relations cannot be successful without the use of the telephone. That is why most systems employ telephone and mobile connectivity such as:
' IM integration
' VoIP integration

' E-mail
' Voice recognition features
' Web services

4.7 FUNCTIONS OF SYSTEM: -
4.7.1 USE CASE DIAGRAM :-
A use case is a UML modeling element that describes how a user of the proposed system will interact with the system to perform a discrete unit of work. It describes and signifies a single interaction over time that has meaning for the end user (person, machine or other system), and is required to leave the system in a complete state: either the interaction completed or was rolled back to the initial state.

Fig 4.1 admin activity

Fig 4.2 customer activity

Fig 4.3 customer-admin

fig 4.4 employee activity

Fig 4.5 employee customer

4.8 DATA MODELING:-

4.8.1 CLASS 'DIAGRAM :-

Fig 4.6 Class Diagram

4.8.2 E-R 'DIAGRAM :-

Fig 4.7 E-R Diagram

4.8.3 System Activity Diagram:-

Login

Fig 4.8 Activity of Login

Change Password

Fig 4.9 Activity of Change Password

Forgot Password

Fig 4.10 Activity of Forgot Password

Admin Activity:

' Registration of Item

Fig 4.11 Activity of Registration Item

' Registration Of Employee


Fig 4.12 Activity of Registration of Employee

' View Reports


Fig 4.13 Activity of Reports

' Add/Update Customer Register


Fig 4.14 Activity of Customer Add/Update

' View Transaction

Fig 4.15 Activity of view transation


' Add/Update Transaction Details


Fig 4.16 Activity of Add/Update Transaction Details

4.8.4 DATA DICTIONARY:-

Table : USER MASTER
Referred : USERMST
PK : USER ID
Foreign Key : 1. State Id (reference to state master)
2. City Id (reference to city master)
3. QId (reference to Q master)
4. Bank Id (reference to Bank master)
5. Branch Id (reference to Branch master)
USER MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 User id Int PK
2 User name 1 Varchar 40 Unique
3 Add1 Varchar 40 Not null
4 Add2 Varchar 40 Null
5 Birth date Date Not null
6 State id Int FK
7 City id Int FK
8 Pin code Int Unique
9 Contact no Varchar 15 Not null
10 Email id Varchar 30 Unique
11 Q id Int FK
12 Answer Varchar 50 Not null
13 Image Varchar 200 Null
14 User name 2 Varchar 20 Unique
15 Password Varchar 8 Not null
16 Remarks Varchar 30 Null
17 Status Varchar 30 Null
18 Bank id Int FK
19 Branch id Int FK
20 Amount deposit Float Not null
21 Card no Varchar 16 Not null
22 Proof 1 Varchar 20 Not null
23 Proof 2 Varchar 20 Null

STATE MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 State id Int PK
2 State name Varchar 40 unique

CITY MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 City id Int PK
2 City name Varchar 40 Unique
3 State id Int FK

Q MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Q id Int PK
2 Q data Varchar 40 unique

BANK MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Bank id Int PK
2 Bank name Varchar 20 unique

BRANCH MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Branch id Int PK
2 Branch name Varchar 20 unique
3 Bank id Int FK

CAT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Cat id Int PK
2 Cat name Varchar 20 unique

SUBCAT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Subcat id int PK
2 Subcat name varchar 20 unique
3 Cat id int FK

ITEM MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Item id int PK
2 Item name varchar 20 notnull
3 description varchar 20 null
4 image varchar 200 null
5 unit varchar 40 Not null

SCRIPT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Script id int PK
2 Script name varchar 20 Unique

TRANSATION MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 T id int PK
2 T date date Not null
3 User id int FK
4 Script id int FK
5 Quantity Float Not null
6 rate float Not null
7 amount float Not null
8 confirmation varchar 40 Null

SHOPPING MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Shoping id int PK
2 Shoping date date Not null
3 User id int FK
4 G amount float Not null

SHOPPING TRANSATION MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 sr no int Not null
2 Shoping id int FK
3 Item id int FK
4 Quantity Float Not null
5 rate Float Not null
6 Amount Float Not null

4.9 FUNCTIONAL AND BEHAVIORAL MODELING :

4.9.1 Data Flow Diagram:-


'

'

'

Fig 4.17 DFD Diagram

4.9.2 Control Flow Diagram :


Fig 4.18 Control Flow Diagram

4.10 MAIN MODULES OF NEW SYSTEM :-

System Modules:

1. Creation of new card: In this module, the customer gives there information to via registration to employee. The information is all about there contact details. They can create their own login and password for their future use of the card.

2. Login: In Login Form module presents site visitors with a form with username and password fields. If the user enters a valid username/password combination they will be granted access to additional resources on website. Which additional resources they will have access to can be configured separately.

3. Security information: In Security information module it will get the information detail and its store's in database. If the card lost then the Security information module arises. It contain informational privacy and informational self-determination are addressed squarely by the invention affording persons and entities a trusted means to user, secure, search, process, and exchange personal and/or confidential information.

4.Transaction: there are two transactions are available in our system such as 1.physical 2.Virtual card .The method and apparatus for pre-authorizing transactions includes providing a communications device to a vendor and a credit card owner. The credit card owner initiates a credit card transaction by communicating to a credit card number, and storing therein, a distinguishing piece of information that characterizes a specific transaction to be made by an authorized user of the credit card at a later time.

5. Verification: Verification information is provided with respect to a transaction between an initiating party and a verification-seeking party, the verification information being given by a third, verifying party, based on confidential information in the possession of the initiating party. In verification the process will seeks card number and if the card number is correct the relevant process will be executed. If the number is wrong, mail or messages will be sent to the user saying the card no has been block and he can't do the further transaction. those information's will be check by using barcode scanner.
User Modules :-
' Admin
' This module manages the personal and account details for users. Users are separated in different categories and assigned corresponding rights and tasks.
' Rollback privileges of users:
' Adding new Services information.
' Updating Service Information.
' Bank Employee
' Contact the existing or new customers:
' Provide the information about the product through mail/personal meetings:
' Store and update customer contact information:
' Provide the card to the customer as per his/her requirements:
' Periodically send information of new products to the customers:
' The employee will generate id and customer id, Credit Card Creation and Maintenance

' Customer

' Register with the Organization
' Login, Change password and other Profile Information maintain.
' Generate different type of Transaction
' Check and Validate the Card
' Update their profile with their new Information.

' Trading

' Generate Transaction with any Shopping Cart, Bank Withdrawal or Trading.
' Maintain Information of Transaction:
' The details of the location and Authentication maintain. Provide Basic Information of User and their card.

' PayPal :
Make Payment after confirmation of Credit Card Authentication.

' Communication
Generate Report and communicate with customer as well as with Admin and Employee of the organization.

' Messages :
Set Message Functionality after the confirmation of Trading.

4.11 SELECTION OF HARDWARE AND SOFTWARE JUSTIFICATION :-

The tools and technologies used in preparing this system are:
' Front-end : Microsoft Asp.net (with c#)
' Back-end : SQL Database
' Environment : Microsoft Visual Studio 2008
' Documentation : Microsoft Office Word 2007
' Presentation : Microsoft Office PowerPoint 2007,
Crystal Report
' VISIO-2003 : Different types of Diagram

Minimum Hardware Requirement:
' Processor : Pentium 4- 1.6 GB
' Hard disk : 160 GB
' Ram : 2 GB
' Microsoft Compatible Mouse
' Microsoft Compatible Keyboard
' Printer
' Visual Display Unit (15' color)
' Credit Card Embedding System

Software Requirement:
' Microsoft Visual Studio 2008
' Microsoft Office 2007
' Windows XP ,7 Operating System

5.1 Database Design
5.1.1 Mapping Of Class Diagrams into Tables
Design Approach
All Software design methods share the same goal - to transform a set of data processing requirements into a computer program. The major objectives of the software design process are to document in sufficient detail the software design based on the software requirements and traceability to specifications. The output is complete, consistent, correct, testable and understandable information that can be used as input for code generation. The Functional Specifications and the system specifications are used as inputs for this process. The process ends when all the objectives of the software requirement document are met.
System Design
System Design is an important phase in which quality is fostered in software development design is the process that actually transforms the requirements in to a finished software product (or) system.
Design is the process of translating the requirement prepared during system study into design. The system design phase employs a variety of tools such as class diagram and so on.
System design is primarily a synthesis function. In designing a new system one must have a clear picture of what is required and what must be done in order to achieve the requirement. Web pages are designed in such a way that it should be easily understandable for a layman.
Output Design
The output is the most important direct source of information to the user. Intelligent output Design will improve the systems relationship with the user and also helps in decision making, once the output requirement are determined, the system designer can decide, what to include in the system and how to structure it, so that the required output can be produced. Hence the output requirements are to be determined before going to actual system design.

Output design is based on the following factors.
' Layout for the presentation of outputs.
' A simple and neat format is preferred rather than complex form of output.
Input Design
Input Design is a part of overall system design which requires very care attention. If an error occurs in the input data then the result of that error may lead to unwanted problems. Errors committed by users can be controlled by a proper input design. Normally the data will be keyed into the system through the standard input device like keyboard. In such case, a validation program should be there to check the validity of the data.
Database Design
Database design is the most critical part of the design phase. An elegantly designed, well-defined database can play as a strong foundation for the whole system. Database design transforms the information domain model created during the analysis into the data structures that will be required to implement the software system.
Conceptual Level
Conceptual level describes the major data objects and relationship between them. This level uses symbols from a modeling method called Entity Relationship Analysis.
Entity Relationship Analysis uses three major abstractions to describe data. They are as follows,
' Entities: Distinct objects of the system an entity is a conceptual representation of an object.
' Attributes : Properties of the entities.
' Relationship: Meaningful interaction between entities. Relationship between entities makes up the database structure.
Three types of relationship exist among entities. They are,
One-to-One : Association between two entities.
One-to-Many: Association between one entity with two or more entities.
Many-to-One: Association between two or more entities in both directions.
Detailed design
The database used here is designed using Sql Express. It is selected as it supports the ASP.NET completely. It has very advanced security features which very essential while storing the data.
Normalization
First Normal form
The tables are in 1NF if every value of the table, every tuple contains exactly one value for each attribute.
By the definition above all the tables are in 1NF as each and every attribute contains only one value

Second Normal form
The tables are in 2NF if every non key attribute is irreducibly dependent on the primary key.
By the definition above all the tables in the database are in 2NF. All the other attributes other than the primary key are not dependent on each other except on the primary key.

Third Normal form
The tables are in 3NF if and only if it is in 2NF and every non key attribute is non transitively dependent on the primary key. It means there are no mutual dependencies between the attributes.
By the definition above all the tables are in 3NF. There is no dependency between the attributes if one is to be changed it is not necessary to change the value of the other attribute and there is primary key in the table on which the attributes depend.

Forth Normal form
When Attributes in a relation have multi valued dependency, further normalization to 4NF is required.
It means in 4NF a attribute has no more than one independent multi valued dependency or one independent multi valued dependency with functional dependency.

5.1.2 Tables and Relationships :

Table : USER MASTER
Referred : USERMST
PK : USER ID
Foreign Key : 1. State Id (reference to state master)
2. City Id (reference to city master)
3. QId (reference to Q master)
4. Bank Id (reference to Bank master)
5. Branch Id (reference to Branch master)
Objective: This table is used to store details of the user.

USER MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 User id Int PK User id
2 User name 1 Varchar 40 Unique User name 1
3 Add1 Varchar 40 Not null Address 1
4 Add2 Varchar 40 Null Adress 2
5 Birth date Date Not null Birth date
6 State id Int FK State id
7 City id Int FK City id
8 Pin code Int Unique Pin code
9 Contact no Varchar 15 Not null Contact no
10 Email id Varchar 30 Unique Email id
11 Q id Int FK Quatation id
12 Answer Varchar 50 Not null Answer
13 Image Varchar 200 Null Image
14 User name 2 Varchar 20 Unique User name 2
15 Password Varchar 8 Not null Password
16 Remarks Varchar 30 Null Remarks
17 Status Varchar 30 Null Status
18 Bank id Int FK Bank id
19 Branch id Int FK Branch id
20 Amount deposit Float Not null Amount deposit
21 Card no Varchar 16 Not null Card no
22 Proof 1 Varchar 20 Not null Proof 1
23 Proof 2 Varchar 20 Null Proof 2

Table : STATE MASTER
Referred : STATEMST
PK : STATE ID
Objective: This table is used to store details of the state.

STATE MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 State id Int PK State id
2 State name Varchar 40 unique State name

Table : CITY MASTER
Referred : CITYMST
PK : CITY ID
Foreign Key : 1. State Id (reference to state master)
Objective: This table is used to store details of the city.

CITY MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 City id Int PK City id
2 City name Varchar 40 Unique City name
3 State id Int FK State id

Table : QUATATION MASTER
Referred : QMST
PK : Q ID
Objective: This table is used to store details of the quatation.
Q MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Q id Int PK Quatation id
2 Q data Varchar 40 unique Quatation data

Table : BANK MASTER
Referred : BANKMST
PK : BANK ID
Objective: This table is used to store details of the bank.

BANK MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Bank id Int PK Bank id
2 Bank name Varchar 20 unique Bank name

Table : BRANCH MASTER
Referred : BRANCHMST
PK : BRANCH ID
Foreign Key : 1. Bank Id (reference to Bank master)

Objective: This table is used to store details of the branch.

BRANCH MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Branch id Int PK Branch id
2 Branch name Varchar 20 unique Branch name
3 Bank id Int FK Bank id

Table : CATEGORY MASTER
Referred :CATMST
PK : CAT ID
Objective: This table is used to store details of the category.

CAT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Cat id Int PK Category id
2 Cat name Varchar 20 unique Category name

Table : SUBCATEGORY MASTER
Referred : SUBCATMST
PK : SUBCAT ID
Foreign Key : 1. Cat Id (reference to cat master)
Objective: This table is used to store details of the sub category.

SUBCAT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Subcat id int PK Subcategory id
2 Subcat name varchar 20 unique Subcategory name
3 Cat id int FK Category id

Table : ITEM MASTER
Referred : ITEMMST
PK : ITEM ID
Objective: This table is used to store details of the item.

ITEM MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Item id int PK Item id
2 Item name varchar 20 notnull Item name
3 Description varchar 20 null Description
4 image varchar 200 null image
5 unit varchar 40 Not null unit

Table : SCRIPT MASTER
Referred :SCRIPTMST
PK : SCRIPT ID
Objective: This table is used to store details of the user script.

SCRIPT MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Script id int PK Script id
2 Script name varchar 20 Unique Script name

Table : TRANSATION MASTER
Referred : TRANSATIONMST
PK : T ID
Foreign Key : 1.User Id (reference to user master)
2. Script Id (reference to script master)

Objective: This table is used to store details of the transation of the user.

TRANSATION MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 T id int PK Transation id
2 T date date Not null Transatiopn date
3 User id int FK User id
4 Script id int FK Script id
5 Quantity Float Not null Quantity
6 rate float Not null Rate
7 amount float Not null Amount
8 confirmation varchar 40 Null confirmation

Table : SHOPPING MASTER
Referred : SHOPPINGMST
PK : SHOPPING ID
Foreign Key : 1. User Id (reference to user master)

Objective: This table is used to store details of the shopping done by the user.

SHOPPING MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 Shoping id int PK Shoping id
2 Shoping date date Not null Shoping date
3 User id int FK User id
4 G amount float Not null G amount

Table : SHOPPINGTRANSATION MASTER
Referred : SHOPPINGTRANSATIONMST
Foreign Key : 1. Shopping Id (reference to shopping master)
2. Item Id (reference to item master)
Objective: This table is used to store details of the shopping transation.

SHOPPING TRANSATION MASTER :

SR NO FIELD NAME TYPE SIZE CONSTRAINT DESCRIPTION
1 sr no int Not null sr no
2 Shoping id int FK Shoping id
3 Item id int FK Item id
4 Quantity Float Not null Quantity
5 rate Float Not null rate
6 Amount Float Not null Amount

5.2 SYSTEM PROCEDURAL DESIGN :-
5.2.1 Designing Pseudo code :

Admin_login
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
public partial class admin_login : System.Web.UI.Page
{
BLL bobj = new BLL();
Region reobj = new Region();
int result = 0;
protected void Page_Load(object sender, EventArgs e)
{
protected void TextBox2_TextChanged(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{

if (!Page.IsValid)
return;

reobj.adusername = txtusername.Text.Trim();
reobj.adupassword = txtpassword.Text.Trim();

SqlParameter adusername = new SqlParameter("@Admin_username", reobj.adusername);
SqlParameter adupassword = new SqlParameter("@Admin_password", reobj.adupassword);

SqlParameter[] dbdata = new SqlParameter[2] { adusername, adupassword };
try
{
result = bobj.InsertDataTable("Admin_insert", dbdata);
if (result > 0)
{

Label1.Visible = true;
Label1.Text = "Successfully Inserted";
}
}

catch (Exception ex)
{
this.Label1.Visible = true;
this.Label1.Text = ex.Message.ToString();
}

finally
{
reobj = null;
bobj = null;

}
txtpassword.Text = "";
txtusername.Text = "";
}
}

MasterPage

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class MasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{

}
}

Home

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Home : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
}

Login

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
public partial class Cust_Login : System.Web.UI.Page
{
BLL bobj = new BLL();
Region reobj = new Region();
int result = 0;
int flag = 0;
protected void Page_Load(object sender, EventArgs e)
{
Label1.Visible = false;
}
protected void TextBox2_TextChanged(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{

int flag = 0;
if (flag == 0)
{
if (string.Compare("Admin", txtusername1.Text) == 0)
{
if (string.Compare("Admin", txtpassword1.Text) == 0)
{
flag = 1;
Session["Admin"] = txtusername1.Text;
Response.Redirect("~/Admin/Bank_Mst.aspx");
}
}
}

if (flag == 0)
{
reobj.custusername = txtusername1.Text.Trim();

reobj.custuserpassword =MD5Crypt.Encrypt(txtpassword1.Text.Trim(),"temp");

SqlParameter custusername = new SqlParameter("@Username", reobj.custusername);
SqlParameter custuserpassword = new SqlParameter("@password", reobj.custuserpassword);

SqlParameter[] dbdata = new SqlParameter[2] { custusername, custuserpassword };
try
{
result = bobj.check("CustLogin", dbdata);
if (result > 0)
{

Session["Cust"] = txtusername1.Text;
flag = 1;
Response.Redirect("~/Customer/CustProfile.aspx");

}
else
{

Label1.Visible = true;
Label1.Text = "pls enterd correct password and username";
}

}

catch (Exception ex)
{
this.Label1.Visible = true;
this.Label1.Text = ex.Message.ToString();
}
}

if (flag == 0)
{
reobj.custusername = txtusername1.Text.Trim();

reobj.custuserpassword = MD5Crypt.Encrypt(txtpassword1.Text.Trim(),"temp");

SqlParameter custusername = new SqlParameter("@Username", reobj.custusername);
SqlParameter custuserpassword = new SqlParameter("@password", reobj.custuserpassword);

SqlParameter[] dbdata = new SqlParameter[2] { custusername, custuserpassword };
try
{
result = bobj.check("CustLogin1", dbdata);
if (result > 0)
{

if (Session["Buy"] == null)
{
Session["Cust"] = txtusername1.Text;

flag = 1;
Response.Redirect("~/Customer/CustProfile.aspx");
}
else
{
Session["Cust"] = txtusername1.Text;
flag = 1;
Response.Redirect("~/Customer/Buy.aspx?item_id=" + Request.QueryString[0].ToString());
}

}
else
{

Label1.Visible = true;
Label1.Text = "pls enterd correct password and username";
}

}

catch (Exception ex)
{
this.Label1.Visible = true;
this.Label1.Text = ex.Message.ToString();
}
}

if (flag == 0)
{
reobj.empusername = txtusername1.Text.Trim();

reobj.emppassword = MD5Crypt.Encrypt( txtpassword1.Text.Trim(),"temp");

SqlParameter empusername = new SqlParameter("@Empusername", reobj.empusername);
SqlParameter emppassword = new SqlParameter("@Emppassword", reobj.emppassword);

SqlParameter[] dbdata = new SqlParameter[2] { empusername, emppassword };
try
{
result = bobj.check("EmpLogin", dbdata);
if (result > 0)
{
Session["Emp"] = txtusername1.Text;

Label1.Visible = true;
Label1.Text = "Successfully Login";

flag = 1;
Response.Redirect("~/employee/EmpProfile.aspx");
}
else
{

Label1.Visible = true;
Label1.Text = "pls enterd correct password and username";
}
}

catch (Exception ex)
{
this.Label1.Visible = true;
this.Label1.Text = ex.Message.ToString();
}
}

if (flag == 0)
{
reobj.empusername = txtusername1.Text.Trim();

reobj.emppassword = MD5Crypt.Encrypt(txtpassword1.Text.Trim(), "temp");

SqlParameter empusername = new SqlParameter("@Empusername", reobj.empusername);
SqlParameter emppassword = new SqlParameter("@Emppassword", reobj.emppassword);

SqlParameter[] dbdata = new SqlParameter[2] { empusername, emppassword };
try
{
result = bobj.check("EmpLogin1", dbdata);
if (result > 0)
{

Session["Emp"] = txtusername1.Text;
Response.Redirect("~/employee/EmpProfile.aspx");

}
else
{

Label1.Visible = true;
Label1.Text = "pls enter correct password and username";
}

}

catch (Exception ex)
{
this.Label1.Visible = true;
this.Label1.Text = ex.Message.ToString();
}
}

>

}
}

5.2.2 Activity Design :

Login

Change Password

Forgot Password

Admin Activity:

' Registration of Item

' Registration Of Employee


' View Reports


' Add/Update Customer Register

' View Transaction



' Add/Update Transaction Details

5.3 INPUT/OUTPUT AND INTERFACE DESIGN :-
5.3.1 Samples Of Forms, Reports and Interface
Master Page

Login

Home


5.3.2 Access Control and Security

Since all customer data including phone numbers and email addresses will be stored inside the CRM, security is paramount. This issue takes on greater importance if the company decides to choose an on-demand hosting model rather than having the CRM hosted on premise. This raises issues of who owns the data: the company or the hosting provider? Thus, a clear security policy needs to be in place prior to the CRM installation to ensure that there are no security holes.

5.3.2.1 MD5 (Message Digest Algorithm)

The MD5 Message-Digest Algorithm is a widely used cryptographic hash function that produces a 128-bit (16-byte) hash value. Specified in RFC 1321, MD5 has been utilized in a wide variety of security applications, and is also commonly used to check data integrity. MD5 was designed by Ron Rivest in 1991 to replace an earlier hash function, MD4. An MD5 hash is typically expressed as a hexadecimal number, 32 digits long.

The MD5 algorithm is designed to be quite fast on 32-bit machines. In addition, the MD5 algorithm does not require any large substitution tables; the algorithm can be coded quite compactly.
The MD5 algorithm is an extension of the MD4 message-digest algorithm. MD5 is slightly slower than MD4, but is more "conservative" in design. MD5 was designed because it was felt that MD4 was perhaps being adopted for use more quickly than justified by the existingcritical review; because MD4 was designed to be exceptionally fast, it is "at the edge" in terms of risking successful cryptanalytic attack. MD5 backs off a bit, giving up a little in speed for a much greater likelihood of ultimate security. It incorporates some suggestions made by various reviewers, and contains additional optimizations. The MD5 algorithm is being placed in the public domain for review and possible adoption as a standard.

5.3.2.2 Triple DES (Triple Data Encryption Standard)
In cryptography, Triple DES is a block cipher derived from the Data Encryption Standard (DES) cipher by using it three times. Triple DES is also known asTDES or, more standard, TDEA (Triple Data Encryption Algorithm).
When it was discovered that a 56-bit key of DES is not enough to protect from brute force attacks, TDES was chosen as a simple way to enlarge the key space without a need to switch to a new algorithm. The use of three steps is essential to prevent meet-in-the-middle attacks that are effective against double DES encryption.
In general TDES with three different keys (3-key {k1, k2, k3} TDES) has a key length of 168 bits: three 56-bit DES keys (with parity bits 3-key TDES has the total storage length of 192 bits), but due to the meet-in-the-middle attack the effective security it provides is only 112 bits. A variant, called two-key TDES (2-key TDES), uses k1 = k3, thus reducing the key size to 112 bits and the storage length to 128 bits. However, this mode is susceptible to certain chosen-plaintext or known-plaintext attacks and thus it is designated by NIST to have only 80 bits of security.
By design, DES and therefore TDES, suffer from slow performance in software. TDES is better suited to hardware implementations, and indeed where it is still used is likely to be within a hardware implementation.
TDES is slowly disappearing from use, largely replaced by the Advanced Encryption Standard (AES). One large-scale exception is within the electronic payments industry, which still uses 2TDES extensively and continues to develop and spread standards based upon it (e.g. EMV, the standard for inter-operation of IC cards; also called "Chip cards", and IC capable POS terminals and ATM's). This guarantees that TDES will remain an active cryptographic standard well into the future.

5.4 SYSTEM ARCHITECTURE DESIGN :

Enterprise Architecture Types :

Types of enterprise architecture.

' Single ' Tier Architecture
' 2-tier Architecture
' 3-tier Architecture
' N-tier Architecture

Single Tier ' Architecture :
Single ' tier architecture consists of the presentation, the business rules, and the data access layers ' in a single computing layer.

Fig 5.1 Single Tier Architecture
Application created on single ' tier architecture are relatively easy to manage and implement data consistency; since data is stored at a single location.
Disadvantage :
The only problem is that such application cannot be scaled up to handle multiple users and sharing is not possible easily.
2-Tier Architecture :
The 2-tier architecture separates the data and business logic.
The 2-tier architecture is generally data driven; with the application existing entirely on the local machine and the database deployed at a specific and secure location in the organization.
2-tier is a traditional architecture where all the processing load at client side, while the server simply controls the traffic between the application and data, as shown in following figure.

Fig. 5.2 2-Tier Architecture

This architecture is usually referred to as client/server , where a client communicates with a server
This architecture divide in following layer

Fig. 5.3 Client/server Layers
Disadvantage :
' What will happen if you have a limited resource PC ? The application performance would suffer due to limited PC resources.
' Multiple Request for database access on single PC take heavy traffic on Network.
' What if smallest change in the application might result in a complete roll out or redesigning of the entire database ? This will have an affect on the maintenance of the 2 tier application.
' All the application runs on the same platform.
3-Tier Architecture :

In the 3-tier architecture, an application is virtually split into three separate logical layers. Each of these layers has well defined interfaces, as shown in following figure.


Client Application Server Data Server

Fig. 5.4 Displaying the 3 ' tier Architecture-Hardware View

The layers in the 3 ' tier architecture are :
' First Tier ' Referred to as the 'Presentation Layer'. The first tier consists of a GUI to interact with the user.
' Middle Tier ' Known as the 'Business Layer'. The middle tier consists of the application of the business logic. The middle tier presents the code that the user call upon through the presentation layer to retrieve the data from the data layer.
' Third Tier ' Called the data layer. The third tier contains the data access logic needed for the application.

Fig. 5.5 Displaying the 3 ' tier Architecture-Software View

This separation of application logic from the user interface adds flexibility, as compared to the 2-tier system, to the design of an application.
Multiple user interfaces can be built and deployed without changing the application logic; provided it defines a clear interfaces to the presentation layer.

The n-tier Architecture :

As the name suggest, there can be numerous layers in this kind of the architecture.
n-tier architecture, which is formed by combining 3-tier and 2 tier client/server model.

Fig. 5.6 n-Tier Architecture

- The business logic is retrieved from the application running on the desktop.
- The application on the desktop is responsible for presenting the user interface to the end user and for communicating to the business logic tier.
- The n-tier architecture can be virtually distributed into the following segments
The user interface can be used to interact with the database and the user. This means, it provides an interface between the user and the database, which can be a Web Browser running.
' The presentation logic that defines what will be displayed on the user interface and how the user's request would be handled.
' The business logic models the applications' business logic or rules, often through the interaction with the application data.
' Infrastructure services provide additional functionality required by the application components, such as messaging and transaction support.
' The data layer is one that stores the data of the enterprises.
Advantages :
Improved maintainability : The n-tier architecture helps in creating application that are easy to maintain.
Consistency : We can use this architecture to develop enterprise applications consistent in term of component designing and their association with the layer in the architecture where they are providing functionality.
Inter operatibility : The application designed using the n-tier architecture is highly interoperable, as we can implement components in different layers to support different technologies and platforms.
Flexibility : The developer is free to design and develop various types of component for different layers with all flexibility.
Scalability : The n-tier architecture are scalable, since we can add new components without affecting the performance of the existing application.

Fig. 5.7

6.0 Implementation planning and Details:-
6.1 Implementation Environment:-
The proposed system is designed to change the existing system into more effective. It makes the customer easier to get a cash. The Card Processing System could interact with an external Card Transaction System, thereby making the Card-related information maintained by the bank, up-to-date. The purpose is to build a Card Processing System which provides complete card processing, to meet the needs of full-fledged Credit card and Debit card based ATM or Point of Sale network. Customer can apply for credit card and know his eligibility from his own place just by giving his personal details. Everything comes to his door. Person comes to collect the required documents. Verification and other process will be finished within 5 days and customer is intimated about the sanctioned loan amount and EMI that he has to pay.

6.2 PROGRAMS/MODULE SPECIFICATION
6.2.1 System Modules:

1. Creation of new card: In this module, the customer gives there information to via registration to employee. The information is all about there contact details. They can create their own login and password for their future use of the card.

2. Login: In Login Form module presents site visitors with a form with username and password fields. If the user enters a valid username/password combination they will be granted access to additional resources on website. Which additional resources they will have access to can be configured separately.

3. Security information: In Security information module it will get the information detail and its store's in database. If the card lost then the Security information module arises. It contain informational privacy and informational self-determination are addressed squarely by the invention affording persons and entities a trusted means to user, secure, search, process, and exchange personal and/or confidential information.

4.Transaction: there are two transactions are available in our system such as 1.physical 2.Virtual card .The method and apparatus for pre-authorizing transactions includes providing a communications device to a vendor and a credit card owner. The credit card owner initiates a credit card transaction by communicating to a credit card number, and storing therein, a distinguishing piece of information that characterizes a specific transaction to be made by an authorized user of the credit card at a later time.

5. Verification: Verification information is provided with respect to a transaction between an initiating party and a verification-seeking party, the verification information being given by a third, verifying party, based on confidential information in the possession of the initiating party. In verification the process will seeks card number and if the card number is correct the relevant process will be executed. If the number is wrong, mail or messages will be sent to the user saying the card no has been block and he can't do the further transaction. those information's will be check by using barcode scanner.
6.2.2 User Modules :-
' Admin
' This module manages the personal and account details for users. Users are separated in different categories and assigned corresponding rights and tasks.
' Rollback privileges of users:
' Adding new Services information.
' Updating Service Information.
' Bank Employee
' Contact the existing or new customers:
' Provide the information about the product through mail/personal meetings:
' Store and update customer contact information:
' Provide the card to the customer as per his/her requirements:
' Periodically send information of new products to the customers:
' The employee will generate id and customer id, Credit Card Creation and Maintenance

' Customer

' Register with the Organization
' Login, Change password and other Profile Information maintain.
' Generate different type of Transaction
' Check and Validate the Card
' Update their profile with their new Information.

' Trading

' Generate Transaction with any Shopping Cart, Bank Withdrawal or Trading.
' Maintain Information of Transaction:
' The details of the location and Authentication maintain. Provide Basic Information of User and their card.

' PayPal :
Make Payment after confirmation of Credit Card Authentication.

' Communication
Generate Report and communicate with customer as well as with Admin and Employee of the organization.

' Messages :
Set Message Functionality after the confirmation of Trading.

6.3 Security Features:-
' It is a type of non-functional testing.
' Security testing is basically a type of software testing that's done to check whether the application or the product is secured or not. It checks to see if the application is vulnerable to attacks, if anyone hack the system or login to the application without any authorization.
' It is a process to determine that an information system protects data and maintains functionality as intended.
' The security testing is performed to check whether there is any information leakage in the sense by encrypting the application or using wide range of software's and hardware's and firewall etc.
' Software security is about making software behave in the presence of a malicious attack.
' The six basic security concepts that need to be covered by security testing are: confidentiality, integrity, authentication, availability, authorization and non-repudiation

6.4 CODING STANDARDS :-

Pseudo Code Naming Conventions

When a project tries to adhere to common standards a few good things happen:
' Programmers can go into any code and figure out what's going on
' New programmer can get up to speed quickly
' Programmer new to .Net are spared the need to develop a personal style and defend it to the depth
' Programmer new to .Net are spared making the same mistakes over and over again
' Programmer make fewer mistakes in consistent environments
' Programmers have a common enemy.

Class Names

' Name the class after what it is. If you can't think of what it is that is a clue you have not thought through the design well enough.
' Compound names of over three words are a clue your design may be confusing various entities in your system. Revisit your design. Try a CRC card session to see if your objects have more responsibilities than they should.
' Avoid the temptation of bringing the name of the class a class derives from into the derived class's name. A class should stand on its own. It doesn't matter what it derives from.

Method and Function Names

' On clicking the Button, the name of the method will be as per the event generated.
' For example: On clicking the Submit button the name of the method will be btnSubmit_Click().

No All Upper Case Abbreviations

' When confronted with a situation where you could use an all upper case abbreviation instead use an initial upper case letter followed by all lower case letters. No matter what.
Textbox 'txt
Label 'lbl
Button 'btn
Panel 'panel
File Upload 'fu
Radio Button 'rb
Dropdown List'ddl

Justification

' Programmer seems to have very different intuitions when making names containing abbreviations. It's best to settle on one strategy so the names are absolutely predictable.
Comments and Documentation
Comments and Documentation are aids to understand the code. They help us in following the program flow, and skip parts for which we are not interested in details.
If one is not careful, then they become rewriting of what is already written in the code. So, they have same problems as duplication of source code: consistency, maintenance etc. These should be minimized by making the code self explanatory.
Of course, there are cases when comments/documentation is needed. No one is expected to know each and every detail of all modules of a complex system. In such cases comments/documentation should be used to provide an overview of the system. Also, they can be used to record other useful information - e.g. bug-id, kludge, reference etc., and to keep track of sequence of events which lead to a particular design decision.
Some situations where comments are required are explained below.
' Global variable declaration should be accompanied by a comment describing its purpose, valid usage, and other nitty-gritty.
' Comments should also be used to describe uncommon scenario, kludges, and workarounds. These should have specific format for easy identification.

6.5 SAMPLE CODING :-
MasterPage :

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="~/Admin/MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="style.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<%--<form runat="server" id="aa">--%>
<div id="header"> <a href="http://www.free-css.com/"><img src="images/logo.png" id="logo" alt="" /></a>
<ul id="navBar">
<li class="current"><a href="http://www.free-css.com/">Home</a></li>
<li><a href="../Logout.aspx">Logout</a></li>

</ul>
</div>
<div id="welcomeMessage">
<h1>Welcome to Your Business</h1>
<p><span>Yourbusiness.com</span> is a leading virtual corporate business that will help you monetize your work to the most level you could reach.</p>
<p>Lorem ipsum dolor sit amet, consectetur adip, <span>Yourbusiness.com</span> will give you a new way to look at your business and lead it to all new horizons.</p>
</div>
<div id="wrapper">
<div id="secWrapper">
<div id="container" class="clearfix">
<div id="mainCol" class="clearfix">


<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">

</asp:ContentPlaceHolder>

 

 



</div>
<div id="secCol">

<h3 id="news">Category</h3>
<ul>
<li class="clearfix">
<h4><a href="Bank_Mst.aspx">Bank Info</a></h4>
<h4><a href="Branch_Mst.aspx">Branch Info</a></h4>
<h4><a href="Acc_Mst.aspx">Account Info</a></h4>
<h4><a href="Card_Mst.aspx">Card Info</a></h4>
<h4><a href="Country_Mst.aspx">Country Info</a></h4>
<h4><a href="State_Mst.aspx">State Info</a></h4>
<h4><a href="City_Mst.aspx">City Info</a></h4>
<h4><a href="Cat_Mst.aspx">Category Info</a></h4>
<h4><a href="Sub_Mst.aspx">Sub Category</a></h4>
<h4><a href="Item_Mst.aspx">Item Info</a></h4>
<h4><a href="Dept_Mst.aspx">Dept Info</a></h4>
<h4><a href="Des_Mst.aspx">Designation Info</a></h4>
<h4><a href="Que_Mst.aspx">Question Info</a></h4>

<h4><a href="BankEmp_Mst.aspx">Employee Info</a></h4>

<h4><a href="EmployeeProofile.aspx">Employee Profile</a></h4>
<h4><a href="CustomerProfile.aspx">Customer Profile</a></h4>
<p></p>
</li>
<li class="clearfix">
</li>
</ul>
<h3 id="test">View</h3>
<ul>
<li class="clearfix">
<p></p>
<p class="test"><span> </span>, <a href=""> </a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div id="footer">
<ul>

<li><a href=" ">Details</a></li>
</ul>
<p> </p>
</div>


</body>
</html>

Login :

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Cust_Login" %>

<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>
<script runat="server">




</script>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">

<style type="text/css">
.style1
{
width: 100%;
}
.style2
{
height: 51px;
}
.style5
{
height: 51px;
width: 122px;
}
.style6
{
width: 122px;
}
.style8
{
width: 122px;
height: 23px;
}
.style9
{
height: 23px;
}
.style10
{
height: 51px;
width: 116px;
}
.style11
{
width: 116px;
}
.style12
{
width: 116px;
height: 23px;
}
.style13
{
width: 116px;
font-size: small;
}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<form id="aaa" runat="server">
<table class="style1">
<tr>
<td class="style10">
&nbsp;</td>
<td class="style5">
</td>
<td class="style2">
</td>
</tr>
<tr>
<td class="style11">
&nbsp;</td>
<td class="style6">
&nbsp;</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style13">
User Name</td>
<td class="style6">
<asp:TextBox ID="txtusername1" runat="server" ValidationGroup="card"></asp:TextBox>
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style13">
&nbsp;</td>
<td class="style6">
&nbsp;</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style13">
Password</td>
<td class="style6">
<asp:TextBox ID="txtpassword1" runat="server" ontextchanged="TextBox2_TextChanged"
ValidationGroup="card" TextMode="Password"></asp:TextBox>
<asp:PasswordStrength ID="txtpassword1_PasswordStrength" runat="server"
TargetControlID="txtpassword1">
</asp:PasswordStrength>
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style12">
</td>
<td class="style8">
</td>
<td class="style9">
</td>
</tr>
<tr>
<td class="style11">
&nbsp;</td>
<td class="style6">
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Login"
ValidationGroup="card" />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style12">
</td>
<td class="style8">
</td>
<td class="style9">
</td>
</tr>
<tr>
<td class="style11">
&nbsp;</td>
<td class="style6">
<asp:Label ID="Label1" runat="server" Text="Label" Visible="False"></asp:Label>
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style11">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
</td>
<td class="style6">
<asp:HyperLink ID="HyperLink1" runat="server" Font-Italic="True"
NavigateUrl="~/ForgetCustPassword.aspx">Forgot Password</asp:HyperLink>
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td class="style11">
&nbsp;</td>
<td class="style6">
<asp:HyperLink ID="HyperLink2" runat="server" Font-Bold="False"
Font-Italic="True" NavigateUrl="~/Cust_Mst.aspx">Registration</asp:HyperLink>
</td>
<td>
&nbsp;</td>
</tr>
</table>
</form>

</asp:Content>

Home :

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Home.aspx.cs" Inherits="Home" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<style type="text/css">
.style1
{
width: 100%;
}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<form id="aa" runat="server">
<asp:DataList ID="DataList1" runat="server" DataKeyField="Item_id"
DataSourceID="SqlDataSource1" CellPadding="4" ForeColor="#333333"
RepeatColumns="3">
<AlternatingItemStyle BackColor="White" />
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<ItemStyle BackColor="#EFF3FB" />
<ItemTemplate>
<table class="style1">
<tr>
<td>
Item_id:</td>
<td>
<asp:Label ID="Item_idLabel" runat="server" Text='<%# Eval("Item_id") %>' />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
Item_name:</td>
<td>
<asp:Label ID="Item_nameLabel" runat="server" Text='<%# Eval("Item_name") %>' />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
Item_des:
</td>
<td>
<asp:Label ID="Item_desLabel" runat="server" Text='<%# Eval("Item_des") %>' />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
Item_img:
</td>
<td>
<asp:Image ID="Image1" runat="server" Height="66px"
ImageUrl='<%# Eval("Item_img") %>' Width="100px" />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
Cost:</td>
<td>
<asp:Label ID="CostLabel" runat="server" Text='<%# Eval("Cost") %>' />
</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
<td>
&nbsp;</td>
</tr>
<tr>
<td>
&nbsp;</td>
<td>
<asp:LinkButton ID="LinkButton1" runat="server"
PostBackUrl='<%# Eval("Item_Id", "~/Customer/Buy.aspx?Item_Id={0}") %>'>Buy</asp:LinkButton>
</td>
<td>
&nbsp;</td>
</tr>
</table>
<br />
&nbsp;<br />&nbsp;<br />
<br />
<br />
&nbsp;<br />
<br />
</ItemTemplate>
<SelectedItemStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
</asp:DataList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:digicard %>"
SelectCommand="SELECT * FROM [Item_Mst]"></asp:SqlDataSource>
</form>
</asp:Content>

Testing presents an interesting anomaly for the software engineer. During earlier software Engineering activities, the engineer attempts to build software from an abstract concept to a tangible product. Now comes testing. The engineer creates a series of test cases that are intended to "demolish" the software that has been built. In fact, testing is the one step in the software process that could be viewed (psychologically, at least) as destructive rather than constructive.

7.1 TESTING PLAN :-
A test plan documents the strategy that will be used to verify and ensure that a product or system meets its design specifications and other requirements. A test plan is usually prepared by or with significant input from Test Engineers.
Testing Principles:
' All tests should be traceable to customer requirements
' Tests should be planned long before testing begins
' The Pareto principle applies to software testing
' Testing should begin 'in the small' and progress toward testing 'in the large'
' Exhaustive testing is not possible
' To be most effective, testing should be conducted by an independent third party

7.2 TESTING STRATEGY :-
' Unit Testing:
Unit testing focuses verification effort on the smallest unit of software design- the software component or module. Using the component 'level design description as a guide, important control paths are tested to uncover errors within the boundary of the module. The relative complexity of tests and uncovered errors is limited by the constrained scope established for unit testing. The unit test is white-box oriented; the step can be conducted in parallel for multiple components.
' Module interface is tested. It checks the information flow. It checks that the information flows into or out of the program unit.
' Data structure is examined to ensure the storage of data. It maintains the integrity during all steps of execution.
' Testing of boundary conditions is also involved. It ensures that the module operates properly at boundaries established to limit or restrict processing.
' All independent paths are exercised. All statements in a module have been executed at least once.

' Integrating Testing:
Integration testing is a systematic technique for constructing the program structure while at the same time conducting tests to uncover errors associated with interfacing. The objective is to take unit tested components and build a program structure that has been dictated by design.
' All components are combined in advance.
' The entire program is tested as a whole.
' A set of errors is encountered.
' Correction is difficult because isolation of causes is complicated by the vast expanse of the entire program. Ones these errors are corrected, new ones appear and the Process continues in a seemingly endless loop.
' The program is constructed and tested in small increments, where errors are easier to isolate and correct, interfaces are more likely to be tested completely and a systematic test approach may be applied.

' Validation Testing:
In validation testing, the software is assembled as a package. Validation Testing is completely associated with requirement satisfaction of customers. This testing checks weather all functional requirements of customer are satisfied or not. According to this test, the project is tested and found to be satisfactory for functional characteristics, behavioral characteristics and performance requirement. It is also found to have good documentation up to the last stage. So, the performance characteristics conform to specification and are accepted.

7.3 TESTING METHODS:-
' Black Box Testing

Fig. 7.1 Black Box Testing

It takes an external perspective of the test object to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid input and determines the correct output. There is no knowledge of the test object's internal structure. Black Box Testing is testing without knowledge of the internal workings of the item being tested. For example, when black box testing is applied to software engineering, the tester would only know the "legal" inputs and what the expected outputs should be, but not how the program actually arrives at those outputs. It is because of this that black box testing can be considered testing with respect to the specifications, no other knowledge of the program is necessary. For this reason, the tester and the programmer can be independent of one another, avoiding programmer bias toward his own work. Due to the nature of black box testing, the test planning can begin as soon as the specifications are written. This method of test design is applicable to all levels of software testing: unit, integration, functional testing, system and acceptance. It attempts to find errors in the following categories:
' Incorrect or missing functions
' Interface errors
' Errors in data structures or external database access
' Behavior or performance errors
' Initialization and termination errors.

' White Box Testing


Fig. 7.2 White Box Testing

As per our project, we have used white Box Testing Model because independent paths of ASP files and loops are the cornerstones of the vast majority of all algorithms implemented in the software.
White-box testing sometimes called glass-box testing, where test data are derived from direct examination of the code to be tested. For glass box testing, the test cases cannot be determined until the code has actually been written. Both of these testing techniques have advantages and disadvantages, but when combined, they help to ensure thorough testing of the product. Software testing approaches that examine the program structure and derive test data from the program logic. Structural testing is sometimes referred to as clear-box testing since white boxes are considered opaque and do not really permit visibility into the code.

' All the possible combination of inputs is tested and works fine for each of the pages.
' All the decision testing are done on the both the true and false sides they work fine.
' All the simple, nested, concatenated, unstructured and continues loops are tested with the extreme values of the loop counter at maximum and minimum. All loops works properly.

7.4 TEST CASES :-

Login Test
Sr. No. Test Case Test Data Expected Result Actual Result Remark
1 Check User Login when Correct Username and Password At Login Enter Correct Username and Password System Should Redirect User to Respective User Pages System Redirects User to Respective Page Passed
2 Check User Login when Incorrect Username and Password At Login Enter Incorrect Username and Password System Should Redirect User to Home Page System Redirects User to Home Page Passed
3 Check System Behaviour When Username is Malformed Enter Malicious Data like "''"" or "/*" any sql injection string System Should Generate Error System Redirects User to Home Page Passed

Registration Test
Sr. No. Test Case Test Data Expected Result Actual Result Remark
1 Check Field Validation of name field Enter numeric value to name field System should not print numeric System do not respond if numeric values are entered Passed
2 Check Email ID field Enter any text value or number that doesn't match with Regular Expression

System should show error Validator will not submit form until error is corrected Passed
3 Check Field Validation of Username Field Enter space to username Field System should show error System do not respond if space value is entered Passed
4 Check already existing username in database for username field Enter already existing username System should not accept existing username System do not respond if already existing username is entered Passed
5 Check end date for Date Of Birth Enter present date System should not accept DOB System do not respond if present date is entered Passed
6 Check weather data is inserted into database Submit the form after filling information System should redirect user to respective page when data is inserted System redirects user to respective user page Passed

Assign Technician Test
Sr. No. Test Case Test Data Expected Result Actual Result Remark
1 Check User Login when Correct Username and Password At Login Enter Correct Username and Password System Should fetch assets having complain and for his department only System Displays
assets allocated accordingly Passed
2 Update status of asset complain in database admin set priority of the complain and assigns technician System should notify client and successfully update the status System shows notification and successfully update the status Passed

Complain Registration Test
Sr. No. Test Case Test Data Expected Result Actual Result Remark
1 Check User Login when Correct Username and Password At Login Enter Correct Username and Password System Should fetch assets allocated to him and not in warranty System Displays
assets allocated, not in warranty and generate complain id Passed
2 Check weather data is inserted into database Submit the form after filling information System should redirect user to respective page when data is inserted and allocates assets System redirects user to respective user page Passed


Admin Login

Customer profile

Home

Transaction

 

View customer Transation


EMPLOYEE:-

9.0 LIMITATION AND FUTURE ENHANCEMENT
9.1 LIMITATION:
The following are the limitations of our system:
1. Basic knowledge of computer is required by customers.
2. Internet connection must be available with the customer for interacting with the system.
3. Company must have Intranet and internet facilities with networking.
4. Major limitation of the system is that it doesn't work in rural areas where there are less internet and computer services.
5. System users must regularly update and check the system. If not done, then customer complaints can remain unhandled which hinders the growth of the company.
6. Company has to regularly update item details such as rates of products, new products introduced by the company, etc so that the company and customers doesn't incur losses.

9.2 FUTURE ENHANCEMENT:
' It is possible to implement configuration module for general purpose.
' It is possible to create chat server so that user can communicate with each other.
' It is also possible to implement mobile application by implementing web services.
' It is also possible to implement globalization and localization

CONCLUSION

Every project work does not matter website project or any other project could not be the result of sole effort; even though, developer team consists one member. We think success of any project does not depend only on better software development skills, but also, zeal to listen and help the users. Only user interaction at development phase can give you an idea to fulfill their requirements. Because, up to development or installation phase software is for developer, but then after it is for users .We experienced that do make the website for users not for fame of being better programmer or software developer. Ultimately, users appraise your efforts not your peers.

After making this project we can conclude that, we have tried to fulfill the need of customer i.e. Online Mcq Exam. We have tried to make our website very user-friendly. One can easily operate the system. So this project is very useful for any user.


REFERENCES

' www.google.com
' www.w3schools.com
' www.wikipedia.com
' www.codeproject.com
' www.scribd.com
' www.planet-source-code.com
' www.sourcecodeonline.com
' www.ebookpdf.net

Source: Essay UK - http://doghouse.net/free-essays/information-technology/the-card-processing-system.php


Not what you're looking for?

Search:


About this resource

This Information Technology essay was submitted to us by a student in order to help you with your studies.


Rating:

Rating  
No ratings yet!


Word count:

This page has approximately words.


Share:


Cite:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay UK, The Card Processing System. Available from: <http://doghouse.net/free-essays/information-technology/the-card-processing-system.php> [22-02-19].


More information:

If you are the original author of this content and no longer wish to have it published on our website then please click on the link below to request removal:


Essay and dissertation help

badges