Submitted in partial fulfillment of the requirements
for the award of the degree of
Master of Computer Application (MCA)
To
Guru Gobind Singh Indraprastha University, Delhi
Guide(s): Submitted by: (Guide Name) (Student name) Roll No.:
Institute of Information Technology & Management, New Delhi 1100 58 Batch (2010-2013)
2 CERTIFICATE
I, Mr./Ms._______________________________, Roll No. ________________ certify that the Project Report/Dissertation (MCA-302) entitled ________________________________ is done by me and it is an authentic work carried out by me at ___________________________ (Name of the organisation or of the Institute). The matter embodied in this project work has not been submitted earlier for the award of any degree or diploma to the best of my knowledge and belief.
Signature of the Student Date:
Certified that the Project Report/Dissertation (MCA-302) entitled __________________ Done by Mr./Ms._______________________________, Roll No. ________________, is Completed under my guidance.
Signature of the Guide Date: Name of the Guide: Countersigned Designation: Address: Institute of Information Technology & Management, New Delhi- 110058 Director/HOD
3
Program Code : MCA
Course Code :
Course Title : PROJECT
Project Title : HDFC Online Banking
Enrolment No. :
Name :
Address :
Date :
Signature of student :
4
CONTENTS
Certificates .............
Synopsis
1. Introduction & Objectives
Introduction Objectives
2. System Analysis Identification of the need Preliminary Investigation Feasibility Study
3. Software Engineering Paradigm
4. Software Requirement Specifications (SRS)
5. Design
Entity Relationship (ER) Diagram Test case Data Structure of Tables Data Dictionary of Tables Forms
6. Coding
7. Code Efficiency and Optimization of Code
8. Validation Checks
9. Testing (Testing Techniques and Strategies)
5 10. Security Measures Taken
11. Work Schedule and Cost Estimation
12. Reports
13. Limitations of the Project
14. Future Scope of Project
15. Bibliography
6
Program Code : MCA
Course Code :
Course Title : PROJECT
Project Title : HDFC Online Banking
Roll No. :
Name :
Address :
Date :
Signature of student :
7
1. Title of the Project.
2. Introduction.
3. Objective of the Project.
4. Project category.
5. Analysis and design.
6. DFDs, ERD and Tables.
7. Module description.
8. Process logic.
9. Reports
10 . Tools and Platform to be Used 11 . Hardware and Software Requirements Specification
12 Is there any Client? 13 Future Scope.
8
9 INTRODUCTION
HDFC Online Banking is a Software Product that has been developed for provide a complete automated and computerized solution to the HDFC. This System includes all basic operations that are needed in HDFC. The Project has a very interactive GUI interface and is very user friendly. The Primary Concern of HDFC Online Banking is to provide a complete functionality for the Requests for New Saving Account, Home Loan, Personal Loan, Customers Details & all other Operations needs in HDFC. The goal is to apply information technology in the HDFC and to provide a very quick service to the users and inquiry service to customers which will result in error free data and greater customer satisfaction.
The System records each and every transaction in computers and saves the time that was too long in case of manual recording. The System keeps all Registration Related Information and does most of the work automatically like generating Application Number, Loan Requests, and Credit Card Requests etc.
This System uses ASP .Net as a front-end tool and Microsoft SQL Server 2008 as the back-end that has been used to manipulate the Database.
10 OBJECTIVE
This objective of this project is dual. The primary objective is the completion of Master of Computer Application. The main objective of developing this kind of Product is to applying the Information Technology for HDFC. This provides a well- maintained information structure for processing of Requests. The main idea behind is to provide a complete system to cater to all the activities that take place in HDFC Bank. The HDFC Online Banking includes the complete data which include Registration information, Customer Information & Employee Details. This data can be referred to any time as and when required. The Primary objectives behind the development of the HDFC Online Banking are as follows:
Proper Back-Up and recovery facilities. Making the System reliable and secured. Providing the security to valuable data. Speeding up the all the transactions. Enabling the HDFC to maintain its data through computers. Quick and fast service to the customers. Remove the old Computerized by transaction handling with the fast computerized system. Applying a reliable and efficient functionality. Save time and efforts.
11 PROJECT CATEGORY
This Project is a Database Application: This project belongs to the category of Database Applications. All the data about the Customer, Registration, Transaction, are maintained through MS-SQL Server 2008. The records about all the customers coming for Enquiry, Registration are stored in the database and can be retrieved on the basis of Query. The data maintenance and manipulation is an important aspect of this project. The application controls great amount of data, which is updated and maintained using MS-SQL Server 2008 Database.
12
13 System Analysis: System Analysis is a management technique which helps us in designing a new system or improving an existing system. System study is study about the operations of set of connected elements and inter- connections between these elements. One cannot ignore any part or element of a system without finding out the effect that element has on the operation of system as whole. System approach shows a set of procedure for solving a particular problem. OUTPUT I NPUT FI LE PROCESS
ANALYSIS REPORTS Requirements Definition -A software requirement is an abstract description of the services that the system shall provide and the constraints under which the system must operate.
Requirements determination involves studying the current Registration System to find out how it works and where improvements should be made. System studies result in an evaluation of how current methods are working and whether adjustments are necessary or possible.
A requirement is a feature that must be included in a new system. It may include a way of capturing or processing data, producing information, controlling a business activity, or supporting management. The determination of requirements thus entails studying the existing system and collecting details about it to find out what these requirements. Requirements can either be functional or non-functional.
14 Requirement Analysis: - Requirement Analysis is a Software Engineering task that bridges the gap between system level requirements engineering and software design. In the proposed project Software Requirements Analysis have been divided into five areas of effort:- 1. Problem recognition 2. Evaluation and Synthesis 3. Modeling 4. Specification 5. Review
Requirements Elicitation for the Software: - Before requirements can be analyzed, modeled or specified they are gathered through an elicitation process.
Context free questions were asked to the management people belonging to different large organizations/ institutes regarding how they would characterize a good output that would generate a successful solution, what kind of problems will this solution address, how they describe the environment in which the solution will be used and will special performance issues or constraints effect the way the solution is approached.
Software Engineering Paradigm Applied: METHODOLOGY:- For develop the software the basic thing is that what is the model will be used. The model will be used is of great importance for development of the software.
15 In the waterfall model, the sequence of the activities performed in a software development project: requirement analysis, project planning, system design, detailed design, coding, and unit testing, system integration and testing. This is the order the different phases will be apply for develop of the project.
Linear ordering of the phases is the important for the development of the software because by using this model you can follow the phases in the linear order. First the requirement analysis is done then you can proceed the next phase like Designing. This model is used when you know all the phases in advance i.e. you know the requirement of the client because requirement analysis is important for the development of the software. For the development of the software there are two parties are involved in the development of the software a client and a developer. Most often the requirement of the client does not know and the requirement of the client will be changed. So before using this model requirement of the client is known in advanced.
To overcome these problems we can used the prototype model. The basic idea for using this model is that the requirements have not known initially. In this model a prototype is built to understand the requirements. This prototype is developed based on the currently known requirements. The prototype means to develop the formal model of the software which meets the current requirements. By using this prototype, the client can get an actual feeling of the system because the interaction with the prototype can enable the client to better understand the requirements of the desired
16 system. By using this model there is no work manually. By using this model we can create a prototype, which meets the primary requirements of the Power management system. By seeing this model the user knows the requirements of the HDFC Online Banking. In the waterfall model the requirements had been known in advanced. To solve this problem we can used the prototype model.
Fig: - The Prototyping Model
The development of the Prototype typically starts when the Preliminary version of the requirements specification document has been developed. After developed the Prototype, the end users and clients are given an opportunity to use the Prototype. Based on the experience, they provide the feedback to the developers regarding the Prototype: what is correct, what are needs to be modified, what is missing, what is not needed, etc. In this software when we give the Prototype to the client. They give the feedback like the needed of the login in the software.
17
18 0 LEVEL DFD
HDFC Management System Employees Employees Customers Customers Login Validated Generate Payroll Received Enquiry Registered Response Registration for Saving account
19 1 LEVEL DFD
Login 1.0 Emp 2.0 Tras 3.0 SA 4.0 Loan 5.0 CD 6.0 Search 7.0 login update confirmation Data retrieve from DB data store Data store Data Date store Data store Data store login employee transaction Saving account loan Credit Card employee
Acc info 7.1 Transac tion 7.2 Customer Searching acc info Customer Searching for trans confirmatio n confirmation Data store Data store account transaction
25
26
city adds cstmr Register for Credit_card HDFC Issued by Branches Register for Saving_acnt Opened_ by Hme_Loans Regd_by Provided by Employees
Needed Appl_no Name Adds Dob Br_nm Br_id dob Appl_no F_Name Fthr_Nam Adds C_no dob L_name F_name Appl_no Fthr_nam Appl_n Date Name Emp_id Name adds Name F_Nam adds Email Works_i n
27
Account Details
Field Data Type Constraints acc_no Bigint Primary key Acc_type Varchar(30) Open_date Date Bal Varchar(12)
Credit Card
Field Data Type Constraint Appl_np varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Email Varchar(50) Dob Date Resi_city Varchar(50) Mob Varchar(15) emplnt_type Varchar(50) comp_nm Varchar(50) monthly_income varchar(50) acc_holder varchar(10) exstng_card varchar(50) min_card_limit varchar(12) add_proof varchar(50) aplied_bfore varchar(10)
Customer
Field Data Type Constraint cust_id varchar(10) Primary key f_name varchar(50) l_name varchar(50) acc_no Bigint e_mail Varchar(50) branch_name varchar(50) branch_id varchar(20) Pin varchar(10) Dob Date
Works in
28
Home Loan
Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Dob Date Email Varchar(50) mob_no varchar(15) City varchar(30) off_ph varchar(15) home_ph varchar(15) Occupation varchar(50) monthly_income varchar(20) existing_cust varchar(5) loan_amnt varchar(15) loan_tenure Int preperty_identified varchar(10)
Personal Loan Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Dob Date yrs_at_crnt_resi varchar(20) City varchar(30) hav_hdfc_acc varchar(10) e_mail varchar(50) ph_no varchar(15) Mob varchar(15) Occupation varchar(30) comp_name varchar(50) loan_tenure yrs_in_crnt_comp net_sal varchar(20)
Saving Account
Field Data Type Constraint appl_no varchar(10) Primary key Title varchar(10) F_name Varchar(50) L_name Varchar(50) City varchar(30) nearest_branch varchar(30) mob_no varchar(15)
Field Data Type Constraint reqst_code varchar(20) request_for varchar(20) acc_from varchar(20) acc_to varchar(20) Amount nchar(10)
Vehicle Loan
Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Applying_for varchar(20) Dob Date yrs_at_crnt_resi varchar(20) City varchar(30) hav_hdfc_acc varchar(10) e_mail varchar(50) ph_no varchar(15) Mob varchar(15) Occupation varchar(30) comp_name varchar(50) loan_tenure yrs_in_crnt_comp net_sal varchar(20)
Employee Details
Field Data Type Constraint Emp_id Varchar(20) Primary key F_Name Varchar(50) L_name Varchar(50) Fthr_name Varchar(50) Dept varchar(30) Desg varchar(30) ed_qual varchar(30) marital_status varchar(30) Gender varchar(10) Adds varchar(100) c_no varchar(13)
30
Employee Login Table
Field Data Type Constraint Emp_id Varchar(30) Primary key Pass Varchar(12)
Employee Payroll
Field Data Type Constraint Emp_id Varchar(10) Primary key B_sal Bigint Hra Int Da Int Ta Int Tot_sal Bigint IT Int PF Int Net_sal Bigint sal_month Varchar(20)
31
Account Details Module:
This module will enable the user to see his account details & fetch the particular data about his or her account like, acc_no acc_type, open_date, bal.
Credit Card Module:
This module will enable the user to register for a Credit Card and fetch the particular data about the credit card such as appl_no, f_name, l_name, email, dob, resi_city, mob, emplnt_type, comp_nm, monthly_income, acc_holder, exstng_card, min_card_limit, add_proof, aplied_bfore.
Customer Module:
This module will enable the user to see the customer details and fetch the particular data about the Customer such as cust_id, f_name, l_name, acc_no, e_mail, branch_name, branch_id, pin, dob.
Employee Details Module:
This module will enable the user to see the Employee Details & fetch the particular data about the Employees such as emp_id, f_name, l_name, fthr_name, dept, desg, ed_qual, marital_status, gender, adds, c_no.
Employee Login Module:
This module will enable the user to Login into the System.
Employee Payroll Module:
This module will enable the user to fetch the particular data about the Employee Payroll such as Emp_id, B_sal, Da, Hra, Ta, tot_sal, Pf,IT, Net_sal, sal_month.
Home Loan Module:
This module will enable the user to register for a Home Loan & Fetch the particular data about Home Loan such as appl_no, f_name, l_name, dob, email, mob_no, city, off_ph, home_ph, occupation, monthly_income, existing_cust, loan_amnt, loan_tenure, preperty_identified.
Personal Loan Module:
32
This module will enable the user to register for the Personal Loan & Fetch the particular data about the Personal Loan such as appl_no, f_name, l_name, dob, yrs_at_crnt_resi, city, hav_hdfc_acc, e_mail, ph_no, mob, occupation, comp_name, yrs_in_crnt_comp, net_sal.
Saving Account Module:
This module will enable the user to register for Saving Account & Fetch the particular data about the Saving Account such as appl_no, Title, f_name, l_name, city, nearest_branch, mob_no, contact_no, landline_no, email.
Transaction Module:
This module will enable the user to see his transaction details & Fetch the particular data about the transaction such as reqst_code, request_for, acc_from, acc_to, amount.
Vehicle Loan Module:
This module will enable the user to register for the Vehicle Loan & Fetch the particular data about the Vehicles Loan like appl_no, f_name, l_name, applying_for, dob, yrs_at_crnt_resi, city, hav_hdfc_acc, e_mail, ph_no, mob, occupation comp_name, yrs_in_crnt_comp, net_sal.
Login Table Module:
This module will enable the user to register for Login the Database.
33 Process Logic
The user has to use the Internet Browser to run this website first the User has to Enter the URL of the website on their respective browser, then the browser will Load a complied Html Copy of website on server. After the website Loads Completely the user will be able to fill the forms like saving account, home loan & personal loan etc. If the potential user of the Website is the employee wants to access this website or Update content they have to provide the Login id and Password in order to get the permission to update this website. This website all enables the user to receive receipts and employees to create Reports.
34
35 Account Details Module:
This module will enable the user to see his account details & fetch the particular data about his or her account like , acc_type, open_date, bal.
Customer Module:
This module will enable the user to see the customer details and fetch the particular data about the Customer such as cust_id, f_name, l_name, acc_no, e_mail, branch_name, branch_id, pin, dob.
Employee Details Module:
This module will enable the user to see the Employee Details & fetch the particular data about the Employees such as emp_id, f_name, l_name, fthr_name, dept, desg, ed_qual, marital_status, gender, adds, c_no.
Employee Payroll Module:
This module will enable the user to fetch the particular data about the Employee Payroll such as Emp_id, B_sal, Da, Hra, Ta, tot_sal, Pf,IT, Net_sal, sal_month.
Transaction Module:
This module will enable the user to see his transaction details & Fetch the particular data about the transaction such as reqst_code, request_for, acc_from, acc_to, and amount.
36
This Software is a database application that uses MICROSOFT VISUAL STUDIO 2008 as the front-end tools. VISUAL STUDIO is a very popular tool for developing WEB based GUI applications. MICROSOFT SQL SEVER 2008 is the backbone of this software. It has been used as the back-end tool of this web portal. MI CROSOFT VI SUAL STUDI O 2010: Microsoft .net is a platform for developing the next generation of web and window based applications. These applications are created to run across various devices. .Net framework provides a language neutral environment and designed to Provide cross language compatibility and a consistent object oriented programming environment. Minimize software deployment and versioning conflicts Promote safe execution of code. ASP.NET 4.0 ASP.NET is a part of visual studio 2010 which was launched in 2010. It makes development of web application easier and quicker as compared to the earlier version of asp.net. The asp.net is a Technology used to create the dynamic web applications. It is based on the .net Platform andthus supports most .net compatible languages for its applications we have chosen c#. ASP.Net provides an infrastructure for faster development of scalable and secure web applications.
37 MI CROSOFT SQL SERVER 2008: Microsoft SQL Server 2008 is a comprehensive, integrated data management and analysis software that enables organizations to reliably manage project-critical information and confidently run todays increasingly complex business applications. Data management is done in database engine: The Database Engine is the core service for storing, processing, and securing data. The Database Engine provides controlled access and rapid transaction processing to meet the requirements of the most demanding data consuming applications.
OPERATING SYSTEM MICROSOFT Windows 95, 98, 2000, Me, XP sp1/XP sp2 FRONT END MICROSOFT Visual Studio 2005 BACK END
38 MICROSOFT SQL Server 2005 MINIMUM HARDWARE REQUIREMENT Pentium IV or Higher 512 MB RAM or Higher
39
No, there is no client of this Web Portal.
40
In future HDFC ONLINE BANKING can be extended to take online payments for shopping and conduct surveys to get the information about the various Issues Related to HDFC Bank. And further it can be used to implement a Better Complaint System.
2. System Analysis Identification of the need. Preliminary Investigation Feasibility Study.
3. Software Engineering Paradigm
4. Software Requirement Specifications (SRS)
5. Design Entity Relationship (ER) Diagram Test case Data Structure of Tables Data Dictionary of Tables. Forms
6. Coding
7. Code Efficiency and Optimization of Code
8. Validation Checks
9. Testing (Testing Techniques and Strategies)
10. Security Measures Taken
11. Work Schedule and Cost Estimation
12. Reports
13. Limitations of the Project
14. Future Scope of Project
15. Bibliography
42
43 INTRODUCTION
HDFC Online Banking is a Software Product that has been developed for provide a complete automated and computerized solution to the HDFC. This System includes all basic operations that are needed in HDFC. The Project has a very interactive GUI interface and is very user friendly. The Primary Concern of HDFC Online Banking is to provide a complete functionality for the Requests for New Saving Account, Home Loan, Personal Loan, Customers Details & all other Operations needs in HDFC. The goal is to apply information technology in the HDFC and to provide a very quick service to the users and inquiry service to customers which will result in error free data and greater customer satisfaction.
The System records each and every transaction in computers and saves the time that was too long in case of manual recording. The System keeps all Registration Related Information and does most of the work automatically like generating Application Number, Loan Requests, and Credit Card Requests etc.
This System uses ASP .Net as a front-end tool and Microsoft SQL Server 2008 as the back-end that has been used to manipulate the Database.
44 OBJECTIVE
This objective of this project is dual. The primary objective is the completion of Master of Computer Application. The main objective of developing this kind of Product is to applying the Information Technology for HDFC. This provides a well- maintained information structure for processing of Requests. The main idea behind is to provide a complete system to cater to all the activities that take place in HDFC Bank. The HDFC Online Banking includes the complete data which include Registration information, Customer Information & Employee Details. This data can be referred to any time as and when required. The Primary objectives behind the development of the HDFC Online Banking are as follows:
Proper Back-Up and recovery facilities. Making the System reliable and secured. Providing the security to valuable data. Speeding up the all the transactions. Enabling the HDFC to maintain its data through computers. Quick and fast service to the customers. Remove the old Computerized by transaction handling with the fast computerized system. Applying a reliable and efficient functionality. Save time and efforts.
45
46
Requirements Definition:- A requirement is a feature of the system or a description of something the system is capable of doing in order to fulfill the systems purposes. A software requirement is a distinct observation of the services that the system shall provide and the constraints and validation under which the system must function. Requirements determination involves studying the existing working system to find out how it works and where and where improvements should be made. System studies results in an evaluation of how current methods are working and weather adjustment are necessary or possible. A requirement is a feature that must be included in a proposed system. It may be to include a way of capturing data or generating information, controlling a business activity, or supporting management. The determination of requirements thus entails studying the existing system and collecting details about it to find out what these requirements. Requirements can either be functional or nonfunctional. Types of Requirements:- There are different types of requirement such as: Known Requirements Unknown Requirements Undreamt Requirements Requirement Analysis:- Requirements analysis is very important and essential activity after elicitation. We analyze refine and scrutinized the gathered requirements in order to make
47 consistent and unambiguous requirements. Requirement Analysis is a software Engineering method that narrows the gap between system level requirements engineering and software design. In the proposed project software requirements analysis have been divided into five areas of effort: Problem Recognition Evaluation and Synthesis Modeling Specification Review
48 Requirements Elicitation for the software- Before requirements can be analyzed, modeled or specification they are gathered, through an elicitation process. Open Ended Question were asked to the potential users and various MCQ Collected from the employees, Potential user and the management people belonging to different large organizations / institute regarding how they would characterize a good output that would generate a successful solution, what kind of problems will this solution address, how they describe the environment in which the solution will be used and will special performance issues or constraints effects the way the solution is approached.
49 Quality function Requirements- Quality function development (QFD) is a quality management technique that translates the needs of the customer into technical requirements for software. In QFD three types of requirement are identified Normal Requirements:- 1. Graphical displays: a. Fully menu driven. a) Intuitive key assignments and user interactive screen. b) User configurable. b. Facility to add, delete, modify a record. c. Report generation.
Expected Requirements: These requirements are implicit to the product or system and may be so fundamental that the customer dose not state them. The following are listed. (1) Ease of Human / Machine Interaction (2) Reliability and Operational correctness (3) Fast loading to even slow Browsers (4) Single point data storage for data element (5) Maintenance of integrity and inter linkage of data (6) Extensive query facility to provide immediate answers for management
50 (7) Matching of physical and logical movement of file (8) Should be upgradeable to incorporate new features (9) Should be expandable
Exciting Requirements: (1) Error control mechanism (2) Tool tip next display (3) Graphical animations (4) Other look and feel appeals
Security Requirements: The following security requirements are considered in this project. (1) User Level Authentication (2) Restricted Menu access (3) Backup and Restore
Functional Requirements: Functional requirements include the statements of the services the system should provide. These are related to the expectations from the intended software. They are also called product features. Sometimes, functional requirements may also specify what the software not to do. Non Functional Requirements:- Non functional requirements include contains on services or function provided by system. Non functional requirements that are especially important to users include specifications of desired performance, availability, reliability, usability,
51 and flexibility. Non functional requirements for developers are maintainability, portability and testability. List of function and non-function requirements of the HDFC Online Banking is given below:
Functional Requirements- Employees:- This process should provide a feature to see the personal details of employee, their salary detail, departments details of the employees.
Loan:- This process should provide a feature to keep the tracks of the Home Loan, Personal Loan & Vehicle Loan. Customer:- This process keeps the details about the Customer Account details & personal Details.
52 Non-Functional Requirements- The Non-functional requirements can be classified into three main categories that are: (1) Product requirements (2) Organizational requirements (3) External requirements
Functional Requirements:- These are the expectations from a system. Product requirements include the following: Usability requirements:-
The system should have a good interface and it should be used friendly because if the user who would be using the system most of the time. Along with the user friendly interface the system should be easy to use and should not be confusing. A list of command or instructions on how to work with the system and operate it should be provided with the system.
Efficiency Requirements:- To make the system run efficiently system requirements of the software will have to be kept minimum.
53 Reliability Requirements:- A system is said to be reliable is a user can depend on it. The process be execute in the same manner it has been programmed. And the out puts of the project must be very correct. If outputs are not reliable then there is no advantage of using the software. Moreover, the Database must be handled very carefully because loss of the data may result in bankrupting or closing the organization.
54 Feasibility Study Feasibility study is defined as an evaluation or analysis of the potential impact of a proposed project or program. It is conducted to assist decision makers in determining whether or not to implement a project/program. Feasibility study is the determination of whether or not a project is worth doing. The process followed in making this determination is called a feasibility study. This type of study determines if a project can and should be taken. Once it has been determined that a project is feasible, the analyst can go ahead and prepare the project specification which finalize the project requirements.
Different type of feasibility study undertaken is: Economic Feasibility:- Economic feasibility is the most frequently used technique for evaluating the effectiveness of the proposed system. More commonly knows, as cost/benefit analysis; the procedure is to determine the benefits and saving that are expected from a proposed system and compare them with costs. If benefits outweigh costs, a decision is taken to design and implement a system. Otherwise, further justification or alternative in a proposed system will have to be made if it is to have a chance of being approved. This is an outgoing effort that improves in accuracy at each phase of system lifecycle. Time feasibility:- It is determination of whether a proposed project can be implemented fully with in a stipulated time frame. If a project takes too much time it is likely to be rejected. Time feasibility is important because the client companies usually give deadlines for the system to be changed. Usually give deadlines for the system to be changed. Usually deadlines are very strict and should be followed by companies.
55 Technical feasibility:- This is concerned with specifying equipments and will satisfy the user requirements. The technical needs of the system may vary considerably but might include: (1) The facility to produce outputs in a given time. (2) Response time under certain conditions. (3) Ability to process a certain volume of transaction at a particular speed. (4) Facility to communicate data to distant location. Technical feasibility centers on the existing computer system, hardware, software, etc. and to what extent it can support the system. In examination technical feasibility configuration of the system is given more important that the actual make of hardware. The configuration should give the complete picture of the system requirements e.g. how many workstations are required, how these units are interconnected so that they would operate smoothly, etc. the result of technical feasibility study is used as the basic for documents against which dealer and manufactures can make the bids. Specified hardware and software product can then be evaluated keeping in view the logical needs.
Resource Feasibility:- This was also important to check whether required resources will be available or not. For the software, there were no such constraints as most of the web-related languages are platform independent and freely available. Here, I decided to use C#.NET as the most prominent tool, the compiler for which is freely available. For the database, a general approach was adopted by means of which the same coding can be implied on
56 all the web-related database management system software available. The database may be implemented on Microsoft SQL Server 2005. Behavioral feasibility:- Normal human psychology of human being indicates that people are resistant to change and computers are knows to facilitate. Any project formulations should consider this factor also. Before the development of the project titled Regional Transport Office Management System, the need to study the feasibility of the successful execution of the project was felt and thus the following factors are considered for a feasibility study. (1) Need Analysis. (2) Provide the users information pertaining to the above requirements.
57 Feasibility Study Report Questionnaires were used to gather information from the key users i.e. the customers, operators and managements to determine the following: (A) Whether there is a need for an automated system. (B) If the need is there, what are the drawbacks of existing system that have to be rectified in the new system? (C) That omissions are there in the existing systems, which have to be incorporated in the new system? The result of the feasibility study provided us with the following facts: (1) The automated system would increases the efficiency of the system. (2) The automated system would increases customers satisfaction. (3) The automated system has many requirements such as: (I). Efficiency (II). Cost effectiveness (III). Prompt services (IV). Reliability (4) The automated system would add to the security features of the system (5) The automated system should be: (I). Simple to use (II). Incorporate all necessary services (III). Maintainable (6) This will cause some changes in the organization. These are:-
58 (I). Change in staffing policies-present employees will have to be sent for training. (II). New employees to be recruited will have the knowledge about the automated system.
59
Software Engineering Paradigm is also referred as Software Development Life Cycle or a process model. A software life cycle model is a particular abstraction that represents a software life cycle. A software life cycle is a series of identifiable stage that a software product undergoes during its life time. A software product development effort usually starts with a feasibility study stage, and then subsequently requirements analysis & specification, design, coding, testing and maintenance are undertaken. Each of these stages is called Life Cycle Phase. While developing a software product, it is necessary for the development team to identify a suitable life cycle model and adhere to it. The primary advantage of adhering to a life model is that it encourages development of software in a systematic and disciplined manner. There are several software engineering paradigms (process module) for developing software. Some of the important and commonly used models are as under: Prototyping model applied in to the Project Information System Evolutionary model Rapid Application Development (RAD) model Spiral model Clean room model Build and fix model
60 Prototyping paradigm of software Engineering is applied in the HDFC ONLINE BANKING the prototyping model suggests that before development of the software, a working prototype of the system should be built first. There were several reasons for developing a prototype. An important purpose was to illustrate the input data formats, reports, and the interactive dialogues to the end user. This was a valuable mechanism for gaining better understanding of the Business Development Divisions needs. For much easier for the user to form his option by experimenting with a working model rather than just trying to imaging the working of a hypothetical system. After gathering the requirements from the Business Development division, a quick design (prototype) was made and showed to the HODs of information Technology and Business Development Division. The system prototype built was quit close to the requirements of the Business Development Division. Some additional requirements were also added to the system on the system on the pretext of slight increase in the earlier scope. Following figure depicts the prototyping paradigm applied in the HDFC ONLINE BANKING. As shown in the figure the model starts with an initial requirements gathering phase. A quick design was carried out and the system proto- type was built. The developed prototype was then shown to the end user for their suggestion on it. Based on the feedback, the requirements were refined and classical waterfall approach was used to develop the HDFC Online Banking.
61
Requirements Gathering
Quick Design Build Prototype Requirement of Requirements Build Prototype Prototype Evaluation Design Coding and Reports Testing Implementation
62
63
64
This document aims at defining the overall software requirement for HDFC Online Banking. Efforts have been made to define the requirement exhaustively. The final product will be having only feature/functionalities mentioned in this moment and assumption for any additional functionality/feature should not be made by any of the parties involved in developing/testing/implementing/using this product. In case it is required to have some additional features, a formal change request will need to be raised subsequently a new release of this document and product will be produced.
Purpose: This Software Specification Document describes the capability that will be provided by this Website HDFC Online Banking. This document also states the various required constraints by which the System will abide. Scope: This website GDFC Online Banking will be a Management Information System (MIS) and an application that will be used for Generating report about the data of the Regional Transport Office. The application will manage the information about Loans, Customer Account Details in the HDFC. It contains all facility to manage a HDFC and also contain details of on which request of the Applicants recently HDFC is working and how already completed Loans & Accounts is maintained. It also contains information about the Staff of the HDFC, Loans, Saving Accounts Requests, Credit Card requests. This application will greatly simplify and speed up the work of Management of HDFC Online Banking.
Abbreviation:
Appl_no: Application Number Mob: Mobile Ph_no: Phone Number Off_ph: Office Phone Fthrs_name: Fathers Name Dob: Date of Birth Adds: Address E_mail: E-Mail ID
65 Yrs_at_crnt_resi: Years at Current Residence Comp_name: Company Name Net_sal: Net Salary B_sal: Basic Salary Da: Dearness Allowances HRA: house rent allowances Ta: transport allowances IT: Income Tax PF: Provident Fund Tot_sal: Total Salary
66
A HDFC Bank maintains many Loans, Accounts at a time. It is specially designed for handling daily and long term problem involving the management of HDFC. This website contains various areas like maintenance of Loans, Customer Accounts in the HDFC. HDFC keeps the information about Credit Cards, Employees, Transactions & login details of the Customers or Employees. To store all the information related to Loans, Credit Cards, Saving Accounts, Login details of the Employees and the Customer, Employee Details, Transactions separate database have been created.
System Interface: None
User Interface: The user interface can be defined as the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the machine which aids the operator in making operational decisions This Website will have a user friendly and menu based interface. This Website will provide the various functions to the user like Register for Loan, Request for a Saving Account, etc.
a) A Login screen for entering login id and password to access the Employee Panel. b) There will be a Screen to capturing information about the Home Loans Request in the HDFC Bank. c) There will be a Screen to displaying and capturing information about the Employees Payroll. d) There will be a Screen to capturing information about the Personal Loans Request in the HDFC Bank.
67 e) There will be a Screen to capturing information about the Vehicle Loans Request in the HDFC Bank f) There will be a Screen to capturing information about the Credit Card Request in the HDFC Bank g) There will be a Screen to capturing information about the Make Transaction Request in the HDFC Bank h) There will be a Screen to capturing information about the Home Loans Request in the HDFC Bank i) There will be a Screen to displaying and capturing information about the Employees. j) There will be a Screen to capturing information about the Saving Accounts Loans Request in the HDFC Bank k) There will be a Screen to Displaying the information about the Response to all the Request received in the HDFC Bank Search is provided on some of the pages on the requirement basis.
The will be following Report generated:- (1) Account Details Report: Printable report will be generated to show the Accounts Details in the HDFC Bank. (2) Customer Report: Printable report will be generated to show the Customer details in the HDFC Bank. (3) Employee Details Report: Printable report will be generated to show the Employee details in the HDFC Bank. (4) Employee Payroll Reports: Printable report will be generated to show the Employee Payroll. (5) Transaction Report: Printable report will be generated to show the Transaction requests from the customer in the HDFC Bank.
68
Hardware Interface:
Screen Resolution of at least 800X600 is required for proper and complete viewing of screens. Printer either dot matrix/laser or ink jet to print the reports. Pentium IV or Higher 512 MB RAM or Higher
Software Interface:
MICROSOFT Windows 95, 98, 2000, Me, XP sp1/xp sp2 Front End: Microsoft Visual Studio 2005 Asp.Net (2.0) Back End: Microsoft SQL Server 2005
69
70 Account Details:-
Description: This process is designed to store the information of the Accounts in the HDFC Bank & also maintain information about Accounts Details in the HDFC. The following information would be maintained for each Account: acc_no, acc_type, open_date, bal. The system will be allows creation of new requests for Accounts. Validation check: Acc_type: A unique numeric value upto 10 Digits. This field cant be left blank. Acc_type: Account type should be alphabet upto 30 Characters. Open_date: This field allows the user to enter the date of birth in (dd/mm/YYYY) format. Bal: Balance field can store the numeric data upto 8 Fields. Error handing/response to abnormal situation
Error handling is applied to the submit button to handle the error at run time. If any error is occurred during submit operation then it will handle and submit operation will be terminated and website will continued. If any of the above validation does not hold true, appropriate error messages will be prompted to the user for doing the needful.
Credit Card:-
Description
71 This process is designed to store the information of the Credit card. The following information would be maintained for each request: appl_no, f_name, l_name, email, dob, resi_city, mob, emplnt_type, comp_nm, monthly_income, acc_holder, exstng_card, min_card_limit, add_proof, aplied_bfore. The system will allow creation of new requests of credit card. Validation check Appl_no: A unique alphanumeric value upto 10 Characters. F_name: First name should be in Alphabets upto 50 Characters. L_name: Last name should be in Alphabets upto 50 Characters. E_mail: This field accepts Alphabetic data only and length should not be greater than 50 Characters. dob: Date should be in (dd/mm/yyyy) format. Resi_city: This field should not be greater than 50 characters and user is not allowed to enter numeric data in this field. Mob: This field accepts the numeric data upto 15 characters. Emplnt_type: This field should not be greater than 50 characters and user is not allowed to enter numeric data in this field. Comp_nm: This field should not be greater than 50 characters and user is not allowed to enter numeric data in this field. Monthly_income: This field should not be greater than 50 characters and user is not allowed to enter numeric data in this field. Acc_holder: This field should not be greater than 10 characters and user is not allowed to enter numeric data in this field. Existing_card: This field should not be greater than 50 characters and user is not allowed to enter numeric data in this field. Min_card_limit: This field should not be greater than 12 characters and user is not allowed to enter numeric data in this field. Error handing/response to abnormal situation
72 Error handling is applied to the submit button to handle the error at run time. If any error is occurred during submit operation then it will handle and submit operation will be terminated and website will continued. If any of the above validation does not hold true, appropriate error messages will be prompted to the user for doing the needful.
Employee_details-
Description This process will maintain information about the permanent license to the HDFC. The following information would be maintained for the staff: emp_id, f_name, l_name, fthr_name, dept, desg, ed_qual, marital_status, gender, adds, c_no. The system will be allows to creation/modification of new/existing staff detail and also have the ability to list all the staff in the software tracking. Validation check a. Emp ID: Employee Id should be alphanumeric of length upto 10 Characters. b. F_name: First name should be in Alphabets upto 50 Characters. c. L_name: Last name should be in Alphabets upto 50 Characters. d. Fthr_name: Fathers name should be in Alphabets upto 50 characters. e. Dept: Department name should be in Alphabets upto 30 Characters. f. Desg: Designation should be in Alphabets upto 30 Characters. g. Ed_qual: Education Qualification should be in Alphabets upto 50 Characters. h. Marital_status: Marital status should be Alphabets of maximum upto 30 Characters. i. Gender: Gender should be in Alphabets upto 10 Characters. j. Adds: Address should be in Alphabets upto 100 Characters. k. C_no: This filed must be in numeric upto 15 digits.
73 Error handing/response to abnormal situation
Error handling is applied to the submit button to handle the error at run time. If any error is occurred during submit operation then it will handle and submit operation will be terminated and website will continued. If any of the above validation does not hold true, appropriate error messages will be prompted to the user for doing the needful.
Transaction:-
Description This process will maintain information about the Transaction request to the HDFC system. The following information would be maintained for each transaction: reqst_code, request_for, acc_from, acc_to, amount. The system will be allows to creation/modification/deletion of new/existing new class vehicle information and also have the ability to list all the Information of Addition of New Class: Validation check a. Request_code:Request code should be alphanumeric of length upto 20 Characters. b. Request_for: Request for field should be in alphanumeric of length upto 20 characters. l. Acc_from: Account from should be alphanumeric of length upto 20 Digits. m. Acc_to: This should be alphanumeric of length upto 20 Characters. c. Amount: Amount should be in numeric and upto 10 digits.
74 Error handing/response to abnormal situation
Error handling is applied to the submit button to handle the error at run time. If any error is occurred during submit operation then it will handle and submit operation will be terminated and website will continued. If any of the above validation does not hold true, appropriate error messages will be prompted to the user for doing the needful.
75 Security:- The application will be password protected .Employees will have to enter correct username, and password to access the Employee Section in the Website.
Maintainability:- The application will be designed in a manner. It will be easy to incorporate new requirement the individual modules (acc_det, credit_card, customer, emp_det, emp_login, emp_pay, home_loan, personal_loan, saving acnt, transaction, vehicle_loan).
Portability:- The application will be portable on any window based system that has MICROSOFT SQL SERVER 2008 and MICROSOFT VISUAL STUDIO 2010.
76
The following information will be placed in a database:
HDFC Management System Employees Employees Customers Customers Login Validated Generate Payroll Received Enquiry Registered Response Registration for Saving account
80 1 LEVEL DFD
Login 1.0 Emp 2.0 Tras 3.0 SA 4.0 Loan 5.0 CD 6.0 Search 7.0 login update confirmation Data retrieve from DB data store Data store Data Date store Data store Data store login employee transaction Saving account loan Credit Card employee
81
82 1 LEVEL DFD
Login 1.0 Emp 2.0 Tras 3.0 SA 4.0 Loan 5.0 CD 6.0 Search 7.0 login update confirmation Data retrieve from DB data store Data store Data Date store Data store Data store login employee transaction Saving account loan Credit Card employee
Acc info 7.1 Transac tion 7.2 Customer Searching acc info Customer Searching for trans confirmatio n confirmation Data store Data store account transaction
88
89
city adds cstmr Register for Credit_card HDFC Issued by Branches Register for Saving_acnt Opened_ by Hme_Loans Regd_by Provided by Employees
Needed Appl_no Name Adds Dob Br_nm Br_id dob Appl_no F_Name Fthr_Nam Adds C_no dob L_name F_name Appl_no Fthr_nam Appl_n Date Name Emp_id Name adds Name F_Nam adds Email Works_i n
90
91
92 Use Case Model
Identifying Use Cases A use case represents a function that the system performs. Alternatively, a use case can be thought of as a goal that some actor can achieve with the system. An actor association is an arrow connecting an actor to a use case. This arrow represents a conversation between the actor and the system component responsible for executing the use case.
A conversation can be viewed as an exchange of messages. For example, the system might send a message to the user by displaying a dialog box. The user might reply to this message by clicking a button on the dialog box. Conversations can be long or short. The initiator of the conversation is indicated by the direction of the arrow, which points from the initiator to the responder. Primary actors, such as users, always initiate conversations. Secondary actors, such as servers, always respond to an initiating use case. The optional system boundary helps to remind us that use cases are internal to the system and actors are external.
93 Writing sets of use cases: Use cases exist in sets, and the relationships between the various use cases and Actors are important. As you learn more about the Actors, you also learn more about the system's boundaries and transactions. Likewise, as you learn more about the system's transactions, you learn more about its Actors. Therefore, it is more efficient to write several use cases simultaneously than to write them sequentially. This way, you can identify and understand the effects of the various use cases upon each other as you write them, rather than as afterthoughts that require rewriting or elimination of previous work. Writing individual use cases. Similarly, it makes sense to write each individual use case iteratively. Starting with the main scenario, you can then identify various alternative and error flows that the use case might follow, then evaluate, rearrange or eliminate them, and then add the details of the surviving scenarios. Consider factors that can influence the format and level of detail for your use case description. Detail the flow of events of the main scenario As a starting point, use the step-by-step description of the use-case main scenario. Then, gradually add details to this scenario, describing what the use case does, not how to solve problems internal to the system. A flow of events description explores: How and when the use case starts When the use case interacts with the Actors, and what data they exchange When the use case uses data stored in the system or stores data in the system How and when the use case ends It does not describe: The GUI
94 Technical details of hardware or software Design issues I dentify alternate flows A use case consists of a number of scenarios, each representing specific instances of the use case that correspond to specific inputs from the Actor or to specific conditions in the environment. Each scenario describes alternate ways that the system provides a behavior, or it can describe failure or exception cases. As you detail the main scenario, identify alternate flows by asking these questions: Are there different options available, depending on input from the Actor? What business rules can come into play? What could go wrong?
95 Use Case Diagram
A use case diagram at its simplest is a representation of a user's interaction with the system and depicting the specifications of a use case. A use case diagram can portray the different types of users of a system and the various ways that they interact with the system. This type of diagram is typically used in conjunction with the textual use case and will often be accompanied by other types of diagrams as well.
With regards to use case diagrams, that is exactly what they are meant to do. While a use case itself might drill into a lot of detail about every possibility, a use-case diagram can help provide a higher-level view of the system. It has been said before that "Use case diagrams are the blueprints for your system". They provide the simplified and graphical representation of what the system must actually do.
Due to their simplistic nature, use case diagrams can be a good communication tool for stakeholders. The drawings attempt to mimic the real world and provide a view for the stakeholder to understand how the system is going to be designed. Siau and Lee conducted research to determine if there was a valid situation for use case diagrams at all or if they were unnecessary. What was found was that the use case diagrams conveyed the intent of the system in a more simplified manner to stakeholders and that they were "interpreted more completely than class diagrams". The purpose of the use case diagrams is simply to provide the high level view of the system and convey the requirements in layman's terms for the stakeholders. Additional diagrams and documentation can be used to provide a complete functional and technical view of the system.
96
Use Case Diagram
97 Test Cases
Transaction Session 1 Before execution (1) Purpose: To Save the Record (2) Pre-condition: none (3) Input: request_code(112e3), Request_for(deposit), Acc_from(112255447788) Acc_to(111223445577) (4) Expected output: save the record in database (5) Post-condition(if any):None (6) Written by: (7) Date: 12-3-2013
After execution
(1) Execution history: SqlException Occurred. (2) Result: Null violation (3) If fails, any possible reason(if any): amount() was left blank..
(4) Any observation: none (5) Any suggestion: none (6) Run by: (7) Date: : 12-3-2013
Session 2
98
Before execution (1) Purpose: To Save the Record (2) Pre-condition: none (3) Input: request_code(112e3), Request_for(deposit), Acc_from(112255447788) Acc_to(111223445577) (4) Expected output: save the record in database (5) Post-condition(if any):None (6) Written by: (7) Date: 12-3-2013
After execution
(8) Execution history: Record Stored successfully (9) Result: record saved. (10) If fails, any possible reason(if any): none
(11) Any observation: none (12) Any suggestion: none (13) Run by: (14) Date: : 12-3-2013
LOGIN:- Session 1
Before execution Purpose: To check authorized person who can access the project.
99 Pre-condition: None (1) Input: Login_id (user101) AND Password (sumit) (2) Expected output: successful login and open the employee panel. (3) Post-condition(if any): if login is successful, then open the Employee panel form and close the login form. (4) Written by: (5) Date: 15-03-2013
After execution (1) Execution history: login failed (2) Result: invalid Login_id or password. (3) If fail, any possible reason(if any): wrong password or login_id (4) Any other observation: case sensitive (5) Any suggestion: change the input case (6) Run by: (7) Date15-03-2013
LOGIN:- Session 2
Before execution (1) Purpose: To check authorized person (2) Pre-condition: none (3) Input: Login_id(user101) AND password (SUMIT) (4) Expected output: login is successful and open the employee panel form (5) Post-condition: if login is successful then open employee panel form
100 (6) Written by: (7) Date: 15-03-2013
After execution (1) Execution history: login successed (2) Result: login is successful (3) If fails, any possible reason(if any): None (4) Any observation: none (5) Any suggestion: none (6) Run by: (7) Date: 15-03-2012
101
Account Details
Field Data Type Constraints acc_no Bigint Primary key Acc_type Varchar(30) Open_date Date Bal Varchar(12)
Credit Card
Field Data Type Constraint Appl_np varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Email Varchar(50) Dob Date Resi_city Varchar(50) Mob Varchar(15) emplnt_type Varchar(50) comp_nm Varchar(50) monthly_income varchar(50) acc_holder varchar(10) exstng_card varchar(50) min_card_limit varchar(12) add_proof varchar(50) aplied_bfore varchar(10)
Customer
Field Data Type Constraint cust_id varchar(10) Primary key f_name varchar(50) l_name varchar(50) acc_no Bigint e_mail Varchar(50) branch_name varchar(50) branch_id varchar(20) Pin varchar(10) Dob Date
Works in
102 Home Loan
Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Dob Date Email Varchar(50) mob_no varchar(15) City varchar(30) off_ph varchar(15) home_ph varchar(15) Occupation varchar(50) monthly_income varchar(20) existing_cust varchar(5) loan_amnt varchar(15) loan_tenure Int preperty_identified varchar(10)
Personal Loan Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Dob Date yrs_at_crnt_resi varchar(20) City varchar(30) hav_hdfc_acc varchar(10) e_mail varchar(50) ph_no varchar(15) Mob varchar(15) Occupation varchar(30) comp_name varchar(50) loan_tenure yrs_in_crnt_comp net_sal varchar(20)
103 Saving Account
Field Data Type Constraint appl_no varchar(10) Primary key Title varchar(10) F_name Varchar(50) L_name Varchar(50) City varchar(30) nearest_branch varchar(30) mob_no varchar(15) contact_no varchar(15) landline_no varchar(15) Email varchar(50)
Transaction
Field Data Type Constraint reqst_code varchar(20) request_for varchar(20) acc_from varchar(20) acc_to varchar(20) Amount nchar(10)
Vehicle Loan
Field Data Type Constraint appl_no varchar(10) Primary key F_name Varchar(50) L_name Varchar(50) Applying_for varchar(20) Dob Date yrs_at_crnt_resi varchar(20) City varchar(30) hav_hdfc_acc varchar(10) e_mail varchar(50) ph_no varchar(15) Mob varchar(15) Occupation varchar(30) comp_name varchar(50) loan_tenure yrs_in_crnt_comp net_sal varchar(20)
104 Employee Details
Field Data Type Constraint Emp_id Varchar(20) Primary key F_Name Varchar(50) L_name Varchar(50) Fthr_name Varchar(50) Dept varchar(30) Desg varchar(30) ed_qual varchar(30) marital_status varchar(30) Gender varchar(10) Adds varchar(100) c_no varchar(13)
Employee Login Table
Field Data Type Constraint Emp_id Varchar(30) Primary key Pass Varchar(12)
Employee Payroll
Field Data Type Constraint Emp_id Varchar(10) Primary key B_sal Bigint Hra Int Da Int Ta Int Tot_sal Bigint IT Int PF Int Net_sal Bigint sal_month Varchar(20)
105
Data Dictionary Account Details
Field Data Type Constraints Description acc_no Bigint Primary key Account number Acc_type Varchar(30) Account type Open_date Date Date of opening account Bal Varchar(12) Balance in the account
Credit Card
Field Data Type Constraint Description Appl_np varchar(10) Primary key Application number F_name Varchar(50) First name L_name Varchar(50) Last name Email Varchar(50) E mail id Dob Date Date of birth Resi_city Varchar(50) Residence city Mob Varchar(15) Mobile number emplnt_type Varchar(50) Employment type comp_nm Varchar(50) Company name monthly_income varchar(50) Monthly income acc_holder varchar(10) Existing account holder exstng_card varchar(50) Existing card min_card_limit varchar(12) Minimum card limit add_proof varchar(50) Address proof aplied_bfore varchar(10) Applied before
Works in
106 Customer
Field Data Type Constraint Description cust_id varchar(10) Primary key Customer id f_name varchar(50) First name l_name varchar(50) Last name acc_no Bigint Account number e_mail Varchar(50) E mail id branch_name varchar(50) Branch name branch_id varchar(20) Branch id Pin varchar(10) Pin number Dob Date Date of birth
Home Loan
Field Data Type Constraint Description appl_no varchar(10) Primary key Application number F_name Varchar(50) First name L_name Varchar(50) Last name Dob Date Date of birth Email Varchar(50) E mail id mob_no varchar(15) Mobile number City varchar(30) City off_ph varchar(15) Office phone home_ph varchar(15) Home phone Occupation varchar(50) Occupation monthly_income varchar(20) Monthly income existing_cust varchar(5) Existing customer loan_amnt varchar(15) Loan amount loan_tenure Int Loan tenure or duration preperty_identified varchar(10) Property identified or not
107 Personal Loan Field Data Type Constraint Description appl_no varchar(10) Primary key Application number F_name Varchar(50) First name L_name Varchar(50) Last name Dob Date Date of birth yrs_at_crnt_resi varchar(20) Years at current residence City varchar(30) City hav_hdfc_acc varchar(10) Have hdfc account e_mail varchar(50) Email id ph_no varchar(15) Phone number Mob varchar(15) Mobile Occupation varchar(30) Occupation comp_name varchar(50) Company name loan_tenure yrs_in_crnt_comp Loan tenure net_sal varchar(20) Net salary
Saving Account
Field Data Type Constraint Description appl_no varchar(10) Primary key Application number Title varchar(10) Title F_name Varchar(50) First name L_name Varchar(50) Last name City varchar(30) City nearest_branch varchar(30) Nearest branch mob_no varchar(15) Mobile number contact_no varchar(15) Contact number landline_no varchar(15) Landline number Email varchar(50) Email id
108 Transaction
Field Data Type Constraint Description reqst_code varchar(20) Request code request_for varchar(20) Request for acc_from varchar(20) Account from acc_to varchar(20) Account to Amount nchar(10) amount
Vehicle Loan
Field Data Type Constraint Description appl_no varchar(10) Primary key Application number F_name Varchar(50) First name L_name Varchar(50) Last name Applying_for varchar(20) Applying for Dob Date Date of birth yrs_at_crnt_resi varchar(20) Years at current residence City varchar(30) City hav_hdfc_acc varchar(10) Have hdfc account e_mail varchar(50) E mail id ph_no varchar(15) Phone number Mob varchar(15) Mobile number Occupation varchar(30) Occupation comp_name varchar(50) Company name loan_tenure yrs_in_crnt_comp Loan tenure net_sal varchar(20) Net salary
109
Employee Details
Field Data Type Constraint Description Emp_id Varchar(20) Primary key Employee id F_Name Varchar(50) First name L_name Varchar(50) Last name Fthr_name Varchar(50) Fathers name Dept varchar(30) Department Desg varchar(30) Designation ed_qual varchar(30) Educational qualification marital_status varchar(30) Marital status Gender varchar(10) Gender Adds varchar(100) Address c_no varchar(13) Conatact number
Employee Login Table
Field Data Type Constraint Description Emp_id Varchar(30) Primary key Employee id Pass Varchar(12) Password
Employee Payroll
Field Data Type Constraint Description Emp_id Varchar(10) Primary key Employee id B_sal Bigint Basic salary Hra Int House rent allowances Da Int Dearness allowances Ta Int Travel allowances Tot_sal Bigint Total salary IT Int Income tax PF Int Provident fund Net_sal Bigint Net salary sal_month Varchar(20) Salary month
110 Class Diagrams
In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the relationships among the classes.
The class diagram is the main building block of object oriented modelling. It is used both for general conceptual modelling of the systematics of the application, and for detailed modelling translating the models into programming code. Class diagrams can also be used for data modeling. The classes in a class diagram represent both the main objects, interactions in the application and the classes to be programmed.
A class with three sections.
In the diagram, classes are represented with boxes which contain three parts. The upper part holds the name of the class The middle part contains the attributes of the class The bottom part gives the methods or operations the class can take or undertake In the design of a system, a number of classes are identified and grouped together in a class diagram which helps to determine the static relations between those objects. With detailed modelling, the classes of the conceptual design are often split into a number of subclasses.
111 In order to further describe the behavior of systems, these class diagrams can be complemented by state diagram or UML state.
112 Dynamic Models Computer models offer a means of interpreting and analyzing the dynamics of real- world systems ranging from population growth to ozone depletion and a new section on modeling in genetics. Dynamic Modeling introduces an approach to modeling that makes it a more practical, intuitive endeavor. The book enables readers to convert their understanding of a phenomenon to a computer model, and then to run the model and let it yield the inevitable dynamic consequences built into the structure of the model. Dynamic Modeling uses STELLA software to develop simulation models.
Dynamic modelling is modelling of processes over time. In dynamic modelling new attributes are computed as a function of attribute changes over time. After the general concepts) are explained, each part of the script will be described, from the structure in the seperate sections of the program (script) for a dynamic model to some special contents of a dynamic modelling script (timeinput, report) and the running of a script.
113 Sequence Diagrams. A sequence diagram is a kind of interaction diagram that shows how processes operate with one another and in what order. It is a construct of a Message Sequence Chart. A sequence diagram shows object interactions arranged in time sequence. It depicts the objects and classes involved in the scenario and the sequence of messages exchanged between the objects needed to carry out the functionality of the scenario. Sequence diagrams are typically associated with use case realizations in the Logical View of the system under development. Sequence diagrams are sometimes called event diagrams, event scenarios, and timing diagrams.
A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur. This allows the specification of simple runtime scenarios in a graphical manner.
114
Sequence Diagram
115 State Chart Diagram
A state diagram is a type of diagram used in computer science and related fields to describe the behavior of systems. State diagrams require that the system described is composed of a finite number of states; sometimes, this is indeed the case, while at other times this is a reasonable abstraction. Many forms of state diagrams exist, which differ slightly and have different semantics.
State diagrams are used to give an abstract description of the behavior of a system. This behavior is analyzed and represented in series of events that could occur in one or more possible states. Hereby "each diagram usually represents objects of a single class and track the different states of its objects through the system".
State diagrams can be used to graphically represent finite state machines. This was introduced by C.E. Shannon and W. Weaver in their 1949 book "The Mathematical Theory of Communication". Another source is Taylor Booth in his 1967 book "Sequential Machines and Automata Theory". Another possible representation is the State transition table.
116
State Chart Diagram
117 Activity Diagram Activity diagrams are graphical representations of workflows of stepwise activities and actions
with support for choice, iteration and concurrency. In the Unified Modeling Language, activity diagrams can be used to describe the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control.
Activity diagrams are constructed from a limited number of shapes, connected with arrows. The most important shape types: rounded rectangles represent actions; diamonds represent decisions; bars represent the start (split) or end (join) of concurrent activities; a black circle represents the start (initial state) of the workflow; an encircled black circle represents the end (final state).
Arrows run from the start towards the end and represent the order in which activities happen.
Hence they can be regarded as a form of flowchart. Typical flowchart techniques lack constructs for expressing concurrency. However, the join and split symbols in activity diagrams only resolve this for simple cases; the meaning of the model is not clear when they are arbitrarily combined with decisions or loops. While in UML 1.x, activity diagrams were a specialized form of state diagrams, in UML 2.x, the activity diagrams were reformalized to be based on Petri net-like semantics, increasing the scope of situations that can be modeled using activity diagrams. These changes cause many UML 1.x activity diagrams to be interpreted differently in UML 2.x
118
Activity Diagram
119 System Decomposition
Analysis vs Design Analysis Recall that analysis activities focus on understanding the application domain Analysis activities will produce: o use case model (functional requirements) o a set of non-functional requirements and constraints o an object model (describing participating objects/entities) o a sequence diagram for each use case, describing interactions between objects Analysis model -- describes everything from the actors' point of view o This serves as the basis of communication between client and developers Design Design activities focus on the solution domain o Internal structure of the system, how will it be realized? System design will produce: o Design goals -- what qualities of the system should developers optimize? These are often derived from the non-functional requirements o subsystem decomposition -- overall architecture, subsystem responsibilities, mapping to hardware, etc o boundary use cases -- configuration, startup, shutdown, etc Using top-down techniques (divide and conquer), the overall system is usually modeled as a set of subsystems
System Design Concepts Subsystems subsystem -- a smaller, simpler part of a larger system o a subsystem is made of a number of solution domain classes o often one developer or development team is responsible for one subsystem service -- a set of related operations that share a common purpose
120 Subsystem interface -- a set of operations of a subsystem available to other subsystems. o One subsystem provides services to others, specified through its interface o Application Programmer Interface (API) -- refinement of general subsystem interface subsystem decomposition -- the activity of identifying subsystems, their services, and their relationships to each other Coupling and Cohesion coupling -- the strength of dependencies between two subsystems o strongly coupled == changes to one subsystem likely to affect the other o loosely coupled == relatively independent (as long as the interface doesn't change) o Goal: Strive for loose couplings. Don't share attributes; use operations and a well-specified interface cohesion / coherence -- strength of dependencies within a subsystem o High cohesion: subsystem contains related objects performing similar tasks o Low cohesion: subsystem contains a number of unrelated objects o Goal: Strive for high cohesion Subsystems -- Layering and Partitioning Subsystems can related to each other in more than one way. Two common ways: layering and partitioning Partitioning - dividing a system into independent peer subsystems o subsystems provide services to each other on same level of abstraction o each subsystem responsible for a different class of services Layering - a more hierarchical decomposition o A layer is a grouping of subsystems providing related services to a higher level of abstraction o a layer depends on lower layers o a layer has no knowledge of higher layers o Closed architecture -- a layer depends only one the one immediately below it o Open architecture -- a layer can access the one immediately below, as well as deeper layers
121 A common example of layers -- web applications through TCP/IP o Application layer - interface to the user (web browser, SSH client, etc) o Transport layer - Client/server programs communication through sockets. Focus on communication betweem programs. o Internet (network) layer - routing of individual packets from machine to machine o Physical and DataLink layer (Ehternet and physical wire) - sending chunks of data over the physical medium Subsystem decomposition often involves both partitioning and layering
Architectural styles A software architecture includes specification of o system decomposition o global control flow o handling of boundary conditions (startup, shutdown, failures, etc) o communication between subsystems There are many architectural styles. Here are some common ones (not a comprehensive list, just examples) that can be used as a basis for the architecture of some systems o Repository o Model/View/Controller o Client/Server o Peer-to-peer o Pipes and Filters o Three-tier and four-tier Repository Architecture There's a single data structure called the central repository Subsystems all access and modify data from this repository Subsystems are mostly independent Examples: o Database management systems o Compilers -- different subsystems (compiler, linker, debugger, etc) access and update central parse tree and symbol table Pro: Well suited for changing data processing tasks
122 o New services can be added simply by building a new subsystem Con: Repository can become a bottleneck o Performance -- speed of access o Modifiability of repository -- high coupling with each subsystem Model/View/Controller (MVC) Architecture Has three types of subsystems: o Model - responsible for domain data, information o View - responsible for displaying information to user o Controller - Manage interactions with user Special case of repository architecture o a model subsystem acts as repository. Doesn't depend on other subsystems. o Controller subsystems dictate the control flow Rationale: user interfaces (view, control) more likely to change than domain knowledge o Similar to idea of entity, boundary, and control objects Well-suited for interactive systems, especially if multiple views of the same model are needed Con: Can have same performance bottleneck as repository systems Client/Server Architecture One or many servers provide services to instances of other subsystems, called clients. o Generalization of repository architecture o But not restricted to a single server (e.g. WWW) Client calls on the server, which performs some service and returns the result o Client knows the interface of the server (its service) o Server does not need to know the interface of the client o Request for services usually done with remote procedure call mechanism or common protocols (like HTTP) Users interact only with the client Well suited for distributed systems that manage large amounts of data Example: information systems with a central database: o Client: customized user interface, front-end data processing, intiation of remote procedure calls to server across network
123 o Server: central data management, data integrity, database consistency, security, concurrency (multiple user access) o This example is a special case of repository architecture, where the repository is managed by the server process Other common client/server examples: HTTP, SSH, FTP, Telnet, etc Peer-to-peer Architecture Generalization of Client/Server Architecture Subsystems can act as both clients and servers o Each subsystem can request and provide services More difficult to design o Greater possibility of deadlocks o More complicated control flow Example: Database receives queries from application but also sends notifications to application when data have changed More well-known examples: File sharing applications o Napster: Started as a sort of peer-to-peer architecture, mixed with a little client/server. Central servers kept lists of peers, then file transfers were done peer-to-peer o Later networks were more true peer-to-peer (FastTrack, Limewire, eDonkey) Three-tier and Four-tier Architectures Three-tier: Subsystems organized into three layers o interface layer -- includes all boundary objects that deal with the user o application logic layer -- includes control and entity objects. Main processing, rule checking, etc o storage layer -- storage, retrieval, and query of persistent objects Four-tier: Same as three-tier, except interface layer is decomposed into: o Presentation client layer -- located on user machines o Presentation server layer -- located on one or more servers Four-tier is kind of a mix between three-tier and client/server o allows for different presentation clients o allows reuse of presentation objects (from the server) across clients o Example: A banking system's clients -- ATM, web interface (internet banking), application client for bank employees --
124 can all provide same services, defined in the presentation server layer Pipe and Filter Architecture Filters: the subsystems o Process data received through inputs o Send results to outputs (to other subsystems) Pipes: the associations between subsystems o Connects output of a filter to input of another Filters dont know about each other. They only know about the format of data received on input pipes Good for systems that apply transformations to streams of data Not so good for systems with complex user interaction, or interaction between components Example: Unix shell
<h2 align="center"> About </h2> <table> <tr><td colspan="2" align="center"><asp:Image ID="Image1" runat="server" ImageUrl="~/Images/hd_profile.jpg" /> </td></tr><tr><th> Profile</th> <td> The Housing Development Finance Corporation Limited (HDFC) was amongst the first to receive an 'in principle' approval from the Reserve Bank of India (RBI) to set up a bank in the private sector, as part of the RBI's liberalisation of the Indian Banking Industry in 1994. The bank was incorporated in August 1994 in the name of 'HDFC Bank Limited', with its registered office in Mumbai, India. HDFC Bank commenced operations as a Scheduled Commercial Bank in January 1995.</td></tr> <tr> <td colspan="2" align="center"> <asp:Image ID="Image3" runat="server" ImageUrl="~/Images/hd_award_march11.jpg" /> </td></tr> <tr><th>Quality</th><td>HDFC Bank began operations in 1995 with a simple mission: to be a "World-class Indian Bank". We realised that only a single- minded focus on product quality and service excellence would help us get there. Today, we are proud to say that we are well on our way towards that goal. It is extremely gratifying that our efforts towards providing customer convenience have been appreciated both nationally and internationally.</td></tr> <tr> <td colspan="2" align="center"><asp:Image ID="Image2" runat="server" ImageUrl="~/Images/hd_loans.jpg" /> </td></tr> <tr><th>Citizen's Charter</th><td>Our Citizen's Charter offers relevant information about the products, facilities and services we provide. Customers can also find out about the time norms for various banking transactions, our policy on customer information, and the process followed for redressal of grievances.</td></tr></table> <br /> <br /> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server"> <h1>Careers</h1> <table> <tr> <th>Welcome to Our Careers Page</th></tr> <tr><td align="center"> <asp:Image ID="Image1" runat="server" ImageUrl="~/Images/Careers.jpg" /></td> </tr> <tr><th>Join the Winning Team</th></tr><tr><td></td></tr> <tr><td>HDFC Bank is a young and dynamic bank, with a youthful and enthusiastic team determined to accomplish the vision of becoming a world-class Indian bank. Our business philosophy is based on four core values - Customer Focus, Operational Excellence, Product Leadership and People. We believe that the ultimate identity and success of our bank will reside in the exceptional quality of our people and their extraordinary efforts. For this reason, we are committed to hiring, developing, motivating and retaining the best people in the industry.</td></tr> <tr><td></td></tr> <tr><th>Mssion and Business Strategy</th></tr> <tr><td> Our mission is to be "a World Class Indian Bank", benchmarking ourselves against international standards and best practices in terms of product offerings, technology, service levels, risk management and audit & compliance. The objective is to build sound customer franchises across distinct businesses so as to be a preferred provider of banking services for target retail and wholesale customer segments, and to achieve a healthy growth in profitability, consistent with the Bank's risk appetite. We are committed to do this while ensuring the highest levels of ethical standards, professional integrity, corporate governance and regulatory compliance.</td></tr></table> <br /> <br /> </asp:Content>
153 <asp:ListItem>Yes</asp:ListItem> <asp:ListItem>No</asp:ListItem> </asp:RadioButtonList></td></tr> <tr><td colspan="4"></td></tr> <tr><td colspan="4"><asp:CheckBox ID="CheckBox1" runat="server" Text="I Authorize HDFC Bank to call me Or SMS me with reference to my Application." /></td></tr> <tr><td colspan="4"></td></tr> <tr><td colspan="4" align="center"><asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Images/submit.jpg" onclick="ImageButton1_Click" /></td></tr> <tr><td colspan="4"></td></tr> <tr><td colspan="4">Please Remember Your Application Number in Reference to your Appliation.</td></tr> <tr><td colspan="4"></td></tr> <tr><td colspan="4"> </td></tr> </table> <br /> <br /> </asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <h2>Welcome to HDFC Online banking</h2> <br /> <table> <tr> <th>Introduction </th> </tr> <tr> <td> <asp:Image ID="Image1" runat="server" ImageUrl="~/Images/logo_hdfcbank.gif" /> </td> </tr> <tr> <td> HDFC Bank Limited (BSE: 500180, NSE: HDFCBANK, NYSE: HDB) is an Indian financial services company based in Mumbai, Maharashtra that was incorporated in August 1994. HDFC Bank is the fifth or sixth largest bank in India by assets and the first largest bank by market capitalization as of November 1, 2012. The bank was promoted by the Housing Development Finance Corporation, a premier housing finance company (set up in 1977) of India.</td></tr> <tr> <td>As on December 2012, HDFC Bank has 2,776 branches and 10,490 ATMs, in 1,399 cities in India, and all branches of the bank are linked on an online real-time basis. As of December 2012 the bank had balance sheet size of Rs. 3837 billion. For the fiscal year 2011-12, the bank has reported net profit of 5167.07 crore (US$950 million), up 31.6% from the previous fiscal.</td></tr> <tr> <td>On March 14, 2013 an online magazine named Cobrapost.com released video footage from Operation Red Spider showing high ranking officials and some employees of HDFC bank willing to turn black money into white which is violation of Money Laundering Control Act. After this The government of India and Reserve Bank of India have ordered an inquiry</td></tr></table><br /> </asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server"> <h2>FAQ's</h2> <table><tr><td>Frequently Asked Question's</td></tr></table> <table> <tr><th align="left">Can I get the benefit of Verified by Visa/ MasterCard SecureCode security at online stores that are not participating in the service?</th></tr> <tr><td>No. you can only get the benefits of Verified by Visa/ MasterCard SecureCode at the participating online stores. However a number of online stores have the service available to them. In the meantime, if an online stores you trust is not yet participating; you can perform the transaction using NetSafe.</td></tr> <tr><th align="left">Must I open an account in each location where I have my company office?</th></tr> <tr><td>No. As a Premium Current Account holder you have the advantage of a single account, multi-location banking facility.</td></tr> <tr><th align="left">What is the rate of interest I will earn on the balance in my Savings Account?</th></tr> <tr><td>Interest on a Savings Account is paid at 4.00% p.a. on a daily end of day balance, w.e.f. May 3, 2011.</td></tr> <tr><th align="left">What is the frequency of interest pay-out?</th></tr> <tr><td>Interest earned on your Savings Account balance shall be credited to your account on a half yearly basis in the months ended September and March.</td></tr> <tr><th align="left">What happens if I don't use my savings account for a very long time?</th></tr> <tr><td>The account becomes dormant if there are no customer initiated transactions (excludes system generated transactions like credit interest, debit interest), in the account for a continuous period of two years. If the account status is 'Dormant', transactions through Direct Banking Channels like ATM, NetBanking, PhoneBanking are not be allowed by the Bank.</td></tr> <tr><th align="left">What are the documents required to open a Savings Account?</th></tr> <tr><td>To open a Savings Account you have to:</td></tr> <tr><td>1. Submit your identity proof and address proof along with your latest passport size photographs.</td></tr> <tr><td>2.Submit self-attested copies and originals for verification</td></tr> <tr><th align="left">How long can the tenure of my loan be?</th></tr> <tr><td>Usually the tenure of an Auto Loan is 3 to 7 years. The tenure also depends on the type of car you wish to purchase. If it is a super premium car the tenure is restricted to 3 years only. In addition, the higher your tenure is the lower your EMI will be, but the total interest outflow is higher.</td></tr> <tr><th align="left">What documents do I need to submit after the loan amount is disbursed?</th></tr> <tr><td>You can keep the original car documents, registration certificate, insurance policy and tax papers with you; but you need to submit photocopies of these documents to the bank.</td></tr> <tr><td></td></tr></table> <br /> </asp:Content>
/* this rule styles <h1> and <h2> tags that are the first child of the left and right table columns */ .rightColumn > h1, .rightColumn > h2, .leftColumn > h1, .leftColumn > h2 { margin-top: 0px; }
/* PRIMARY LAYOUT ELEMENTS ----------------------------------------------------------*/
.page { width: 960px; background-color: #fff; margin: 20px auto 0px auto; border: 1px solid #496077; }
void Application_Start(object sender, EventArgs e) { // Code that runs on application startup
}
void Application_End(object sender, EventArgs e) { // Code that runs on application shutdown
}
void Application_Error(object sender, EventArgs e) { // Code that runs when an unhandled error occurs
}
void Session_Start(object sender, EventArgs e) { // Code that runs when a new session is started
}
void Session_End(object sender, EventArgs e) { // Code that runs when a session ends. // Note: The Session_End event is raised only when the sessionstate mode // is set to InProc in the Web.config file. If session mode is set to StateServer // or SQLServer, the event is not raised.
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server"> <h1>Request Submitted Successfully</h1> <table><tr><th>We will Contact you Shortly in reference to your application Request.</th></tr>
<tr><td> </td></tr> <tr><td>For Any Future Queries related to Your Application please contact our <asp:HyperLink ID="HyperLink1" runat="server" Font-Bold="True" Font-Underline="False" ForeColor="Black" NavigateUrl="~/cstmr_care.aspx">Customer Care</asp:HyperLink> </td></tr></table> </asp:Content>
196 Auto_loan.aspx.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data;
public partial class Auto_loan : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); } } public string GetRandomString(int seed) {
198 Crdt_card.aspx.cs 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 crdt_card : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); } } public string GetRandomString(int seed) {
200 Emp_details.aspx.cs using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Data.SqlClient;
202 Emp_login.aspx.cs 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 Emp_login : System.Web.UI.Page { static SqlConnection con=new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { Label3.Text = "";
} protected void Button1_Click(object sender, EventArgs e) { SqlCommand cmd = new SqlCommand("select * from emp_login where emp_id='" + TextBox1.Text + "'and pass='" + TextBox2.Text + "'", con); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(ds); if (ds.Tables[0].Rows.Count == 0) { Label3.Text = "Wrong Login ID or Password"; } else { Response.Redirect("Emppanel.aspx"); } } protected void Button2_Click(object sender, EventArgs e) { TextBox1.Text = ""; TextBox2.Text = ""; } }
203 Emp_pay.aspx.cs 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;
205 Homeloan.aspx.cs 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 homeloan : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); } } public string GetRandomString(int seed) {
207 Personal_loan.aspx.cs 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 personal_laon : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); } } public string GetRandomString(int seed) {
209 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 Saving_account : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;"); static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); }
211 Transaction.aspx 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 Login : System.Web.UI.Page { static SqlConnection con = new SqlConnection("server=.;database=e_banking;trusted_connection=true;");
static DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { for (Int32 x = 0; x <= 50; x++) { TextBox1.Text = GetRandomString(x); }
Code Efficiency In an effort to maintain computational efficiency and to allow the eventual adaptation of the algorithm to face tracking applications, intense optimization of the code has been performed. Although further development is in progress, the algorithm is currently fast and compact enough to run interactively on most generic platforms.
The input to the coding phase of the HDFC Online Banking was it designs. During the coding phase, different modules identified in the design are coded according to the modules specification. At the end of the design phase, we have not only the module structure (e.g. structure chart) of the system but also the module specification where the data structure and algorithms for each module are specific. The objectives of coding phase are to transform the design of the system, as given by its module specification, into high-level language code and then to unit test this code.
Adherence to some will-defined and standard style of coding called coding standards increase the code efficiency. The reasons for adhering to a standard coding style are the following:
213 We have used a simpler method of login coding that is far lesser than the usual ones Web user Control have been used to reduce the design code of the website Only Necessary Reports have been created
Following are the coding standards and guidelines adopted during the development of HDFC Online Banking.
1. Variable naming has been done according to their use. 2. Objects naming have been done usefully and after applying full thought process. 3. Suitable Messages have been provided
214 Validations Checks
Validation is the process of determining whether a fully developed system conforms to its requirements specification. The aim of validation is to make the final product error free. At present, as for as the validation is concern, the HDFC Online Banking has fully conformed to all type of validations as per the requirements. All the validations, which may terminate the application or give unwanted results, have been handled in various modules of project. An interactive message box will appear on the screen for all the validations. Validations: common to all Modules
1. Duplicate records can not stored 2. User can not cross the limit of any field specified in the data structures of various tables. 3. Those fields which are only displayed on screens by retrieving data from other tables cannot be modified by the user. 4. Those fields which are in number data type; user can not insert text or character or string value in this field. 5. User cant enter incorrect date in date data type field.
215
216 Testing
Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test. Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (errors or other defects). Software testing can be stated as the process of validating and verifying that a software program/application/product: 1. meets the requirements that guided its design and development; 2. works as expected; and 3. can be implemented with the same characteristics.
Testing objectives: The following are the testing objectives: a. Testing is a process of executing a program with the intent of finding an error. b. A good test case is one that has a high probability of finding an as-yet- undiscovered error. c. A successful test is one that uncovers an as yet undiscovered error.
Principles of Testing
217 The basic principles that guide software testing are as follows:
Which Test finds which Error? Possible error Can be best found by Example Syntax errors Compiler, Lint Missing semicolons, Values defined but not initalized or used, order of evaluation disregarded. Data errors Software inspection, module tests Overflow of variables at calculation, usage of inappropriate data types, values not initialized, values loaded with wrong data or loaded at a wrong point in time, lifetime of pointers. Algorithm and Software inspection, Wrong program flow, use of wrong formulas and
218 logical errors module tests calculations. Interface errors Software inspection, module tests, component tests. Overlapping ranges, range violation (min. and max. values not observed or limited), unexpected inputs, wrong sequence of input parameters. Operating system errors, architecture and design errors Design inspection, integration tests Disturbances by OS interruptions or hardware interrupts, timing problems, lifetime and duration problems. Integration errors Integration tests, system tests Resource problems (runtime, stack, registers, memory, etc.)
Testability:
Software testability is simply how easily (a computer program can be tested). The following characteristics are considered that lead to testable software. 1. Operability: The better it more efficiently it can be tested. 2. Observability: What you see is what you test. 3. Controllability: The better we can control the software, the more the testing can be automated and optimized. 4. Decomposability: By controlling the scope of testing, we can more quickly isolate problems and perform smarter resting. 5. Simplicity: The less there is to test, the more quickly we can test it. 6. Stability: The fewer the changes, the fewer the disruptions to testing. 7. Understandability: The more information we have, the smarter we will test.
219
Test Case Design: The design of testing can be divided into two broad categories: Black Box testing: White Box testing:
Black Box testing: When computer software is considered, black-box testing alludes to tests that are conducted at the software interface. Although they are designed to uncover errors, black box tests are used to demonstrate that software functions are operational, that input is properly accepted and output is correctly produced , and the integrity of external information(e.g. A database) is maintained.
White Box testing: White box testing of software is predicated on close examination of procedural detail. Logical paths through the software are tested by providing test cases that exercise specific sets of conditions and loops. The main disadvantage with white box testing is even for smaller programs the number of possible logical paths can be very large. In the present project Black box testing is used.
220 Software testing Strategies: Software testing is one element of a broader topic that is often referred to as verification and validation (v &v).Verification refers to the set of activities that ensure that software correctly implements a specific functions. Validation refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements. In other words v &v can be stated as Verification : Are we building the product right. The following issues were considered for a successful software testing strategy is to be implemented. 1. Specific product requirements in a quantifiable manner long before testing commence. 2. State testing objectives explicitly. 3. Understand the users of the software and develop a profile for each user category. 4. Develop a testing plan that emphasizes rapid cycle testing. 5. Build robust software that is designed to test itself. 6. Use effective formal technical reviews to assess the test strategy and test cases themselves. 7. Develop a continuous improvement approach for the testing.
221 Unit Test Procedures:
Unit testing is normally considered as an adjusted to the coding step. After source code is developed, reviewed and test cases were established. Functional behavioral were tested for each module. Each test case is coupled with a set of expected results. Because a module is not a standalone program, driver and/or sub software must be developed for each unit test. Driver is nothing more than a main program that accepts test case data, passed such data to the module. Unit testing is simplified when a module with high cohesion is designed. When Only one function is addressed by a module, the number of test cases are reduced and errors can be more easily predicted and uncovered.
222 SECURI TY MEASURE TAKEN
As far as the security is concern, HDFC Online Bankings will provide a reliable security system for protecting the HDFC database from unauthorized access. One module (i.e. LOGIN) will take care of the security of the project database. To implement the LOGIN modules, one table has been included into the project database called LOGIN, which will store information about various users who will interact with the project. Details like USERID, PASSWARD will be stored in this Table. Users will be allowed to access project database only after feeding their LOGIN and PASSWARD correctly. LOGIN module and accordingly the access right to HDFC database will be given to the user. In this project, user means employee and administrator can also access the project.
223 Work Schedule and Cost Estimate
Work Schedule Scheduling is an important activity of project Managers. In order to schedule a project, a software project manager to do the following: a. Identify the tasks needed to complete the project b. Determine the dependency among different tasks c. Establish the most likely estimates for the duration of the identified tasks. d. Plan the starting and ending dates for various tasks e. Determine the critical path (i.e. the chain of tasks that determine the duration of the project). As for as the HDFC Online Banking is concern, the whole system was divided into main activities shown in dataflow Diagram. Dependencies between these activities; duration of each activity, its starting and ending dates; and total duration of the project can be easily identified by going through these charts.
224 COST ESTI MATI ON
Project Cost Estimation is an important task of the Software Project Management. During project planning, project manager estimates the following parameters: Project size, Effort required developing the software, project duration and cost. These estimates help not only in quoting the project cost to the customer, but also in resource planning and scheduling. In this project I used two software are MICROSOFT SQL Server 2005 & MICROSOFT Visual Studio 2005 and I had done expense on printing and stationary.
225
Reports
226 Customer Report
227 Employee Payroll Report
228 Employee Details Report
229 LI MI TATI ONS OF THE PROJ ECT
Though this project HDFC ONLINE BANKING is very useful and has several advantages over a manual system. Use of this no doubt will result in faster processing and a better service but it has some limitations also. These limitations include
Online Payment system is not being created for receive charges of the services provided by the HDFC. Function for storing the scanned copy of the document is not being provided.
230 FUTURE SCOPE:- In future HDFC ONLINE BANKING can be extended to take online tests for Learning Driving License and conduct surveys to get the information about the various Issues Related to Road and Vehicle Rules and regulation. And further it can be used to implement a Better Complaint System.
231 Bibliography
The main books, and websites which were consulted for the project development, are : Beginning Asp.net NIIT www.w3schools.com for the Html Code msdn.microsoft.com www.asp.net Sql Server 2005 2000 NIIT MSDN Library Software Engineering Roger S. Pressman, K. K. Aggarwal