banking system

118
A ON Submitted in partial fulfillment of the requirement for the award of Degree of BACHELOR OF COMPUTER APPLICATION (BCA) SUBMITTED TO SUBMITTED BY MR. PRAMOD SHARMA SACHIN KUMAR SHARMA VIPIN KUMAR PRADEEP KUMAR 1 SUBMITTED TO Department of Computer Science

Upload: ranaindia2011

Post on 17-Dec-2015

52 views

Category:

Documents


2 download

DESCRIPTION

Banking System File

TRANSCRIPT

A

ON

Submitted in partial fulfillment of the requirement for the award of Degree ofBACHELOR OF COMPUTER APPLICATION (BCA)

SUBMITTED TO

SUBMITTED BYMR. PRAMOD SHARMA

SACHIN KUMAR SHARMA

VIPIN KUMAR

PRADEEP KUMAR

SUBMITTED AT

SHRI RAM GROUP OF COLLEGES

We would like to take this opportunity to express our gratitude towards all the people who have in various ways, helped in the successful completion of our project.

We must convey our gratitude to Mr. PRAMOD SHARMA for giving our constant source of inspiration and help in preparing the project, personally correcting we work and providing encouragement throughout the project.

We also thank all our faculty members for steering we through the tough as well as easy phases of the project in a result oriented manner with concern attention.

DATE: SACHIN KUMAR SHARMA

VIPIN KUMAR

PRADEEP KUMAR

DECLARATION

We are the students of BCA 6th sem. of Shri Ram College, Muzaffarnagar (Affiliated to C.C.S. University, Meerut). Hereby declare that the project report on banking system is our original work.

We also declare that we have done our work self accurately even then if over mistake or error had kept in, we request to our faculties to points out these error and guide our to remove these error for our future. We are also thankful for our faculties.

Title (cover page)

Title of the Project

Acknowledgement

Certificate from Study Center

Contents Introduction System Objectives Problem Definition

Project Analysis

Feasibility study

Cost & benefit analysis

Project Design

System Analysis

Design Hints & Guidelines

System Design & Development

System Design

System Development

Data Structure Diagram

Tables Description

Coding

System Evaluation and Testing

System Implementation

System Maintenance

System Documentation Glossary BibliographyINTRODUCTION

COMPUTERIZED BANKING SYSTEM is a tool that it provides efficient services to its Customers. The various types of operations and dealings take places in the Bank. But we had undertaken the work of Computerization of New A/C, Drafts and Staff Management which covers the activities related to Bank, & All Types of activities corresponds to the Customer, These Operations was manually operated by the clerks and Manager and the operations were really time consuming task to perform. The present system will help them a lot.

System design is a solution, How to approach to the creation of a new system. This important phase is composed of several steps. It provides the understanding and procedural feasibility study. Design gose through a logical and physical stage of development. Logical design reviews the present physical system, prepares input output specification, makes edit, security and control specification, detail implementation plans, prepares a logical design walkthrough. The physical design maps out the details of the physical system, plans the system implementation and specifies any new hardware and software.

System design is a highly created process that can be greatly facilitated by the following:

Strong problem definition,

Pictorial description of the existing system, and

Set of requirements of the new system. Input Design

The most common cause of errors in data processing is inaccurate input data errors entered by the data entry operator. It can be controlled by the input design. Input design is the process of converting user oriented inputs to the computer based formats. The goal of the input design is to make data entry as easy, logical and free from as many errors as possible.Output Design Computers are the most important sources of information to the users are fed into the computers to acquire the necessary outputs. The computers can provide the we enough output in the form of information regarding various items to the users. The major form of output is a hard copy from the printer. Printouts are designed around the output requirements of the user(s). Interface Design Forms are designed to control the redundancy, increased operator accuracy maximum readability, easy data entry and elimination of unnecessary data to provide easier checking and correction of data. Keeping in view the users requirements, the input/output forms have been designed and developed for easy data entry and query handling. Based on the various types of inputs to be fed into the computer in using this system, several inputs forms have been designed to make data entry easier and accurate.Database Design The collection of data is usually referred to as the database. The database contains information about the particular enterprise. Database systems are designed to manage larger bodies of information. The management of data involves both the definition of the structures for the storage of the information and the provision for the mechanism to manipulate the information. In addition the database system must provide the safety of the information stored in the database, despite system crashes or attempts at unauthorized access.

The definition of our problem lies in manual system and a fully automated system.

Manual system:

The system is very time consuming and lazy. This system is more prone to errors and sometimes the approach to various problems is unstructured.

Technical system:

With the advent of latest technology if we do not update our system then our business result in losses gradually with time. The technical systems contains the tools of latest trend i.e. computers printers, fax, Internet etc. The systems with this technology are very fast, accurate, user-friendly and reliable..

Need of banking system:A few factors that direct us to develop a new system are given below -:

1) Faster System

2) Accuracy

3) Reliability

4) Informative

5) Cancellations

FEASIBILITY STUDY:-

Feasibility study before development or customization of software we think following of the major points, which includes following: -

a) Economical

b) Technical

c) DurationEconomical:-

This study about the software basically give the suggestion like if we develop software for our organization than how much it will forfeitable, workable as well as economical. If we developing a software which very economical but not profitable there it is also wrong decision. So for we economical study about the system table following of the point.

How much costing of the software?

What is the output of the customization?

What are the advantages in compression manual we check

Whether it is time or not?

Whether it is use friendly or not?

It is mountable for long term.

Understanding about the software

Corrective of software.

Technical:-

We also consider some technical points about development of software.

We see whether the software is reliable or not.

Whether it is work time for long time or not.

What are the languages as well as OS is used for development of software.

It provides security or not.

Software is reusable or not.

Software is updated or not.

Software is flexible or not whether software can maintain.

Duration:-It is also a major point when we develop software. We also consider about time, how much time software place to complete because for a big organization time factor is money for full successful of the software also Tax some times so we have consider from starting to last that means beginning to software.

ORGANISATION CHART

s

In developing cost estimates for a system, we need to consider servable cost elements. Among them hardware, personnel, facility, operating, & supply costs.

Hardware Cost:-

Hardware cost relate to the actual purchase or lease of the computer & peripherals Ex. Printer, disk, floppy drive, the best way to control for this cost is to treat it as an operating cost.

Personnel Cost:-

This includes staff salaries & benefits (health insurance, vocation time, sick pay etc.) as well as pay for those involved in developing system. Costs incurred during the development of a system are one time costs & are labeled developmental costs. Once the system is installed the costs of operating &maintaining the system become recurring costs.

Facility Costs:-

Facility costs are expenses incurred in the preparation of the physical site where the application or the computer will be i operation. This includes wiring, flooring, acoustics, lighting & air conditioning. These costs are treated as one time costs.

Operating Cost:-

Operating costs include all costs associated with the day to day operating system. The amount depends on the number of sifts the nature of the application & the caliber of the operating staff. There are various ways of covering operating costs to overhead. Another approach is to change each authorized user for the amount of processing they request from the system. The amount charged is based on the computer time, staff time & the volume of output produced.

Supply Cost:-

These costs are variable costs that increase with increased use of paper, ribbon, disks & the like they should be estimated & include in the overall cost of the system.

Equipment Cost:-

Equipment costs include rental & annual deprecation of any equipment such as typewriter, copies, computer terminals & microcomputers used in connection with the system. Other costs associated with the equipment, such as insurance & maintenance should also be included.

SYSTEM:-A system can be defined as A set of arrangement of elements that are organized to accomplish some method, procedure or control by processing information.

System Analysis stages down the broad frame work of strategy stage into its minute details. This is the stage where intensive user interaction assumes a lot of importance.

System DEVELOPMENT:-

Development Phase, translates a set of requirements into an operational system that we call Software. At early stages of hardware development a hardware engineer does not reach for a soldering iron, similarly the Software engineer Should not reach the compiler. Design is accomplished first.

The first phase of development concentrates on design. The design phase for software with a description of architecture and data design. That is a modular structure is developed first, interfaces are defined and data structure is established. Design criteria are used for the assessment of quality. This preliminary design step is reviewed for completeness and tractability to software requirements.

Procedural aspects of each modular component of the software design are considered next, and is following by the CODING the generation of program using an appropriate programming language or CASE tool occurs after the design is complete. Software engineering methodology views coding as a consequence of good design. Code is then reviewed for style and clarity, but should otherwise be directly traceable to a detailed design description.

DETAILED ENTITY RELATIONSHIP DIAGRAM:-

Identification of all the Entities of importance for which data need to be stored and defined their relationship with each other was a major task at this level. All the identified entities were mapped on a E-R-diagram. It is of utmost importance to cover all the necessary entities and defined their relationship with each other correctly because any errors at this stage would result in the reworking in the further stages.

Unique Identification, UID:-

A unique identification is required to be identified and associated with each other at this stage.

Function Hierarchy:-

Function hierarchy is used for grouping related functions under a parent function. The hierarchy is balanced so that all elementary functions come in the same level of hierarchy. A good hierarchy drawn at this stage helped in menu generation at a later stage.

The Basic Objective:-

The basic objective of the system design was the system being developed should be able to fit into the existing system, that is it become a part of the system and it should not lead to any changes which can adversely affect the existing system. The airways having many activities which effect one another so the approach of airways reservation is generated for the simplification of data handling.

The approach would bring in the following benefits:- Standardization of the methods and procedures.

Availability of information centrally.

Minimizing future maintenance requirements.

Reduction in the learning process for new personal.

Packaged systems:-

The systems would have the following features:-

Completely menu drive interface with the provision of initiating even the batch jobs by the user himself.

On Line help

Strong documentation

Validation checks done by the system itself

Minimization of input to the system to produce maximum output.

Designing is the most important part of the software development. It requires a careful planning and logical thinking on the system designer. Designing a software means to plan how the various parts of the software are going to achieve the desired goal. It should done with the utmost care because if this phase contains any errors then that will be going to affect the performance of the system, as a result it may take more processing time, more coding, extra work load etc.

As the software is to be designed in MS-ACCESS RDBMS, the concept of the database is must for quality designing. It will be designing of the database, designing of forms, designing of reports.

Separate tables have been created for each entity of the system. In order to make the response time negligible, all the tables have been created in the Memory File System. Moreover indexes have been created on the tables in the number of records have been made random.

The design stages takes the final specification of the system from the analysis stages and finds the best way of fulfilling them, given the technical environment and previous decision on required level of automationThe system design is carried out in two phases:-

Architectural Design Detailed Design

ARCHITECTURAL DESIGN:-

The high level design maps the business system described in the program requirement specification to logical data structure, it involves:

Identification of the entities that constitutes the system:-

All the entities related to the module were identified, checked and consolidated

Identifying the Relationships:-

The relationships between the entities, within and outside the system were identified.

Attribute definition:-

The pertaining of the entities was identified and their field characteristics were specified.

Normalization:-

The entities were normalization, after first and the second normalization was achieved for all the entities.

Interface:-

Interface with the other systems were done and attributes related to external entities identified.

DETAILED DESIGN:-

The low level design maps the logical model of the system to a physical database design.

Table Mapping:-

The Table was created for the system using the design view, which is the part of the MS_ACCESS. This has provision to create the entities and attributes into the Tables. The name of the entity is taken as the table name.Default Database Design:-

In Access we can create the tables very easily. The tables divide into two parts. These names are as follow: -

ROWS

COLUMNSThe steps involved here were:-

1. Generation of table

2. Check Validation Rule

3. Check Validation Text

4. Primary Keys

5. Unique Keys

6. Foreign Keys

Relationship:-

Ms-Access allows many types of relationship between the tables. These relationship names are as follow: -

One to One Relationship

Many to One Relationship

Many to Many Relationship

Program specifications:-

The program specifications were written for the master, transactions, reports and queries. The logic for each field, block and form were written so that anyone who does not know the system will be able to code the logic. Field validations and user-friendly error messages were written as part of the program specification.

WINDOW XP used as PLATFORM

Windows 98 is latest version of windows and also GUI. This is best then another Operating system and easy.Windows 98 has come up with another bonanza, that is, Network Communication with other users. The users can connect with other users to share data files and peripheral devices, like Printers.

The Communication tools of Windows 98 include E-Mail and connection to Internet.

VISUAL BASIC used as FRONT ENDVisual Basic uses front-end programming because VB use Back end as like MS-ACCESS and any other Database.

In VB we can use easy database connectivity and design the Form, Report, and others MDI applications with the help of Database.

VB facility the database controls which helps the changing, modifying, deleting and adding facility in database with the help of command buttons and controls.

VB is used for see the Data in many modes such as with the help of MSFlexiGrid Controls, Textbox, Combo box, List box, Image, Picture control and other.

Visual Basic gives the different types of accessing the Database (RDO, ADO and DAO)

Visual Basic is complete programming language that supports programming constructs for looping, decision making and efficient processing. These constructs include

For.next

Do.loop

Selectcase

Withend with

If.then.else

Visual Basic helps of creation Menus, Master-Details Form.

MS-ACCESS 2007 used as BACK END

Ms-Access is a database and partially RDBMS. In Access we can easily create Database design and give the validations. Access allows the many types of relations between the tables.

Access used as Backend with the Visual Basic. Access allows creating the Primary Key, Foreign Key and Unique Key. In Access we can store the data in to the table for using the wizard options.

Table name: Types of AccountField nameData typeDescription

Account typeTextTypes of Account

DescriptionTextDetails of account

Minimum BalancecurrencyBalance of the account

RatenumberRate of interest

Table name: Details of check book

Field nameData typedescription

Checkbook numbertextCustomer of checkbook number

Account numbertextDetails of account

Date issuedDate/timeIssued of checkbook

Start numbertextOpen of a/c

Table name: Details of customer

Field nameData typeDescription

Account numbertextCustomer of a/c number

First nametextCustomer of first name

Last nameTextCustomer of last name

Office addresstextAddress of office

Home addresstextAddress of Home

Date of birthDate/timeD.O.B.of customer

Account typetext

GendertextMale\female

E-mailtextE-mail address of customer

Office phonetext

Home phonetext

BalancecurrencyTypes of currency

Access codeText

Date openedDate/timeDate & time open account

Digital signtext

Customer pictureText

ATM card numberText

Expiry dateDate/timeExpiry date of a/c

Table name: Details of customer query

Field nameData typedescription

Query IDtextCustomer of query ID

Account numbertextDetails of account

Querytext

StatusTextStatus of a/c

Date receivedDate/time

Table name: Details of stop payment

Field nameData typeDescription

Check numberTextCustomer of check number

Account numberTextDetails of account

InstructionsTextInstructions for customer

Table name: Details of Transactions

Field nameData typedescription

Transaction IDTextTransaction ID of customer

Transaction dateDate/timeDate of transaction

Transaction typeText

Transaction modetextOpen of a/c

From a/c numberText

To a/c numberText

Check numberText

AmountCurrencyAmount of currency

StatusText

Table name: Details of users

Field nameData typedescription

Login IDtextLogin ID of users

Employee IDtext

passwordtextPassword of User ID

RoleText Role of users

Menu chart of proposed system

BANKING SYSTEM

ENTER PASSWORD

MENU

emp Password

EMPLOYEE ACCOUNT DRAFTS

Quit

Verify LOGIN

ENTER Password

If valid password

Login File

Login File

Customer File

Check for A/C

s Printed Slip Of

Draft to

Main menu

Customers

Deposits

Withdrawal

Transactions

To genrarate reports

Account settings

Bank settings

ACCOUNT TYPEFIELD NAMEDATA TYPE

AccountIDText

AccountNameMemo

DescriptionText

InterestRateText

MinBalanceText

CUSTOMERSFIELD NAMEDATA TYPE

CustomerIDText

FirstNameText

LastNameText

contactTitleText

IDNOText

AccountNoText

AddressText

PostalCodeText

Location Text

phoneNoText

EmailText

DateJoinedDate/Time

AccountTypeText

BalanceText

DEPOSITES FIELD NAMEDATA TYPE

TransactionIDText

CustomerIDText

AccountNoText

NarrationText

AmountDepositedText

ModeText

ChecknoText

DateDate/Time

BANKFIELD NAMEDATA TYPE

Bank nameText

Branch_NoNumber

Add1Text

Add2Text

Add3Text

StateText

CountryText

PinText

WITHDRAWALSFIELD NAMEDATA TYPE

TransactionIDText

customerIdText

AccountNoText

NarrationText

AmountWithdrawnText

DateDate/Time

CUSTOMERS'frmCustomers

Private Sub cboAccType_Click()

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblAccTypes WHERE AccountName='" & cboAccType.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

If rsTemp.RecordCount > 0 Then lblMin = rsTemp(4)

End Sub

Private Sub cmdNavigate_Click(Index As Integer)

Select Case Index

Case Is = 0 'Move First

Call MoveToFirst(rsCustomers)

Call DisplayCustomers(rsCustomers)

Case Is = 1 'Move Previous

Call MoveToPrev(rsCustomers)

Call DisplayCustomers(rsCustomers)

Case Is = 2 'Move Next

Call MoveToNext(rsCustomers)

Call DisplayCustomers(rsCustomers)

Case Is = 3 'Move Last

Call MoveToLast(rsCustomers)

Call DisplayCustomers(rsCustomers)

End Select

End Sub

Private Sub cmdOptions_Click(Index As Integer)

Dim i As Integer

Select Case Index

Case Is = 0 'Add

For i = 0 To 4: cmdOptions(i).Enabled = False: Next i

cmdOptions(1).Enabled = True: cmdOptions(2).Enabled = True

Call UnLock_Form_Controls(Me)

Call clear_Form_Controls(Me)

Call GenerateNewCustomerCode

txtCustomer(0).Locked = True

txtCustomer(1).SetFocus

rsCustomers.AddNew

txtDateJoined.Value = Date

Case Is = 1 'Save

If txtCustomer(9).Text = "" Then txtCustomer(9).Text = "N/A"

For i = 0 To 10

If txtCustomer(i).Text = "" Then

Call Messager

txtCustomer(i).SetFocus

Exit Sub

End If

Next i

If CCur(txtCustomer(10).Text) < CCur(lblMin.Caption) Then

MsgBox "Opening balance should be atleast " & lblMin.Caption & " for this type of Account", vbInformation

Exit Sub

End If

z = 0

For X = 0 To 13

Select Case X

Case Is = 3: rsCustomers(X) = cboContactTitle.Text

Case Is = 11: rsCustomers(X) = txtDateJoined.Value

Case Is = 12: rsCustomers(X) = cboAccType.Text

Case Else: rsCustomers(X) = txtCustomer(z).Text: z = z + 1

End Select

Next X

For i = 0 To 4: cmdOptions(i).Enabled = True: Next i

cmdOptions(1).Enabled = False: cmdOptions(2).Enabled = False

Call Lock_Form_Controls(Me)

Case Is = 2 'Cancel

rsCustomers.CancelUpdate

For i = 0 To 4: cmdOptions(i).Enabled = True: Next i

cmdOptions(1).Enabled = False: cmdOptions(2).Enabled = False

Call DisplayCustomers(rsCustomers)

Call Lock_Form_Controls(Me)

Case Is = 3 'Edit

For i = 0 To 4: cmdOptions(i).Enabled = False: Next i

cmdOptions(1).Enabled = True: cmdOptions(2).Enabled = True

Call UnLock_Form_Controls(Me)

txtCustomer(0).Locked = True

Case Is = 4 'Delete

If (MsgBox("Sure To Delete?", vbYesNo + vbQuestion, "Confirm Delete")) = vbYes Then

With rsCustomers

If .BOF = True And .EOF = True Then

MsgBox "Nothing to delete", vbInformation

Exit Sub

End If

.Delete

Call clear_Form_Controls(Me)

.MoveFirst

Call DisplayCustomers(rsCustomers)

End With

Call Lock_Form_Controls(Me)

End If

End Select

End Sub

Public Sub GenerateNewCustomerCode()

Dim lastnumber As Long, newnumber As Long

With rsCustomers

If .BOF = True And .EOF = True Then

lastnumber = 2004000

Else

.MoveLast

lastnumber = !CustomerID

End If

newnumber = lastnumber + 1

txtCustomer(0).Text = newnumber

End With

End Sub

Private Sub Form_Load()

Call create_navigation_buttons(Me)

txtDateJoined.Value = Date

With cboContactTitle

.AddItem "MR."

.AddItem "MRS."

.AddItem "MISS."

.AddItem "DR."

.AddItem "PROFF."

.AddItem "SIR."

.AddItem "REV."

.AddItem "FR."

End With

Call connectDatabase

For X = 1 To rsAccTypes.RecordCount

cboAccType.AddItem rsAccTypes(1) '!AccountName

rsAccTypes.MoveNext

Next X

Call DisplayCustomers(rsCustomers)

Call Lock_Form_Controls(Me)

End Sub

Public Sub DisplayCustomers(myrs As Recordset)

Dim z As Integer

With myrs

If .BOF = True And .EOF = True Then Exit Sub

On Error Resume Next

z = 0

For X = 0 To 13

Select Case X

Case Is = 3: cboContactTitle.Text = myrs(X)

Case Is = 11: txtDateJoined.Value = myrs(X)

Case Is = 12: cboAccType.Text = myrs(X)

Case Else: txtCustomer(z).Text = myrs(X): z = z + 1

End Select

Next X

StatusBar1.SimpleText = CStr("Record :" & .AbsolutePosition & " of " & .RecordCount)

End With

End Sub

Private Sub txtCustomer_LostFocus(Index As Integer)

If Index = 10 Then

If IsNumeric(txtCustomer(10).Text) = False And Not (txtCustomer(10).Text = "") Then

MsgBox "Invalid Input", vbOKOnly + vbCritical, "Error"

txtCustomer(10).Text = ""

txtCustomer(10).SetFocus

End If

End If

End Sub

DEPOSITES

'frmDeposits

Dim currBalance As Currency

Private Sub cboCustomerNo_Click()

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

With rsTemp

If .RecordCount > 0 Then

txtDeposits(1).Text = !AccountNo

txtDeposits(2).SetFocus

Else

MsgBox "Invalid Customer Code", vbInformation

txtDeposits(1).Text = ""

Exit Sub

End If

.Close

End With

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

If rsTemp.RecordCount > 0 Then

lblBalance.Caption = rsTemp(13)

Else

Exit Sub

End If

rsTemp.Close

End Sub

Private Sub cmdOptions_Click(Index As Integer)

Dim i As Integer

Select Case Index

Case Is = 0

If cboCustomerNo.Text = "" Then

Call Messager

cboCustomerNo.SetFocus

Exit Sub

End If

If txtDeposits(1).Text = "" Then

MsgBox "Please Enter the Customer Correctly.", vbInformation

cboCustomerNo.SetFocus

Exit Sub

End If

For i = 0 To 5

If txtDeposits(i).Text = "" Then

Call Messager

txtDeposits(i).SetFocus

Exit Sub

End If

Next i

i = 0

For X = 0 To 7

Select Case X

Case Is = 1

rsDeposit(X) = cboCustomerNo.Text

Case Is = 7

rsDeposit(X) = txtDated.Value

Case Else

rsDeposit(X) = txtDeposits(i).Text

i = i + 1

End Select

Next X

rsDeposit.Update

currBalance = (CCur(lblBalance.Caption) + CCur(txtDeposits(3).Text))

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

If rsTemp.RecordCount > 0 Then

rsTemp(13) = currBalance

Else

Exit Sub

End If

rsTemp.Update

rsTemp.Close

If Check1.Value = 1 Then

DataEnvironment1.rsCommand1.Filter = "TransactionID='" & txtDeposits(0).Text & "'"

DataReport1.Show

End If

Case Is = 1

rsDeposit.CancelUpdate

End Select

Unload Me

End Sub

Private Sub Form_Load()

With cmdOptions(0)

.Picture = LoadPicture(App.Path & "\pictures\n2.jpg")

End With

For i = 1 To 1

Load cmdOptions(i)

With cmdOptions(i)

.Visible = True

.Left = cmdOptions(i - 1).Left + cmdOptions(i - 1).Width + 25

If i = 1 Then

.Picture = LoadPicture(App.Path & "\pictures\n3.jpg")

Else

.Picture = LoadPicture(App.Path & "\pictures\n10.jpg")

End If

End With

Next i

Call connectDatabase

For X = 1 To rsCustomers.RecordCount

cboCustomerNo.AddItem rsCustomers(0)

rsCustomers.MoveNext

Next X

Call clear_Form_Controls(Me)

Call GenerateNewTransactCode

rsDeposit.AddNew

End Sub

Public Sub GenerateNewTransactCode()

Dim lastnumber As Long, newnumber As Long

If rsDeposit.BOF = True And rsDeposit.EOF = True Then

lastnumber = 1000

Else

rsDeposit.MoveLast

lastnumber = rsDeposit(0)

End If

newnumber = lastnumber + 1

txtDeposits(0).Text = newnumber

End Sub

Private Sub optCash_Click(Index As Integer)

Select Case Index

Case Is = 0

txtDeposits(5).Text = "N/A"

txtDeposits(5).Locked = True

txtDeposits(4).Text = "CASH"

txtDeposits(4).Locked = True

Case Is = 1

txtDeposits(4).Text = "CHEQUE"

txtDeposits(4).Locked = True

txtDeposits(5).Text = ""

txtDeposits(5).Locked = False

txtDeposits(5).SetFocus

Case Is = 2

txtDeposits(4).Locked = False

txtDeposits(4).SetFocus

txtDeposits(4).Text = ""

txtDeposits(5).Text = "N/A"

txtDeposits(5).Locked = True

End Select

End Sub

Private Sub txtDeposits_LostFocus(Index As Integer)

If Index = 3 Then

If IsNumeric(txtDeposits(3).Text) = False And Not (txtDeposits(3).Text = "") Then

MsgBox "Invalid Input", vbOKOnly + vbCritical, "Error"

txtDeposits(3).Text = ""

txtDeposits(3).SetFocus

End If

End If

End Sub

REPORTS

'frmReports

Private Sub Command1_Click()

For i = 0 To 2

'If Option1(i).Value = False Then Exit For

Next i

Select Case i

Case Is = 0

DataReport3.Show

Case Is = 1

DataReport4.Show

Case Is = 2

frmTransactions.Show

End Select

Unload Me

End Sub

Private Sub Form_Load()

Command1.Picture = LoadPicture(App.Path & "\pictures\n10.jpg")

End SubBANK SETTINGS

'frmSettings

Public rsSettings As Recordset

Private Sub cmdNavigate_Click(Index As Integer)

Select Case Index

Case Is = 0 'Move First

Call MoveToFirst(rsAccTypes)

Call DisplayCustomers(rsAccTypes)

Case Is = 1 'Move Previous

Call MoveToPrev(rsAccTypes)

Call DisplayCustomers(rsAccTypes)

Case Is = 2 'Move Next

Call MoveToNext(rsAccTypes)

Call DisplayCustomers(rsAccTypes)

Case Is = 3 'Move Last

Call MoveToLast(rsAccTypes)

Call DisplayCustomers(rsAccTypes)

End Select

End Sub

Public Sub DisplayCustomers(myrs As Recordset)

For i = 7 To 11: Text1(i).Text = myrs(i - 7): Next i

End Sub

Private Sub cmdOptions_Click(Index As Integer)

Select Case Index

Case Is = 0 'Add

For i = 0 To 4: cmdOptions(i).Enabled = False: Next i

cmdOptions(1).Enabled = True: cmdOptions(2).Enabled = True

Call UnLock_Form_Controls(Me)

Call clear_Form_Controls(Me)

rsAccTypes.AddNew

Case Is = 1 'Save

For i = 7 To 11

If Text1(i).Text = "" Then Call Messager

Next i

For i = 7 To 11

rsAccTypes(i - 7) = Text1(i).Text

Next i

For i = 0 To 4: cmdOptions(i).Enabled = True: Next i

cmdOptions(1).Enabled = False: cmdOptions(2).Enabled = False

Call Lock_Form_Controls(Me)

Case Is = 2 'Cancel

rsAccTypes.CancelUpdate

For i = 0 To 4: cmdOptions(i).Enabled = True: Next i

cmdOptions(1).Enabled = False: cmdOptions(2).Enabled = False

Call DisplayCustomers(rsAccTypes)

Call Lock_Form_Controls(Me)

Case Is = 3 'Edit

For i = 0 To 4: cmdOptions(i).Enabled = False: Next i

cmdOptions(1).Enabled = True: cmdOptions(2).Enabled = True

Call UnLock_Form_Controls(Me)

Case Is = 4 'Delete

If (MsgBox("Sure To Delete?", vbYesNo + vbQuestion, "Confirm Delete")) = vbYes Then

With rsAccTypes

If .BOF = True And .EOF = True Then

MsgBox "Nothing to delete", vbInformation

Exit Sub

End If

.Delete

Call clear_Form_Controls(Me)

.MoveFirst

Call DisplayCustomers(rsAccTypes)

End With

Call Lock_Form_Controls(Me)

End If

End Select

End Sub

Private Sub Form_Load()

Call create_navigation_buttons(Me)

picLogo.Picture = LoadPicture(App.Path & "\pictures\logo.jpg")

Call create_countries(Combo1)

Call connectDatabase

Set rsSettings = New ADODB.Recordset

rsSettings.Open "tblSettings", cnBank, adOpenKeyset, adLockOptimistic

Call Lock_Form_Controls(Me)

Call DisplayCustomers(rsAccTypes)

End Sub

Private Sub picLogo_DblClick()

With dialog

.DialogTitle = "Choose the Picture"

.FileName = ""

On Error GoTo e

.ShowOpen

If .FileName = "" Then Exit Sub

End With

picLogo.Picture = LoadPicture(dialog.FileName)

FileCopy dialog.FileName, App.Path & "\pictures\logo.jpg"

e:

If Err.Number 0 Then MsgBox Err.Description

End Sub

Private Sub SSTab1_Click(PreviousTab As Integer)

If PreviousTab = 1 Then

For i = 0 To 6

If i < 6 Then Text1(i).Text = rsSettings(i)

If i = 6 Then

Combo1.Text = rsSettings(i)

Text1(i).Text = rsSettings(i + 1)

End If

Next i

Call UnLock_Form_Controls(Me)

Else

For i = 0 To 6

If i < 6 Then rsSettings(i) = Text1(i).Text

If i = 6 Then

rsSettings(i) = Combo1.Text

rsSettings(i + 1) = Text1(i).Text

End If

Next i

rsSettings.Update

End If

End Sub

TRANCTIONS

'frmTransactions

Dim lstItem As ListItem

Private Sub Command1_Click()

If find_tran("tblWithdrawals Where Dated BETWEEN #" & dtFrom.Value & "# AND #" & dtTo.Value & "#", MSFlexGrid1, 1) = False And find_tran("tblDeposits Where Dated BETWEEN #" & dtFrom.Value & "# AND #" & dtTo.Value & "#", MSFlexGrid2, 2) = False Then

MsgBox "No Transaction found. Please Try Again", vbInformation

End If

End Sub

Private Sub set_dat(qr As String)

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * from " & qr, cnBank, adOpenKeyset, adLockOptimistic

With rsTemp

If .RecordCount > 0 Then

cboAccNo = !AccountNo

cboCustomerID = !CustomerID

cboFirst = !FirstName

Else

MsgBox "Invalid customer ID/Name/Account NO. Please Try Again", vbInformation

Exit Sub

End If

.Close

End With

If find_tran("tblWithdrawals Where AccountNo='" & cboAccNo.Text & "'", MSFlexGrid1, 1) = False And find_tran("tblDeposits Where AccountNo='" & cboAccNo.Text & "'", MSFlexGrid2, 2) = False Then

MsgBox "No Transaction found. Please Try Again", vbInformation

End If

End Sub

Private Sub cboCustomerID_Click()

Call set_dat("tblCustomers Where CustomerID='" & cboCustomerID.Text & "'")

End Sub

Private Sub cboCustomerID_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then Call cboCustomerID_Click

End Sub

Private Sub cboFirst_Click()

Call set_dat("tblCustomers Where FirstName='" & cboFirst.Text & "'")

End Sub

Private Sub cboAccNo_Click()

Call set_dat("tblCustomers Where AccountNo='" & cboAccNo.Text & "'")

End Sub

Function find_tran(tbl As String, MSFlex As MSFlexGrid, pu As Integer) As Boolean

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * from " & tbl, cnBank, adOpenKeyset, adLockOptimistic

MSFlex.Clear

If pu = 1 Then

Call create_with(rsTemp)

Else

Call create_dep(rsTemp)

End If

With rsTemp

If .RecordCount > 0 Then

Call LoadListView(rsTemp, MSFlex)

Else

find_tran = False

Exit Function

End If

.Close

End With

find_tran = True

End Function

Private Sub cboAccNo_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then Call cboAccNo_Click

End Sub

Private Sub cboFirst_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then Call cboFirst_Click

End Sub

Private Sub Form_Load()

Option1(1).Value = True

Frame1.Enabled = False

Frame2.Enabled = False

Call connectDatabase

Call create_with(rsWithdrawal)

Call LoadListView(rsWithdrawal, MSFlexGrid1)

Call create_dep(rsDeposit)

Call LoadListView(rsDeposit, MSFlexGrid2)

With rsCustomers

.MoveFirst

For X = 1 To .RecordCount

cboCustomerID.AddItem !CustomerID

cboFirst.AddItem !FirstName

cboAccNo.AddItem !AccountNo

.MoveNext

Next X

End With

Frame1.Enabled = False

End Sub

Private Sub Option1_Click(Index As Integer)

If Index = 0 Then

Frame1.Enabled = True

Frame2.Enabled = True

Else

Frame1.Enabled = False

Frame2.Enabled = False

If find_tran("tblWithdrawals", MSFlexGrid1, 1) = False And find_tran("tblDeposits", MSFlexGrid2, 2) = False Then

MsgBox "No Transaction found.", vbInformation

End If

cboAccNo.Text = "Select..."

cboCustomerID.Text = "Select..."

cboFirst.Text = "Select..."

End If

End Sub

Public Sub create_dep(rs As Recordset)

With MSFlexGrid2

.Rows = rs.RecordCount + 1

.Cols = 8

.Row = 0:

.Col = 0: .Text = "TransactionID"

.Col = 1: .Text = "CustomerID"

.Col = 2: .Text = "AccountNo"

.Col = 3: .Text = "Narration"

.Col = 4: .Text = "AmountDeposited"

.Col = 5: .Text = "Mode"

.Col = 6: .Text = "CheckNo"

.Col = 7: .Text = "Dated"

End With

End Sub

Public Sub create_with(rs As Recordset)

With MSFlexGrid1

.Rows = rs.RecordCount + 1

.Cols = 6

.Row = 0

.Col = 0: .Text = "TransactionID"

.Col = 1: .Text = "CustomerID"

.Col = 2: .Text = "AccountNo"

.Col = 3: .Text = "Narration"

.Col = 4: .Text = "AmountWithdrawn"

.Col = 5: .Text = "Dated"

End With

End Sub

Public Sub LoadListView(myrs As Recordset, MSFlex As MSFlexGrid)

MSFlex.Rows = myrs.RecordCount + 1

MSFlex.Row = 0

With myrs

While Not .EOF

MSFlex.Row = MSFlex.Row + 1

For i = 0 To .Fields.Count - 1

MSFlex.Col = i

MSFlex.Text = .Fields.Item(i)

Next i

.MoveNext

Wend

End With

End SubWITHDRAWAL

'frmWithdrawal

Private Sub cmdOptions_Click(Index As Integer)

Dim i As Integer

Select Case Index

Case Is = 0

If cboCustomerNo.Text = "" Then

Call Messager

cboCustomerNo.SetFocus

Exit Sub

End If

If txtDeposits(1).Text = "" Then

MsgBox "Please Enter the Customer Correctly.", vbInformation

cboCustomerNo.SetFocus

Exit Sub

End If

For i = 0 To 3

If txtDeposits(i).Text = "" Then

Call Messager

txtDeposits(i).SetFocus

Exit Sub

End If

Next i

If (Val(lblBalance.Caption) - Val(txtDeposits(3).Text)) < Val(Label3.Caption) Then

MsgBox "Money cant be withdrawn as the account balance has reached minimum!"

Exit Sub

End If

i = 0

For X = 0 To 5

Select Case X

Case Is = 1

rsWithdrawal(X) = cboCustomerNo.Text

Case Is = 5

rsWithdrawal(X) = txtDated.Value

Case Else

rsWithdrawal(X) = txtDeposits(i).Text

i = i + 1

End Select

Next X

rsWithdrawal.Update

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

If rsTemp.RecordCount > 0 Then

rsTemp(13) = Val(lblBalance.Caption) - Val(txtDeposits(3).Text)

Else

Exit Sub

End If

rsTemp.Update

rsTemp.Close

If Check1.Value = 1 Then

DataEnvironment1.rsCommand2.Filter = "TransactionID='" & txtDeposits(0).Text & "'"

DataReport2.Show

End If

Case Is = 1

rsDeposit.CancelUpdate

End Select

Unload Me

End Sub

Private Sub Form_Load()

With cmdOptions(0)

.Picture = LoadPicture(App.Path & "\pictures\n2.jpg")

End With

For i = 1 To 1

Load cmdOptions(i)

With cmdOptions(i)

.Visible = True

.Left = cmdOptions(i - 1).Left + cmdOptions(i - 1).Width + 25

If i = 1 Then

.Picture = LoadPicture(App.Path & "\pictures\n3.jpg")

Else

.Picture = LoadPicture(App.Path & "\pictures\n10.jpg")

End If

End With

Next i

Call connectDatabase

For X = 1 To rsCustomers.RecordCount

cboCustomerNo.AddItem rsCustomers(0)

rsCustomers.MoveNext

Next X

Call clear_Form_Controls(Me)

Call GenerateNewTransactCode

rsWithdrawal.AddNew

End Sub

Public Sub GenerateNewTransactCode()

Dim lastnumber As Long, newnumber As Long

If rsWithdrawal.BOF = True And rsWithdrawal.EOF = True Then

lastnumber = 15000

Else

rsWithdrawal.MoveLast

lastnumber = rsWithdrawal(0)

End If

newnumber = lastnumber + 1

txtDeposits(0).Text = newnumber

End Sub

Private Sub cboCustomerNo_Click()

Set rsTemp = New ADODB.Recordset

Set rsTemp2 = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

With rsTemp

If .RecordCount > 0 Then

txtDeposits(1).Text = !AccountNo

txtDeposits(2).SetFocus

Else

MsgBox "Invalid Customer Code", vbInformation

txtDeposits(1).Text = ""

Exit Sub

End If

.Close

End With

Set rsTemp = New ADODB.Recordset

rsTemp.Open "Select * FROM tblCustomers WHERE CustomerID='" & cboCustomerNo.Text & "'", cnBank, adOpenKeyset, adLockOptimistic

If rsTemp.RecordCount > 0 Then

lblBalance.Caption = rsTemp(13)

Else

Exit Sub

End If

rsTemp2.Open "Select * FROM tblAccTypes WHERE AccountName='" & rsTemp(12) & "'", cnBank, adOpenKeyset, adLockOptimistic

Label3.Caption = rsTemp2(4)

rsTemp2.Close

rsTemp.Close

End SubMAIN FORM

'MDIForm1

Private Sub Cmdmenu_Click(Index As Integer)

Select Case Index

Case 0: frmCustomers.Show

Case 1: frmDeposits.Show

Case 2: frmWithdrawal.Show

Case 3: frmTransactions.Show

Case 4: frmReports.Show

Case 5: frmSettings.Show

End Select

End Sub

Private Sub MDIForm_Load()

Cmdmenu(0).Picture = LoadPicture(App.Path & "\pictures\1.jpg")

For i = 1 To 5

Load Cmdmenu(i)

Cmdmenu(i).Visible = True

Cmdmenu(i).Left = Cmdmenu(i - 1).Left + Cmdmenu(i - 1).Width + 500

Cmdmenu(i).Picture = LoadPicture(App.Path & "\pictures\" & (i + 1) & ".jpg")

Next i

End SubMODULS

'Module1

Public cnBank As Connection

Public rsCustomers As Recordset

Public rsDeposit As Recordset

Public rsWithdrawal As Recordset

Public rsAccTypes As Recordset

Public rsTemp As Recordset

Public rsTemp2 As Recordset

Public X As Integer

Public Sub create_navigation_buttons(frm As Form)

With frm

With .cmdOptions(0)

.Picture = LoadPicture(App.Path & "\pictures\n1.jpg")

.DisabledPicture = LoadPicture(App.Path & "\pictures\nd1.jpg")

End With

For i = 1 To 4

Load .cmdOptions(i)

With .cmdOptions(i)

.Visible = True

.Left = frm.cmdOptions(i - 1).Left + frm.cmdOptions(i - 1).Width + 25

.Picture = LoadPicture(App.Path & "\pictures\n" & (i + 1) & ".jpg")

.DisabledPicture = LoadPicture(App.Path & "\pictures\nd" & (i + 1) & ".jpg")

End With

Next i

.cmdNavigate(0).Picture = LoadPicture(App.Path & "\pictures\n6.jpg")

For i = 1 To 3

Load .cmdNavigate(i)

With .cmdNavigate(i)

.Visible = True

.Left = frm.cmdNavigate(i - 1).Left + frm.cmdNavigate(i - 1).Width + 15

.Picture = LoadPicture(App.Path & "\pictures\n" & (i + 6) & ".jpg")

End With

Next i

.cmdOptions(1).Enabled = False: .cmdOptions(2).Enabled = False

End With

End Sub

Public Sub create_countries(combobx As ComboBox)

Dim st() As String

Dim st2 As String

Dim i As Integer

st2 = "United Kingdom\Albania\Argentina\Afghanistan\Algeria\Australia\Belgium\Brazil\China\Canada\Colombia\Costa Rica\Czech Republic\Germany\Denmark\Egypt\Ecuador\United Arab Emirates\Finland\France\Greece\Hong Kong\Hungary\Indonesia\Ireland\India\Israel\Italy\Japan\Lebanon\Malaysia\Mexico\Netherlands\Norway\New Zealand\Austria\Philippines\Pakistan\Poland\Portugal\Peru\Puerto Rico\Russia\Saudi Arabia\Sweden\Spain\Singapore\Switzerland\Thailand\Turkey\Taiwan\Tajikistan\Tanzania\Tunisia\Tuvalu\United States of America\Ukraine\Venezuela\South Africa\Uganda\Uzbekistan\Vatican City\Vietnam\Yemen\Zimbabwe"

st = Split(st2, "\")

For i = LBound(st) To UBound(st)

combobx.AddItem (st(i))

Next i

combobx.ListIndex = 25

End Sub

Public Sub connectDatabase()

Set cnBank = New ADODB.Connection

With cnBank

.Provider = "Microsoft.JET.OLEDB.4.0"

.ConnectionString = App.Path & "\dbBank.mdb"

.Open

End With

Set rsCustomers = New ADODB.Recordset

rsCustomers.Open "tblCustomers", cnBank, adOpenKeyset, adLockOptimistic

Set rsDeposit = New ADODB.Recordset

rsDeposit.Open "tblDeposits", cnBank, adOpenKeyset, adLockOptimistic

Set rsWithdrawal = New ADODB.Recordset

rsWithdrawal.Open "tblWithdrawals", cnBank, adOpenKeyset, adLockOptimistic

Set rsAccTypes = New ADODB.Recordset

rsAccTypes.Open "tblAccTypes", cnBank, adOpenKeyset, adLockOptimistic

End Sub

Public Sub clear_Form_Controls(frm As Form)

Dim ctrl As Control

For Each ctrl In frm.Controls

If TypeOf ctrl Is TextBox Then

ctrl.Text = ""

ElseIf TypeOf ctrl Is ComboBox Then

ctrl.Text = ""

End If

Next ctrl

End Sub

Public Sub Messager()

MsgBox "Please Ensure that all fields are Complete", vbExclamation

End Sub

Public Sub Lock_Form_Controls(frm As Form)

Dim ctrl As Control

For Each ctrl In frm.Controls

If TypeOf ctrl Is TextBox Then

ctrl.Locked = True

ElseIf TypeOf ctrl Is ComboBox Then

ctrl.Locked = True

ElseIf TypeOf ctrl Is DTPicker Then

ctrl.Enabled = False

End If

Next ctrl

End Sub

Public Sub UnLock_Form_Controls(frm As Form)

Dim ctrl As Control

For Each ctrl In frm.Controls

If TypeOf ctrl Is TextBox Then

ctrl.Locked = False

ElseIf TypeOf ctrl Is ComboBox Then

ctrl.Locked = False

ElseIf TypeOf ctrl Is DTPicker Then

ctrl.Enabled = True

End If

Next ctrl

End Sub

Public Sub MoveToFirst(rsFirst As Recordset)

With rsFirst

Call CheckDatabaseStatus(rsFirst)

.MoveFirst

If .BOF Then

.MoveFirst

MsgBox "This is the first Record..", vbInformation

Exit Sub

End If

End With

End Sub

Public Sub MoveToPrev(rsPrev As Recordset)

With rsPrev

Call CheckDatabaseStatus(rsPrev)

.MovePrevious

If .BOF Then

.MoveFirst

MsgBox "This is the first Record..", vbInformation

Exit Sub

End If

End With

End Sub

Public Sub MoveToNext(rsNext As Recordset)

With rsNext

Call CheckDatabaseStatus(rsNext)

.MoveNext

If .EOF Then

.MoveLast

MsgBox "This is the last Record..", vbInformation

Exit Sub

End If

End With

End Sub

Public Sub MoveToLast(rsLast As Recordset)

With rsLast

Call CheckDatabaseStatus(rsLast)

.MoveLast

If .EOF Then

.MoveLast

MsgBox "This is the last Record..", vbInformation

Exit Sub

End If

End With

End Sub

Public Sub CheckDatabaseStatus(rsStat As Recordset)

With rsStat

If .BOF = True And .EOF = True Then

MsgBox "There are currently No records Available for this module", vbInformation

Exit Sub

End If

End With

End Sub

During system testing, the system is used experimentally to ensure that the software does not fall, i.e. it will run according to specification and in the way users expect. Special test data input for processing and the result examination. A limited number of users may be allowed to use the system so that analysis can seen whether they use it in unforeseen ways. It is preferable to discover any surprises the organization implements the system and encounters them later on. This type of testing which allows only a few, selected users to work on the system is known as BETA TESTING. On the other hand the testing done by the developer (s), themselves is known as ALPHA TESTING.

Testing is generally performed by persons other than those who the original programs to ensure complete and unbiased testing and more reliable software.

The norms followed during the testing phase were thoroughly tested by me, the developer, I was required to release the programs source code. The source code was copied into the area. If some changes were desired in the program, I was suitably informed and was required to made the necessary modifications.

Following testing procedures were used

UNIT TESTING

Unit testing is the testing of a single program module in an isolated environment. The testing of the processing procedure is the main focus. In this regard, all the modules were separately tested first as isolated and complete entities. This helped a lot in discovering problems related to a single module and rectifying them in the contest of the module itself, rather than considering module-related problem in a global context.

INTEGRATION TESTING

Integration testing is the process of testing the interfaces among system modules. Some testing ensures that data moves between system as intended. In the regard of a particular module was obtained in correct format, so that the next module could accept it appropriately. This could be done either after the entire system was developed, or in stages than one module was developed.

SYSTEM TESTING

System testing is the testing of the system against its initial objectives. Such testing is done either in a simulated environment or in a live environment.

In the case of the system which I developed, the testing was done in a pseudo-real environment. The organization has an area called the Development , where all development work is carried out, whereas the Client is the area where all on-line work is undertaken. Since the kind of work which I was involved dealt with insertion, updating and in tables, all the work was developed in the Development area. I call the environment pseudo-real since all data which is being used for on-line transaction can be copied into the tables of the Development and live data can be worked on. Thus whatever would be the output on the Client is reflected exactly on the Development also. Thus, discovery of error became simpler in that the errors which would occurs in the real-time environment were exactly duplicated in the Development environment.

All the above types of testing were carried out and various extreme cases were also introduced to check for whether the system responded as expected. The various Forms, database packages, procedures, function; visual basic programs and functions were tested to discover they behaved in the manner expected of them and gave accurate results. However, the factor, which helped most in the modification and rectification of the system, was the user response. The user after using the system would invariably come up with some idea to improve the system. Such ideas, if feasible, were incorporated into the system, thus leading to an improvement in the overall efficiency of the system.

Implementation, literally, means to put into effect or to carry out. The system implementation phase of software engineering deals with all activities that take place to convert from the old system to the new. Proper implementation is essential to provide system to meet organizations requirements.

During the implementation phase debugging, documentation of the system was created out, module in the project for

Accuracy of Results,

Minimization of response Time,

Clarity and Simplicity of the code,

Minimization of Hard Coding i.e. (a generic approach was followed )

Minimization of amount of memory used.

Various types of errors were discovered while debugging the modules. These ranged from errors to failure to account for various processing cases. Proper documentation of each module was done by embedding comments in the executable portion of the code. To enhance the readability, comments, indentation, parenthesis, black spaces, blank lines and borders were around the blocks of comments. Care was taken to use descriptive names for table, field, modules, forms etc., The proper use of indentation, parenthesis and blank lines was also ensured during coding.

Testing of the Report Generation module was carried out to find out the response time of the system for the generating reports. To make the response time negligible

Maintenance is a fact of life in the development of information systems. However the making of changes & adjustments dont necessarily signal correction of error or the occurrence of problems.

Among the most frequent changes requested by end users is the addition of information to a report format. Information requirements may be revised as the result of system usage or changing operational needs. Perhaps oversights that occurred during the development process need to be corrected.

Often, the need arises to capture additional data for storage in a database or perhaps when it is necessary to add error detection features to prevent system users from inadvertently taking an unwanted action.

These are the realities of application maintenance, when they occur, however they are an indication that the system is being used & that it is serving a useful function rather than being shelved by the intended, such as :

More accurately defining the users requirements during system development.

Assembling better systems documentation.

Making better use of existing tools & techniques.

Including proper comments.

Documentation is the process of collecting, organizing, storing and maintaining on paper (or some relatively permanently medium ) a complete record of why application were developed, for whom , what function they perform, and how these functions are carried out. Thus it provides an explanation of how a system operates & what feature characterize models & algorithms. Producing documentation is an important but often neglected activity of programmers.

Documentation of the system always reduces maintenance costs and makes maintenance much more easier. Documentation can be broadly classified as :

1. INTERNAL DOCUMENTATION

2. EXTERNAL DOCUMENTATION

INTERNAL DOCUMENTATION

Internal documentation in the code can be extremely useful in enhancing the understandability of programs. Internal documentation of programs is done by the use of comments. All the languages provide means of writing comments in the programs. Comments are textual statements that are meant for the reader and are not executed. Comments , if properly written, and if kept consistent with the code, can be invaluable during maintenance.

The purpose of comments is not to explain the internal logic of the program the program itself is the best documentation for the details of logic. The comments should explain what the code is done is doing, and not how it is done it.

Comments should be provided for the block of code, particularly those parts of code which are hard to follow.

Providing comments for module is most useful as module form the unit testing , compiling , verification and modification. Comments for a module are often called prologue for the module. It is best to standardized the structure of the prologue of the module. It is desirable that prologue contains the following information :

a) Module functionality or what the module is doing

b) Parameters are their purpose

c) Assumptions about the input, if any

d) Global variable accessed and or modified in the module

As explanation of parameters ( whether they are input only, output only or both input and output , why they are needed by the module and how the parameters are modified ) can be quite useful during maintenance.

In addition to that given above , often information can be included, depending on the local coding standards. Example include :

Name of the author,

Date of compilation

Last date of modification.

Note that if the module is modified, then the prologue should also be modified, if necessary. A prologue that is inconsistent with the internal logic of the module is prologue worse than having no prologue at all.

While coding programs for the Station Coding System special attention has been paid to the internal documentation of the system, in addition to the external documentation. Each program/module has :

Program/module name on top

Date of creation of the program

Last modification date

The S/W tool used to developed the program

Description of input to the program/module

Description of the output produced

How the module is related to other modules

Purpose of variables/constants used

Apart from this comment lines have been inserted wherever it was felt that they were necessary. Moreover meaningful variable names/constants have been assigned to different variable/constants used in the programs.

The project made me realize the significance of developing software for client, where all the eventualities have to be taken care of, unlike at educational institution, where the sole aim is to learn. What may be seen to the developed to be a software complete in all respects, I was required to meet the stringent demands of the in-house client in the materials department. Through this seemed tough at first, I realized that pressure goaded us on to develop better and better applications.

During the project, the real importance for following all the principle of System Analysis and Design drawled on me. I felt the necessity of going through the several stages, because only such a process could make one understand the problems at hand, more so due to the enormous size of data stores involved and their manipulation

In retrospect, I would like to say that the institute provided us with sample opportunities to learn Oracle 8 and its tools. I specifically was able to learn MS-ACCESS and its Tools. I specially was able to learn VISUAL BASIC 6.0. I also succeeded in understanding a number of tricky concept in database, which were earlier only hazy blobs in the realm of our comprehension.However my project library management is an asset to the organization, even then FURTHER ENHANCEMENT are possible in this project such as new forms & reports can be included as and when required.

Unfortunately due to lack of time we can developed any report in this system but this is not the end of this system software, it is beginning. We can change and modify this software due to more requirement of needs and also removed some errors which is finding in this system software.

We also developed some complex reports which is required and makes this software more powerful and friendly for user by which user can handle library data more easily and can calculate all the calculation without any other software i.e., users all the requirements will be fulfill by this software and user can manage all the numeric data calculations.

S.No.TermsDescription

1BACK UPA copy of something preserved to insure against the damage of primary copy.

2DATA BASEA repository of stored data.

3DBMSData Base Management System is a layer if Software between the physical database itself & the users of the system.

4DDData Dictionary, which is a data base that Contains data about data i.e. description of other in the system

5FLOW CHARTFLOW CHART which depicts relation between different entities in the system.

6HARDWAREThe physical equipment in a system comprising of computers, terminals, Keyboards & Other ancillary items.

7ITDInformation Technology Division.

8MENUA group of options from which Selection is to be made.

9MODULEA small components of a larger system

10ON-LINEA term describing people, equipment or Devices that are in direct communication with the computer

11PIPreliminary Investigation

12PROGRAMA sequence of instruction given to the Computer to solve a particular problem.

13PROTOTYPEA development model of the system for test Purpose

14RDBMSA data Base/ Management System in which Relationships are defined by tables.

15RSDRequirement Specification Document.

16SCALABILITYThe ability to increase the performance With the growth in Hardware.

17SOFTWAREComputer program, procedure & Associated documentation concerned with the operator of a system.

BOOK NAME

AUTHOR1. Complete Reference of MS-Office

Techmedia

2. An Introduction to Database Systems

C. J. Date

3. System Analyses and Design

E M. Awad

4. The Complete VISUAL BASIC

Tulec

5. Programming in VB

P.K.M Bride

6. Visual Basic from the Ground Up

Gary Cornell

7. Mastering in VB

Steve 8. VB with MS-Access

Rita Sahoo

9. Visual Basic 6.0

Smith

CUSTOMER

C

D

Modify Staff

MANAGER

STAFF

Manage

Accounts

Computerized banking system

SUBMITTED TO

Department of Computer Science

B

A

A

BANKING

DRAFTS

ACCOUNTS

STAFF

BANKING SYSTEM

Administrator

Delete Staff

Modify Staff

Staff

Login

Administrator

Add New

Delete Account

Modify A/C

Account

Login

Administrator

Add New A/C

Drafts

Login

Administrator

PAGE 86