Professional Documents
Culture Documents
SUBMITTED BY :
Neha
Agrawal
557099
TITLE OF THE
PROJECT
SUBMITTED BY
NEHA AGRAWAL
557099
H.No. 4, NAVJYOTI COLONEY, HAPUR-245101(U.P.)
DATE OF SUBMISSION
UNDER GUIDANCE OF
Miss. SMRITI AGARWAL (M.C.A.)
March, 2011
REGN : 557099
LEVEL : “A’’
E- MAIL : erngupta@gmail.com
ACKNOWLEGMENT
Thanking you
( Neha Agrawal )
SOFTWARE DEVELOPMENT PROCESS
REFRENCES
ABSTRACT
OUTPUT
1. Introduction
3. List of Accounts
5. Daily Transaction
6. Monthly Report
8. Exit
This application gives total information about a Detail, which helps
to add, update and find any record.
USER REQUIREMENT
SPECIFICATIOIN :
Monitor : Color
HARDWARE REQUIREMENT -
Our project requires the following hardware:
SOFTWARE REQUIREMENT-
Window 98/2000/XP.
Ms-office
C++
FEATURES OF C++
Some of the important features of C++ have been discussed below:
Writing C++ code in clear constructs to mark the code run smoothly.
In C++ we can built program from the standard working modules that
communicates with each other rather than having to start writing the
code from search. This leads to saving of development time and higher
productivity.
Cost
System Benefit
The next step in Cost and benefit determination is to categorized cost and
benefits. They may be tangible or intangible, direct or indirect, fixed or
variable. Let us review each category.
Probability
Direct or Indirect Cost and benefits :
Direct Costs are those with which a dollar figure can be directly
associated in a project. They are applied directly to the operation for example,
the purchase of a box of diskettes for $35 is a direct cost because we can
associate the diskettes with the dollars expended.
Indirect Cost are the results of operations that are not directly
associated with a given system or activity. They are often referred to as
overhead. A system that reduces overhead realizes savings. If it increases
overhead it incurs an additional cost.
2. Adaptive Maintenance
3. Perfective Maintenance
Corrective
75% Maintenance
Adaptive 25%
Maintenance,
Perfective
Maintenance and
Preventive
maintenance
4. Preventive Maintenance
The most useful and practical approach is with the understanding that
testing is the processing of executing a program with the explicit intention of
finding errors that is, making the program fail. A successful test, then, is the
one that finds errors.
Hence, it is the ability of the programmer to code exactly as per the design
specification that is to be judged by the testing the software module. The
objective of any testing mechanism is to discover and fix bugs before the
product is delivered to the customer.
System testing assumes that all parts of the system are correct and error-
free. Even though the system has been testing for individual components and
modules, there is no guarantee that the system after integration will work as
per the desire specification. System test involves a holistic approach for testing
the working o the application in totality.
1) Recovery Testing
2) Security Testing
3) Stress Testing
4) Performance Testing
5) Response Testing
6) Alpha Testing
7) Beta Testing
Recovery Testing;
Test the ability of the system to recover from error. Error or any other
processing faults must not overall system to fail. The recovery time of the
system after failure must be within a specific period and tolerance limits.
System failure are forced during this phase of testing by introducing
exceptions to see how the system responds to the case.
Security Testing:
Stress Testing:
Stress test is designed to test the system as to how the system behave in
abnormal situation. The aim of the stress test is to find the limit of quantity or
frequency of input after which the system fail. Stress test cases are designed
which require maximum and other resources; in excess of what a normal
situation demands.
Performance Testing:
Response Testing:
Alpha Testing:
Beta Testing:
Beta testing is carried out at one or more customer’s site by the end
users. It is live testing of software product and not controlled by the
developer.
The customer tests the software using her\his own data records and reports
the bugs or problems in intervals to the developer.
The SDLC is a highly linked set of phases where output of one phase serves
as input to the subsequent phase. Throughout the system development life
cycle, the systems development project needs to be carefully planned and
managed. Therefore, the larger the project, the greater is the need for project
management.
Case Study of Bank Management System
This current manual system of the bank is very tough and time-
consuming and chances of getting errors get very high. This method is
not trustworthy. This problem can be solved in the following steps:
In “Bank Management System” , first of all when user runs this program
a main menu appears on the screen & it provides the introduction of the
project. After this some options will be displayed and you can choose a option
among these.
In the development of software, there are seven step which are as follows:
Software Analysis
Coding
Testing
Implementation
Maintenance
Project initiation
and Planning
Project Identification
Analysis
Logical Design
Physical Design
Implementation
Maintenance
SYSTEM DEVELOPMENT LIFE CYCLE
3) Analysis
4) Logical Design
5) Physical Design
6) Implementation
7) Testing
Analysis
Analysis is the next phase. During this phase, the analysis has
several sub-phases. The first requirements determination the expectations
of users from the proposed system. This sub phase usually involves a
careful study of users from the proposed systems; manual or computerized
that might be replaced or enhanced as part of this project. Next, the
requirements are studied and structured in accordance with their inter-
relationships and eliminate any redundancies. Third, alternative initial
design is generated to match the requirement. Then, these alternatives
are compared to determine which alternative best meet the requirement
in terms of cost and labor to commit to development process.
• Technical feasibility
• Economic feasibility
• Behavioral feasibility
• Operational feasibility
• Legal feasibility
• Time feasibility
[ System design ]
After analysis phase is complete, design of the system begins. The design
consists of logical and physical design of the system. The fourth and fifth
phase are devoted to design of the new and enhanced system . During design,
you must design all aspects of the system from input and output screens to
reports, databases, and computer processes. Design occurs in two phases,
viz, Logical and Physical Design.
Logical Design
E-R DIAGRAMS
P.P. Chen introduced not only E-R model but also corresponding
diagramming technique. It uses three features to describe data.
These are the following:
Entities:
Relationship:
Rectangle Represent
Entity Set
Oval Represent
Attributes
Represent
Diamond Relationship among
entity set
Links attributes to
Line entity sets and entity
sets or relations
BRANCH
SOCIAL
LOAN PAYMENT
LOAN-
PAYMENT
SECURITY PAYMENT
DATE
BRANC DATE
H
CUSTOMER PAYMENT
CUSTOMER
NAME PAYMENT AMOUNT
SREET
NUMBER
CUSTOMER
CITY
BORROWER LOAN-
CUSTOMER PAYMENT
LOAN PAYMENT
A/C
ACCESS DATE BALANCE
NUMBER
CUST.
BANKE TYPE
R
ACCOUNT
DEPOSITER
MANAGER IS
WORK
EMPLOYEE S A
FOR
WORKER
EMPLOYEE
E SOCIAL NAME CUURENT A/C
SECURITY SAVING A/C
DEPENDENT TELEPHONE
NAME NUMBER INTEREST OVERDRAFT
RATE AMOUNT
EMPLOYEE
LENGTH
DATA FLOW DIAGRAM
START DATE
When solving a problem, the entire problem can be tackled at once.
for solving large Problems, the basic principles the time-tested principle of
“divide and conquer”. Clearly, dividing in such a manner that all the
divisions have to be conquered together is not the intent of the wisdom. This
principle, is elaborated, would mean, “divide into smaller pieces, so that each
piece can be conquered separately.”
Problem partitioning, which is essential for solving a complex problem,
leads to hierarchies in the design. That is, the design produced by using
problem partitioning can be represented as hierarchy of components. The
relationship between the elements in this hierarchy can very depending on the
method used. For example, the most common is the “whole-part of
relationship.” In this the system consists of some parts, each part consists of
sub parts, and so on. This relationship can be naturally represented as
hierarchical it must easier to comprehend a complex system. Due to this, all
design methodologies aim to produce a design that has nice hierarchical
structures.
The DFD was first designed by Larry Constantine as way of expressing
system requirements in a graphical form; this led to a modular design. A
DFD, also known as “Bubble chart”, has the purpose of clarifying system
requirements and identifying major transformations that will become
programs in system design. Do it is the starting point of the design phase that
functionally decomposes the requirements specifications down to the lowest
level of detail. A DFD consists of series of bubbles joined by lines represent
data flows in the system.
DFD SYMBOLS
[ SYMBOLS ] [ MEANING ]
Data Flow
Data Store
Although this kind of pilot conversion plan is beneficial for the user, it
places a substantial burden on the implementation team, as it has to maintain
two system in parallel.
Maintenance
The final phase is maintenance. When a system is an operating in an
organization, user sometimes find problem with how it works and often think
better ways to perform its functions. Also, the organization’s requirement
with respect to the system changes with time. During maintenance,
programmers make the changes that user ask for and modify the system to
reflect and support changing business condition. These changes are necessary
to keep the system running and useful. Maintenance is not separate phase but
a repetition of the other life cycle phase required to study and implement the
needed changes, thus, maintenance is an overlay to the life cycle rather than a
separate phase. The amount of time and effort devoted to maintenance
depends a great deal on the performance of the previous phase of life cycle.
There comes a time, however, when an information is no longer performing
as desired, when maintenance cost becomes prohibitive, or when the
organization’s needs has changes substantially.
Such problem are an indication that it is the time to being designing the
system’s replacement, therefore, completing the loop and starting the life
cycle again. Often, the distinction between the major maintenance and new
development is not clear, which is another reason why maintenance often
resembles the life cycle itself.
1) Corrective maintenance
2) Adaptive maintenance
3) Perfective maintenance
4) Preventive maintenance
1. Corrective Maintenance :
Design
Once it is found that the project developed is feasible, Design has to be
developed for the requirement listed in the analysis phase.
Data Dictionary
INITIAL. dat:
acc_no : Account number
name : Name of the Accountee
address : Address of the Accountee
balance : Initial balance of the account
When the any customer will be create an account, the bank will keep the
above fields in their INITIAL.dat file as master account holder.
BANKING.dat:
acc_no : Account number
type : Transaction type by Cash/Cheque
dd,mm,yy : Date of transaction
tran : Transaction for Deposit or Withdraw
interest : Interest rate
amount : Transaction amount
balance : Current balance after transaction
While inputting the data record the following validation will check:
Write a menu driven program for making a daily transaction process for the
displaying following menu options.
This project is developed using C++ class concept and having number of
different user defined function (UDFs) as follows:
line_hor(.....)
This function passes four parameter including three integer and one
character to draw different lines to design the screen beautiful. The
character parameter draw the ASCII character line-by-line on screen.
So, for horizontal line draw this function is useful.
line_ver(.....)
box(.....)
main_ menu(.....)
This is the main screening menu which will display your 6 different prompts
and having different activities. Each prompt is connected with different
functions to perform the respective purposes. Out of all the options the last
one produces another sub-menu for modifying and deleting existing account
information.
While handling the main menu you can press any selective number to
perform the operation or press () (Zero) to exit from the main menu . But
it is also helpful in almost all menus that, you can press () (Zero) to exit
from the respective menu.
edit_menu(.....)
This is one of the sub function which is connected from the main_menu ()
function to perform the modification and deletion operation on banking
account data from INITIAL.dat and BANKING.dat data file.
All the ways the menus are perform the operation according to the account
number (accno) except the “ Open New Account ” of main_menu()function
because, the “ Open New Account ” form automatically creates the account
number after a brief search to the existing account numbers. Basically, the
numbers are generating automatically, like your 1, 2, 3 ... respectively.
add_to_file(.....)
The function add_to_file is used to append new account details into the
INITIAL.dat file. This function receives all the fields as parameter way
from the new _account()function and adds in the data file.
display_list()
This function is used to display all the account data in the screen. Which
display the acconto#, name, address and their respective balance amount in
bank. Also show the total bank balance in the screen. All the records are
extracted from INITIAL.dat data file.
delete_account()
This function is used to delete the account details from INITIAL.dat data file.
This is a copy method which transfers all the records except deleted accno#.
And on the same way the records are reversed from the TEMP.dat file to the
original data file INITIAL.dat.
update_balance()
modify()
When there is any modification occurs to the account name and address
or to the balance mount, the simultaneously it becomes modified in the
INITIAL.dat data file through the modify_account() function. This process
highly depends on the key field account number.
last_accno()
When a new record has to append into the data file, it has to create an
automatic accno#. This process happens when we know the last account
number. To know the last account number by using the last_accno()
function. After finding the last account no. it returns the last account value
into the new_ account()function for generating next account number.
found_ account()
*return_name()
When any reports are occur, on top of the report the account name is
displayed. This function returns the name of the account holder and
displays in appropriate report.
*return_address()
When any reports occur, on top of the report the account address is
displayed. This function returns the address of the account holder and
displays in appropriate report.
give_balance()
recordno()
Either for new_account, update account, or modify account, or modify
balance the recordno() function finds the record position of existing account
no. in the data files, where the transacted re cord can over written.
display()
The function is use d to display the account detail from either INITIAL.dat
or BANKING.dat data file. While the modify() function actives, the accno
parameter searches this account details from the respective file to display
on the screen before modify.
modify_ account()
This function is used to modify the existing accounts name and address at
the existing location. To modify the account it first searches the accounts
location and over written at the same location using seekg() function.
new_ account()
close_ account()
On the same way like delete_ account() function, the close_ account()
function also closes all the transaction record in BANKING.dat data file.
After closing the account there is no transaction records are in the data files.
display_ account()
This function is used to display all the transaction including the initial deposit
in the screen. This is a global report to display all the transaction records in
screen. It shows all the deposits and withdraw column and date wise balance
also.
transaction()
This transaction() function provides a screen for making daily transaction.
While transaction it show the balance amount, and then either a transaction
for deposit(D) or withdraw(W) on either CASH or CHEQUE. Then the
transacted record is updated in the INITIAL.dat and BANKING.dat data
file. Also the same functions used two important function update_balance()
and add_to_file to update balance in INITIAL.dat data file and the transacted
record in BANKING.dat data file.
clear()
The function is used to clear the screen from a specified row and column
position.
month_report()
Like any other banking transaction, when a customer want his monthly
report
this function helps to generate the repot on the screen. When you enter a date
an account number, it searches all the transaction of the previous month of
the enter date and extracts a previous balance (B/F...) amount first on the
screen and then the entered month all the transaction on the screen . Finally
shows the current balance amount also.
add_to_file()
This function is used to append new record into BANKING.dat data file.
While the function actives, it passed all the fields as parameter into the
function and appends as a fresh record into the file.
delete_ account()
This function is used to delete the account from the BANKING.dat data file.
This is a copy method to delete the account from file.
no_of_days()
This function is used to find total number of years, months and days between
two days.
box_for_display()
Effectiveness
Accuracy
Ease to use
Consistency
Simplicity
Attractiveness
Our screens show only that data which is necessary for the particular
action being undertaken.
Screens are kept consistent by locating information in the same area
each time a new screen is accessed.
We have made it easy to move from one screen to another through the
use of icons, which channels the way to other screens apart from direct
access to screens through the main menu.
Rather than jamming all data onto one screen and cluttering up the
screens, we have made use of multiple screens which add the user appeal,
thus are more productive and are prone to less errors.
Data Capture Information
a) Identification of data
The identifying data item in each transaction recode is called “KEY”.
Therefore details of account holder are identified by the unique account
number.
c) Output design
User generally merit the system by its output. Thus, in order to create
the most useful output, system analyst works closely with the user
through the interactive process, until the result is considered to be
satisfactory.
i.) Reports.
ii.) Message ( on screen).
iii.) Document on help.
Our report represent one feature of output to present the various details in
discrete categories. These reports can be viewed on screen as well as can be
kept as a hardcopy in the printed layouts. Our system produces following
reports:
1. List of Accounts.
2. See Individual Account.
3. Individual’s Monthly Report.
After these step, coding in any programming languages can be done and then
the system will be tested against the requirements of the user. The tested
system will be implemented either by direct conversion or parallel conversion.
REFERENCES
Through this project your can keep record of daily banking transaction. This
program is capable of holding any no. of account. This program provides your
following services:
And once you record the specific data and other information can be
used in future for searching its record as per the descriptions of the
personal. This project can also use by different banks.
This project gives the persons many facilities. And you can use the
details without any problem, because in this project there are many
menus so you can use it conveniently.
CODING
CONTENTS
DESCRIPTION
FACULTY CERTIFICATE
ACKNOWLEDGEMENT
USER REQUIREMENT
FEATURES OF C++