Bank Account System a c Project Report With Code. | Electrical Engineering | Digital Technology


1. Synopsis 2. System Analysis  CFD  DFD 3. Fundamental requirement  I/O Requirement  Process Requirement  Storage Requirement  Control Requirement 4. System Design  I/O Design  Process Design  Database Design 5. Coding and Testing 10. Implementation Issue 11. User manual 12. Future Enhancement 13. Conclusion 14. Bibliography

 And last but not least. if not possibly confirmed about the details. The proposed Bank Account system will make current manual system easy to monitor.  The entry of information causing error in entering details of customer.  Then the security of these registers being a major problem. leaving the space for making the entry in future. The various reasons which led to the conversion of the manual system of the bank to the computerized system are as follows: Entry of information in various registers was a very hectic job for the customer.  Even the redundancy of the record was also found through they had taken certain precautions like entering the information with the pencil. . Even a single page should not be teased. efficient and almost error free. The n it should not get into the hand of some unauthorized person. because it is vary calculation oriented and computerized system can be used for given current result always.  Even a lot of times begin spent on the entering of details after crosschecking details from various registers.OBJECTIVES OF THE PROJECT Objective of the project The objective is to create application software which cans mange all about the customers currently working in bank in order relative them from their manual accounting system. which might some problem while producing reports.  The error prone details causing the making in the other related registers.

VGA 15” color monitor for workstation. A CD Rom drive Minimum 48 MB of RAM at workstation. (B) SOFTWARE REQUIREMENTThe software requirements are as follows.HARDWARE & SOFTWARE REQUIREMENT (A) HARDWARE REQUIREMENT- An Intel based central processing unit capable of running any sort of windows operating system such as Pentium based workstation. Minimum 60 MB of free disk space for files. • • • • • Minimum 64 MB RAM (128 MB Desirable) at server. • • • Windows 98 or Above C editor Microsoft word .

Account system involved maintaining data related different customer and his transaction. The computerization system does the job monitoring the record in easy and effective manner as stated below:  Efficiently handles customer. This required greater accuracy. speed that is why the proposed system is the computerization of the existing system. account related data. speed that is why the proposed system is the computerization of the existing system. .INTRODUCTION Bank account system involves maintaining of account related information.  Generates reports. This requires grater accuracy. .  Keeps records of customer account detail and other information.  Monitor transaction and makes related information. The computerized system does the job of the monitoring the information easy and effective manner.

And if in any case we want to see any particular record we have to search a lot of pages. . And in the wastage of time increase. Entering RecordEntry of each record is done manually each time the record is done Manually . Deleting the RecordIn the current system there is no concept of deleting record. Sorting of RecordsAll the record of Account is maintained on papers.DISCRIPTION OF EXISTING SYSTEM In the ongoing process. the records are maintained manually and the paper work is more.each time the record is maintained on paper and it maximizes the maintenance of additional files. Modification of RecordsIf any modification is required it is done directly on the documents being preserved in correspondence to account information. Searching the recordDue to absence of unique identification of person the searching of record takes much time.

which in turn makes the less efficient. As the work is carried out manually so the requirement of the maintenance of record. The system is handled manually so it requires a lot of time to maintain the records. 3. No feasibility 5. As huge data is to be maintaining. The current system is not reliable as manually recording often leads to mistakes and no accurate result are found. 2. 4. . so it’s not easy to maintain the huge data without any error.PROBLEMS 1.

(b)Flexibility in generating of information.DISCRIPTION OF PURPOSED SYSTEM To avoid the limitation of current system it’s necessary to design and develop a new system which have the following benefit and the existing system. (c)Quick retrieved and maintenance of data. (e)User satisfaction. . (a)Everything is automated which reduce the risk factor. (d)Highly accurate.

non technical to be understandable.FEASIBILITY STUDY Feasibility study is a report directed management. brief enough and sufficiently. yet detailed enough to provide the basis for system design. software. The report is a formal document for management. Technical feasibility Technical feasibility centers around the existing system (hardware. etc) into what it can sort the proposed addition. It evaluates the impact of the proposed changes in the area(s) in question. .

Candidate System CRITERIA PRESENT SYSTEM CANDIDATE SYSTEM System accuracy Growth potential Response time User friendly Economical Feasibility 75% Average Average No 90% Good Good Yes Economical analysis in the most frequently used method for evaluation the effectiveness of a candidate system.Present system Vs. This procedure is to determine the benefits and saving that are expected from a candidate system and compare it with cost. .

Present system Vs.Present system Vs. Candidate System CRITERIA System Performance User training System Operation PRESENT SYSTEM Only one task can be performed at a time 15 days or more Fair CANDIDATE SYSTEM One computer system perform more then one task In a minimum time Very Good Operational Feasibility Employees of any organization are inherently resistant to changes because they believe that it will be very difficult to adapt in the new system. Computers have been to facilitate changes. It is more reliable. retraining and changes in employee job status. it is well known that computerization has something to do with transfers. Candidate System CRITERIA Operation time PRESENT SYSTEM The present system takes more time for displaying procedures It is less reliable 75% It takes few minutes CANDIDATE SYSTEM It takes less time in comparison to present system. 95% It takes few seconds Reliability Accuracy Retrieval .

.Feasibility Study A study was undertaken to compare the existing manual system with the new proposed system to be developed.

. Technical Feasibility The proposed system.Economic Feasibility The Bank Account System will considerably reduce the manpower and to time necessary to manage the process and generate the report for the following imperative action to be taken place on the basis of the reports. which is to be developed. The new system will generate the reports automatically optimizing the efforts and time required. will be installed at Personal Computer. Since there are no technical constraints the project is technically feasible. There is however a need of the one technical person to effectively manage the resource in the computer. Thus proposed system is economically feasible because it is being developed with out having to incur the heavy development costs and it will considerably reduce time and effort required managing the present system. The proposed system will require only the Person to manage the Contacts. Since we have to also install the computer systems with the configuration given below:System Configuration    One PC with any version above Windows98 Turbo C editor Switches to connect the computer’s Together So we have necessary Hardware and Software supporting the implementation of the proposed system.

Thus to reduce developing and maintenance cost. The initial investigation has the objective of determining whether the user’s request has potential merits the major steps are defining user requirements. paper follow-up and handling of the data resulting from different information in records. to provide the system in predefine time proper planning of system is necessary. . we need a master plan detailing the steps to be taken. we used the Waterfall Model. cost and schedule. The project leader is responsible for designing the system precisely according the requirement specified by the customer. The methodology has the following phases: • Initial Investigation The most crucial phase of managing system projects is planning to launch a system investigation. Thus for an effective maintenance. There may be a user request to change. the people to be questioned.Behavioral Feasibility Since the new system is going to solve the difficulties that come in the manual system of the procurement. are to build a new one. Since cost of maintenance is much higher than cost of developing system. and outcome expected. The first step in the system development life cycle is the identification of need. Project Plan The Objective of the software project planning is to provide a framework that enables an owner to make reasonable estimate of the resources. improve or enhance an existing system. it felt necessary to develop a Bank account System so that monitoring and maintenance of record data could be done. The initial investigation is one way of handling these needs. For this project. studying the present system and defining the performance expected by the candidate system to meet user requirements. reports in handwritten. So proposed system is completely feasible is terms of the behavior. improve or modify the existing system. He is also responsible for maintenance of the system for certain period of time. The objective is to determine whether the request is valid and feasible before a recommendation is reached to do nothing.

or to building a new one. where to find it. study of manual system if it exits. not how it will done. The objective is to determine whether the request is valid and feasible before a recommendation is reach to do nothing . Analysis is necessary to understand the problem. . In the interest to get more potential information we personally approached the senior officials of the concerned department. Required data are collected as forms. improve or modify the existing system. and what to make of it.INFORMATION GATHERING A key parts of the system analysis is gathering information about the present system. The developer must know that information to gather. The most crucial phase of the managing system projects is analysis. Thus. how to collect it. The proper use of tools for gathering information is the key to successful analysis. Thus Bank Account System is automation of the existing manual system. and on the site observations. main emphasis in analysis phase is on identifying what is needed from system. It requires the people to be questioned. precise abstraction of what the desired system must do. The tools are  The Traditional Interview  Questionnaires  On-site Observation The major objective of on-site observation is to get as close as possible to the real system. • Analysis phase It includes the study of the problem and creation of the System Requirement Specification (SRS) Document. the software system is to solve The analysis model is concise.

System Design 2. for the software to be developed has been prepared. which is used to build the system. Object Design The System Design is the high-level strategy for solving the problem and building a solution. The modules defines in the design phase are coded in ‘C’ language. The design of the system is essentially a blueprint or plan for solution for system. it is important to follow good software engineering practice so that tracing to the design is straightforward and so that the . requires the integration of the various modules developed in the project implementation phases. which reduces overall development cost of system. In implementation. A high quality SRS is prerequisite to high quality software. the allocation of the subsystem to hardware and software component and major conceptual and policy decisions that for the detailed design. • Implementation of the project required the design of the system developed in Integration phase the design phase of the project to be coded and implemented. • Design Phase It begins when the analysis phase and thus requirements documents. The objective of the design process is to be to produce a model or representation of the system.An SRS establishes the basis for agreement between the client and the developer on what the software will do. System design includes decisions about the organization of the system into subsystem. Design process for software system has two levels: 1. An SRS provides references for validation of the final product. The Object Design phase determines the full definitions of the classes and the association used in the implementations as well as interfaces and algorithms of the methods used to implement operations.

or other needed files. we should create a standard package for our application. thus it reduce cost of maintenance and enhancement of the system. Error may begin occur at every stage of the system development where the objectives may be erroneously or imperfectly specified as well as later design and development stage. The development of the software system involved a series of activities where opportunities for injection of human fallibilities are enormous. we should create an Internet package . Packaging and Deployment phase comes after completion of the software. it can only show that software defects are present. floppy or via a network share. One can create two kind of packaging – standard package or internet packages.implemented system remains flexible and extensible. If we plan to distribute on disk. These files may include setup programs secondary files. A package consists of the files that contain compressed project files and any other necessary files the user needs to install and run the application. Application packaging is the act of creating a package that can install our application onto user’s computer. Testing can’t show the absences of defects. • Testing Phase includes the conformation of the acceptance criteria set down in the system requirements specification document. design and coding. The additional files vary based on the type of packaging. Software testing is critical element of software quality assurance and represents the review of specification. If we plan to distribute via an internet or internet site.


CUSTOMER CUSTOMER INFORMATION FILE Order Response Account Process Transaction information .

Em ploy ee det ails ADDITION (1) Em ploy ee details Modif ied Details M OPDIFIC ATI ON (2) Em ploy ee D eleted record Employ ee det ails DELETIN (3) A DISPLA Y EM P (4) Display List A Clerical informa tion .

Password Address Operation code csafacodeccode code Name CUSTOMER Use BANK Name A/c no. v-ppassword Ha ve Mgrpassword MANAGER . V-p-A/c no.



** * * ** * * ** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:48:7 ** * * ***************************************** .WELCOME TO PUNJAB NATIONAL BANK ***************************************** * * ** * * ** * * PLEASE ENTER THE NEW ** * * MANAGERIAL PASSWORD...

WELCOME TO PUNJAB NATIONAL BANK ***************************************** * * ** * * ** ENTER 1 FOR MANAGER * * ** ENTER 2 FOR USER * * ** ENTER 3 FOR EXIT * * ** * * ** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:48:17 ** * * ***************************************** .

** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:48:28 ** * * ***************************************** .PUNJAB CO. ** ENTER 9 for back.. * * ENTER 0 for exit.. ** * * ENTER YOUR CHOICE. BANK OF INDIA ***************************************** * * ** ENTER 1 FOR SEARCH ACCOUNT * * ENTER 2 FOR SHOW ALL ACCOUNT ** ENTER 3 FOR LOCK ALL ACCOUNT * * ENTER 4 FOR UNLOCK ALL ACCOUNT ** ENTER 5 FOR SHOW ALL TRANSACTIONS * * ENTER 6 FOR CHANGE PASSWORD ** ENTER 7 FOR SHOW ONE TRANSACTION * * RECORD.

WELCOME TO PUNJAB NATIONAL BANK ***************************************** * * FOR SIGN UP ENTER 1 ** * * ** FOR LOG IN ENTER 2 * * ** * * FOR QUIT ENTER 0 ** * * ** * * ** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:49:0 ** * * ***************************************** .

WELCOME TO PUNJAB NATIONAL BANK ***************************************** * * ** * * ** ENTER YOUR ACCOUNT NUMBER : * * ** * * ** * * ** * * ** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:49:13 ** * * ***************************************** .

.PLEASE ENTER SOME INFORMATION ***************************************** * * YOUR ACCOUNT NUMBER IS○:2 ** * * ENTER YOUR NAME○:HGH ** * * ENTER THE ADDRESS○:FGHGF ** * * ENTER THE INITIAL AMOUNT : ** (MORE THAN Rs.500):5000 * ** ENTER YOUR OWN PASSWORD:* * * ** * * ** * * ** SHOULD IT SVAE IN DATABASE(Y/N).. * * ** * * ***************************************** * .

[ 0 FOR EXIT ] [ 9 FOR FIRST PAGE ] ***************************************** * * ** * * PUNJAB NATIONAL BANK ** ________________________ * * ** ENTER 1 FOR CHECK ACCOUNT * * ENTER 2 FOR DEPOSIT ACCOUNT ** ENTER 3 FOR WITHDRAW ACCOUNT * * ENTER 4 FOR CHANGE PASSWORD ** ENTER 5 FOR CLOSE ACCOUNT * * ENTER 6 FOR SHOW ACCOUNT ** ENTER 7 FOR CHANGE ADDRESS * * ENTER YOUR CHOICE... ** * * TODAYS DATE IS 16/5/2008 ** * * CURRENT TIME IS 21:49:59 ** * * ***************************************** .

000000 5000.000000 . DATE TIME AMOUNT _______________________________________________________________________ ___ _______________________________________________________________________ ___ DEPOSIT CASH -05/16/08 21:49:57 ______________________________ TOTAL CURRENT BALANCE○: 5000.ACCOUNT NO○:2 NAME○○:HGH _______________________________________________________________________ ___ _______________________________________________________________________ ___ OPERATION CASH/CHEQUE CHEQUE NO.



000000 ** * VERYFYING PERSON A/C NUMBER :0 ** * * RESIDENTIAL ADDRESS○:FGHGF ** * PASSWORD○○:1 ** * * ** * * PRESS ANY KEY TO CONTINUE. ** * * ** * * ***************************************** * * ...PERSON'S DETAIL ***************************************** * * NAME○○:HGH ** * * ACCOUNT NUMBER :2 ** * * TOTAL AMOUNT○:4500.


#include<string.h> #include<string.h> #include<stdlib.h> #include<stdio.h> #include<conio.h> #include<dos.h> typedef struct { long unsigned int v_ac_num,ac_num; int close; float amount; char name[20],address[50],pas[12],ch; }database; typedef struct { long unsigned int ac_num; float amount1; char operation[9],ope[6],ch_no[10],name1[20],d[10],t[10]; }database1; typedef struct { char initials[15]; }database2; database2 a1; database b1,b2; database1 c1; long unsigned int cnt(); void deleterecord(); void showdata(); void menu(); void menu1(); char search1(long unsigned int*); void border1(); void show(); void menu2(); void menu3(); void menu5(); void menu6(); void showalltrans(); void end(); void lock();

void unlock(); void search(); void deposit(); void withdraw(); char check1(char []); void showtrans(); void ch_mng_pas(); void change_pas(); void pas_overflow(); void change_address(); void restore(long unsigned int ,char[],int,int,char[],float*); void getdata(); void menu7(); void set_mgr_pas(); char check(long unsigned int*,char[]); void home_page(); /*this function prints the message when password is overflow */ void pas_overflow() { int i,j; clrscr(); textmode(C40); textcolor(LIGHTRED); gotoxy(4,5); cprintf("YOUR PASSWORD IS OVERFLOW"); gotoxy(2,10); cprintf("PLEASE ENTER SMALLER PASSWORD"); textcolor(YELLOW); gotoxy(3,24); cprintf("PRESS ANY KEY TO CONTINUE..."); getch(); textmode(C80); } /*this function print the big text border*/ void border1() { int i,j,k; textmode(C40); k=1; textcolor(13); gotoxy(1,5); for(i=0;i<39;i++) {

cprintf("*"); k++; gotoxy(k,5); } k=5; gotoxy(40,k); for(i=0;i<19;i++) { cprintf("*"); k++; gotoxy(40,k); } k=40; gotoxy(k,24); for(i=0;i<39;i++) { cprintf("*"); k-- ; gotoxy(k,24); } k=24; gotoxy(1,k); for(i=0;i<19;i++) { cprintf("*"); k--; gotoxy(1,k); } } /*this function find the desired record from te databse*/ char search1(long unsigned int *a) { char t='n'; FILE *fp1; fp1=fopen("data123.txt","rb+"); rewind(fp1); while(fread(&b2,sizeof(b2),1,fp1)==1) { if(*a==b2.ac_num) { if('y' && b2.close==0) { t='y'; break; } break;

txt". return t.d.ac_num) { if(strcmp(b2. getdate(&d). cprintf("%d/%d/%d". return t.char name[12]) { char t='n'. gotoxy(3. textcolor(RED). textcolor(GREEN).sizeof(b2).d. } && (b2."rb+").close==0)) { t='y'.d. rewind(fp3).da_year).da_mon. } /*this function matched the particular persons password*/ char check(long unsigned int *tmp. cprintf("TODAYS DATE IS"). break. clrscr().pas.19). FILE *fp3. gotoxy(20.da_day. while(fread(&b2.1. fp3=fopen("data123.} } fclose(fp1). } /*this function displays the big text date*/ void date() { struct date d. } } fclose(fp3).fp3)==1) { if(*tmp==b2. } /*this function displays the big text time*/ .19).

ti_sec). gotoxy(k. cprintf("%d".k.3). cprintf("CURRENT TIME IS").21). gotoxy(40. } k=40. textcolor(RED). cprintf("%d". k++. cprintf(":").3).24). for(i=0.k). textcolor(RED+BLINK). } k=3.i<22. gotoxy(k. gettime(&t). textcolor(RED). gotoxy(3. k=1.24).j.i++) { cprintf("*"). textcolor(RED). k-. for(i=0.t. cprintf("%d". k++. } .i++) { cprintf("*"). gotoxy(20.. } /*this function displays the border*/ void border() { int i.i++) { cprintf("*").i<66.i<40. gotoxy(40.void time() { struct time t. cprintf(":").t.ti_min). gotoxy(k. for(i=0. gotoxy(k.k). textcolor(GREEN).ti_hour). textcolor(RED+BLINK).21).t.

char ch[]="WELCOME TO PUNJAB NATIONAL BANK".d. gotoxy(3.k=24.23). delay(40). gettime(&t).da_day.i<22. clrscr().d. cprintf("CURRENT TIME IS").3).k).ch[i]). gotoxy(1. textcolor(14).d. } /*this function displays the small text date and time*/ void date1() { struct date[i]!=NULL. for(i=0.k). textcolor(RED). k--.20). textmode(C40). for(i=0.da_mon.i++) { cprintf("%c". cprintf("%d/%d/%d". struct time t. time(). getdate(&d). } date(). textcolor(GREEN). textcolor(GREEN). gotoxy(12. gotoxy(56. . cprintf("TODAYS DATE IS"). gotoxy(58. gotoxy(1.i++) { cprintf("*").da_year). textcolor(RED).20). } } /*this function displays the title of the bank*/ void bank() { int i.

&no)."rb+").name[20].23).i=0. textcolor(GREEN+BLINK). gotoxy(p. gotoxy(1.txt". textcolor(GREEN). clrscr().ti_sec).name1[20]. cprintf("%d". textcolor(WHITE).ti_min). char ch.isfound='n'. cprintf("DELETION OF RECORD")."rb+"). cprintf("%d". .g='n' . FILE *fp1.p.t. gotoxy(12.2).t. cprintf("__________________"). cprintf("Enter A/C no. textcolor(3).11). textmode(C40). ch=getch(). fflush(stdin). textcolor(GREEN+BLINK). cprintf("%d".8). } /*this function deletes the desired record*/ void deleterecord() { long unsigned int no. i=0.c. if(ch==8) { if(p>t) { p--. fp1=fopen("data123. p=t=26.11).3). cprintf(":").txt". FILE *fp. gotoxy(12. gotoxy(4. cprintf("ENTER THE PASSWORD"). fp=fopen("data123.ti_hour).gotoxy(15. scanf("%lu".t. to close record :"). textcolor(GREEN). do { p++.t. cprintf(":").

c=search1(&no).fclose(fp1). rewind(fp). fclose(fp). cprintf("YOUR A/C HSA BEEN LOCKED").. textmode(C80). p--. fflush(stdin). if(c=='n') { clrscr(). cprintf("*"). i--. if(g=='y') { fflush(stdin).name). getch(). cprintf("PLEASE CONTACT TO THE BANK MANAGER").8). pas_overflow(). textcolor(13). } }while(ch!=13). name[i]=NULL.12). gotoxy(3. textmode(C40). rewind(fp1). g=check(&no.cprintf(" ").. } } else if(ch!=13) { gotoxy(p."). if(i<0) i=0. . cprintf("PRESS ANY KEY TO CONTINUE.11). gotoxy(5.24). gotoxy(2. } if(i>15) { fclose(fp). name[i++]=ch. textcolor(YELLOW). deleterecord() .

ac_num)) { b2. gotoxy(5.sizeof(b2). } else { clrscr().pas)==0)&&(no==b2. } else { fwrite(&b2.1. textmode(C40).. gotoxy(7. fclose(fp1).name1).close=1.fp)==1) { if((strcmp(name. cprintf("RECORD NOT FOUND"). isfound='y'. rewind(fp1).sizeof(b2) cprintf("PRESS ANY KEY TO CONTINUE. border().fclose(fp1). strcpy(name1. textmode(C80). fclose(fp).fp1).sizeof(b2). gotoxy(7. cprintf("YOUR RECORD HAS BEEN CLOSED").fp1).10).22). cprintf("%s".."). fclose(fp1). if(isfound=='n') { clrscr().b2.1.8).12).1. fclose(fp). } rewind(fp). while(fread(&b2. getch(). fwrite(&b2. getch(). gotoxy(6. . menu1(). menu1(). } } } rewind(fp). textcolor(LIGHTRED).

gotoxy(8. /*display the border and menu option*/ textcolor(YELLOW). cprintf("ENTER 1 FOR CHECK ACCOUNT").txt"). cprintf("PUNJAB NATIONAL BANK"). time().7).10). gotoxy(3.txt". gotoxy(8. cprintf("ENTER 3 FOR WITHDRAW ACCOUNT").txt"). gotoxy(8. } /*this function display the menu for A/C holders*/ void menu1() { int i. cprintf("ENTER 7 FOR CHANGE ADDRESS"). cprintf("ENTER 4 FOR CHANGE PASSWORD")."data123. cprintf("________________________").11). cprintf("[ 0 FOR EXIT ]"). cprintf("ENTER 5 FOR CLOSE ACCOUNT"). gotoxy(8. textcolor(13).14). rename("data123. date(). gotoxy(8. do { textmode(C40). gotoxy(9.12). cprintf("[ 9 FOR FIRST PAGE ]"). gotoxy(8. clrscr(). border().13). gotoxy(18.2).8). textcolor(YELLOW+BLINK). cprintf("ENTER 6 FOR SHOW ACCOUNT").2).17). textcolor(GREEN). char a.15). gotoxy(8. gotoxy(8. textmode(C80).} remove("data123. . cprintf("ENTER 2 FOR DEPOSIT ACCOUNT"). gotoxy(9.16).

cprintf("PRESS ANY KEY TO CONTINUE. scanf("%c". } /*this function gets the A/c no & password while user login*/ ."). textmode(C40). else if(a=='4') change_pas(). else if(a=='5') deleterecord().8).").18). textcolor(YELLOW). }while(a!=0). gotoxy(6.. gotoxy(20.. gotoxy(9. else if(a=='7') change_address(). if(a=='6') show(). else if(a=='3') withdraw().20). } else { clrscr().&a). exit(1). cprintf("TRY AGAIN !"). getch(). else if(a=='0') { end().cprintf("ENTER YOUR CHOICE. else if(a=='9') menu5()..12). textcolor(GREEN). } textmode(C80). else if(a=='2') deposit(). fflush(stdin). gotoxy(5. menu1(). else if(a=='1') showtrans(). textcolor(13).. cprintf("WRONG CHOICE").

12).&num). textcolor(3). textcolor(GREEN). fflush(stdin). if(i<0) i=0. scanf("%lu". } } else if(ch!=13) { gotoxy(p. gotoxy(3. .10). do { p++.12). bank().12). gotoxy(3. clrscr(). p=t=24. i--.11). border1().name[12]. gotoxy(p.void menu() { long unsigned int num.3). cprintf("ENTER THE PASSWORD :"). textcolor(GREEN). if(ch==8) { if(p>t) { p--.isfound. gotoxy(10. ch=getch(). cprintf(" "). time(). p--.t. cprintf("ENTER YOUR ACCOUNT NUMBER :"). cprintf("*"). int p.i . i=0. fflush(stdin). gotoxy(3. char ch. //date1(). textmode(C40).

17). fflush(stdin). cprintf("WRONG LOGIN NAME OR PASSWORD :"). } else { menu(). } }while(ch!=13)."). menu() . gotoxy(3.. char l. gotoxy([i++]=ch. } } } /*this function shows the details of single user */ void showdata() { int i. if(isfound=='y') { menu1(). textcolor(YELLOW).name).10). . } else { clrscr(). } if(i>15) { pas_overflow(). if(ch=='y'||ch=='Y') { menu3()... scanf("%c".&ch). clrscr(). gotoxy(2. cprintf("ENTER (Y/N).14). cprintf("PRESS ANY KEY TO CONTINUE.. getch(). isfound=check(&num. name[i]=NULL.").

FILE *fp.9).amount). fclose(fp).2). cprintf("ACCOUNT NUMBER :%lu".11). gotoxy(4. clrscr(). getch().13).1. :%lu".sizeof(b1). gotoxy(4.b1. if(fp==NULL) { textmode(C40). cprintf("TOTAL AMOUNT :%f".b1. cprintf("THIS A/C IS CLOSED").fp)==1) { clrscr(). textmode(C80).7). gotoxy(4.close==1) { textcolor(LIGHTRED). return ."rb+").txt". textcolor(WHITE+BLINK).22). } rewind(fp). gotoxy(13. //cprintf("*****************").b1.23).b1. /*showing the message for close a/c*/ if(b1.8). gotoxy(4. } textcolor(RED). //gotoxy(21. cprintf("RESIDENTIAL ADDRESS :"). gotoxy(2. gotoxy(25. while(fread(& textcolor(YELLOW). cprintf("THERE ARE NO RECORD TO SHOW").4). gotoxy(4. cprintf("[ 0 EXIT MENU ]"). border(). cprintf("PERSON'S DETAIL"). .ac_num). gotoxy(41. textcolor(LIGHTRED). fp=fopen("data123.4). cprintf("VARYFYING PERSON'S A/c NO. cprintf("\nNAME :%s".

.14).address[i]).0. gotoxy(40. FILE *fp. .b1.b1.15). l=getch(). } cprintf("%c". fflush(stdin). clrscr().dat". } /*this function sets the A/c no. while opening a new A/c*/ long unsigned int cnt() { long unsigned int i=1.2). gotoxy(4. cprintf("PRESS ANY KEY TO CONTINUE. fseek(fp. if(pos==0) { fclose(fp).for(i=0. cprintf("PASSWORD :"). pos=ftell(fp). fp=fopen("data456."). } else { if(i==30) { cprintf("-").b1. if(l=='0') { fclose(fp).. } } gotoxy(4.17).pos."rb+").address[i]!=NULL.i++) { if(i<30) { cprintf("%c". } rewind(fp). return i.address[i]). } } fclose(fp). menu6().

return i.fp)==1) { if(i<c1. gotoxy(31.13). gotoxy(8. } else if(a=='2') { menu().y.7). border1().x. } else if(a=='1') { menu2(). bank().sizeof(c1).1. gotoxy(9.while(fread(&c1. cprintf("FOR QUIT ENTER 0"). gotoxy(8.10). clrscr(). cprintf("FOR LOG IN ENTER 2"). scanf("%c". char a. .&a).13). textcolor(GREEN).ac_num) { i=c1.ac_num.k. } } fclose(fp).9). fflush(stdin). } else { clrscr(). } /*this is the second menu for account holders*/ void menu3() { int i. if(a=='0') { end(). gotoxy(8. cprintf("FOR SIGN UP ENTER 1").

textmode(C80). int p=0.num[10].ac_no. textmode(C80). textmode(C40). textcolor(LIGHTRED).txt". textcolor(YELLOW). gotoxy(9.isfound.4).tmp. cprintf("PRESS ANY KEY TO CONTINUE. rewind(fp).. gotoxy(4.5).15)."rb+"). clrscr(). //cprintf("*****************************"). textcolor(GREEN). } } fclose(fp). char pas1[12]. //gotoxy(25. b1.1.sizeof(b2). . //date(). cprintf("PLEASE ENTER SOME INFORMATION").close==0) { k=0. FILE *fp.cprintf("INVALID KEY "). } /*this function get the all detial of new user to open the new a/c*/ void menu2() { long unsigned int pos. textcolor(YELLOW)."). break. menu3(). gotoxy(4.txt".t=0. } textmode(C80).ac_num=cnt().ch.fp)==1) { if(b2."ab+"). while(fread(&b2. double k=-1.flag.1).i. getch().. fp=fopen("data123. fp=fopen("data123. border().

gotoxy(5. isfound=check1(b1. . cprintf("ENTER THE ADDRESS :"). fclose(fp). menu2().20). fclose(fp). if(t==0) { clrscr().. textmode(C40)..b1.ac_num++.9). cprintf("PRESS ANY KEY TO CONTINUE. cprintf("YOUR ACCOUNT NUMBER IS :%lu". cprintf("PLEASE TRY AGAIN"). gets(b1.20). getch(). textcolor(GREEN).name). textcolor(20).9). t=strlen(b1. textmode(C80)."). cprintf("YOU MUST BE ENTER ADDRESS"). } gotoxy(4. textmode(C40).name). fflush(stdin).close=0. cprintf("NAME IS NOT ALPHABETIC"). gotoxy(10. gotoxy(4.15). fflush(stdin).address). gotoxy(5. gotoxy(16."). textcolor(GREEN). cprintf("ENTER YOUR NAME :"). gotoxy(16.9).. gotoxy(10. textcolor(20). cprintf("PLEASE TRY AGAIN").15). textcolor(YELLOW). b1. getch(). if(isfound=='n') { clrscr().address). textmode(C80). cprintf("PRESS ANY KEY TO CONTINUE. textcolor(YELLOW).b1.ac_num). gets(b1..7). menu2().

getch(). fflush(stdin). i--. do { p++. gotoxy(p.amount<500) { clrscr(). clrscr(). fflush(stdin).11). cprintf("PLEASE SUBMIT MORE THEN Rs. cprintf("(MORE THAN Rs. cprintf("ENTER YOUR OWN PASSWORD:").amount). gotoxy(10.amount=0. b1.9). cprintf("YOUR AMOUNT IS NOT SUFFICIENT").13). fclose(fp).11). fflush(stdin). if(ch==8) { if(p>t) { p--. menu2(). scanf("%f". ch=getch().&b1. gotoxy(4.12). gotoxy(5. i=0.} gotoxy(4. p=t=44 . p--. cprintf("ENTER THE INITIAL AMOUNT :").14).500/.TO BE REGISTERED OIN OUR BANK").500):"). if(b1. } gotoxy(4. } } else if(ch!=13) . if(i<0) i=0. cprintf(" ").

16). textmode(C80).v_ac_num). menu2() .10).pas[i++]=ch. fflush(stdin).18).{ gotoxy(p.pas). p=t=54. } p=t=0. . textcolor(LIGHTRED). cprintf("ENTER VARYFIYING PERSON A/C NO:"). do { p++. textmode(C40).pas[i++]='\0'. if(k==0) { gotoxy(4. gotoxy(5. } }while(ch!=13).&b1. menu2(). cprintf("*").13). clrscr(). gotoxy(4. pas_overflow(). cprintf("PLEASE ENTER THE PASSWORD"). cprintf("PRESS ANY KEY TO CONTINUE. b1.. } if(i>15) { fclose(fp). if(i==0) { fclose(fp). textcolor(YELLOW). /*to check password is ok or not*/ i=0.24). i=strlen(b1. cprintf("ENTER VARIFYING PERSON PASSWORD:"). getch(). fflush(stdin). gotoxy(3.. b1. i=0. scanf("%lu".").

restore(b1. .&b1.sizeof(b1). if(flag=='y'||k==-1) { fseek(fp.2).amount). pas_overflow().ac_num. flag=check(& cprintf("*"). i--. } b1.17)."). cprintf("SHOULD IT SVAE IN DATABASE(Y/N). fflush(stdin). scanf("%c".. b1.pas1).fp).0. p--. pas1[i++]=ch. pas1[i++]='\0' .&ch). if(ch=='y'||ch=='Y') { fflush(stdin). menu2() . } }while(ch!=13)."--"). if(i<0) i=0. cprintf(" ").20). gotoxy(p.2. } } else if(ch!=13) { gotoxy('y'. gotoxy(4. if(ch==8) { if(p>t) { p--. tmp=b1.. strcpy(num. } if(i>15) { fclose(fp).17).v_ac_num.1. fwrite(&b1.num.

getch(). cprintf("HELLO %s !". cprintf("YOUR DATA SAVE IN OUR DATABASE"). } } } else { clrscr().. textcolor(13). cprintf("DO YOU WANT TO GO ON FIRST PAGE").9). cprintf("WRONG VARIFYING PERSON'S A/C AND"). gotoxy(4. fclose(fp).7). gotoxy(4. } else { clrscr().name). textcolor(13). cprintf("ENTER (Y/N)."). //cprintf("IN OUR BANK. } else { fclose(fp). . gotoxy(6.").SEEK_CUR). gotoxy(4. gotoxy(6. textcolor(YELLOW).. border().8).-sizeof(b1)."). menu1(). cprintf("PASSWORD").17).11). gotoxy(4.b1.10). cprintf("YOU HAVE REGISTERED IN OUR BANK.13). fseek(fp. fflush(stdin). gotoxy(19. scanf("%c".&flag). border().18).clrscr(). menu3(). menu(). gotoxy(4. if(flag=='y'||flag=='Y') { fclose(fp).

pas2[12].2).isfound='n'. cprintf("ENTER YOUR ACCOUNT NUMBER fflush(stdin). :"). menu3().. } } gotoxy(52. clrscr(). fflush(stdin). fp=fopen("data123. cprintf("__________________") .cprintf("DO YOU WANT TO GO ON FIRST PAGE"). cprintf("CHANGE OF PASSOWRD"). textmode(C40).c. textcolor(YELLOW). menu2(). scanf("%lu".p. gotoxy(12. p=t=26. } else { fclose(fp). if(flag=='y'||flag=='Y') { fclose(fp).13).").. fflush(stdin).7). int i. } /*THIS FUNCTION CHANGE THE A/C ON FIRST PAGE ?*/ void change_pas() { long int no.3)..&no). i=0. char pas1[12].txt".t."rb+"). gotoxy(4. gotoxy(23. do { p++. gotoxy(12. textcolor(WHITE). cprintf("ENTER (Y/N).sz. gotoxy(4.10)..").20). FILE *fp. cprintf("ENTER THE PASSWORD.

sz=sizeof(b1). fflush(stdin).pas1). fclose(fp). gotoxy(3. if(g=='y') { fflush(stdin). g=check(&no. cprintf(" "). i--. pas1[i++]=ch. pas1[i]='\0' . } }while(ch!=13). if(c=='n') { clrscr(). cprintf("PLEASE CONTACT TO BANK MANAGER").10). if(ch==8) { if(p>t) { p--. } if(i>15) { pas_overflow(). . c=search1(&no). change_pas(). p--. } } else if(ch!=13) { gotoxy(p.12). gotoxy(p.8). textmode(C40).10). textcolor(YELLOW). if(i<0) i=0. gotoxy(5. cprintf("YOUR ACCOUNT HAS BEEN LOCKED").ch=getch(). cprintf("*").

i=0. } if(i>15) { pas_overflow(). pas2[i++]=ch... while(fread(&b1. gotoxy(p. cprintf("*"). cprintf(" ").ac_num)) { gotoxy(4. } rewind(fp).13). fclose(fp). p=t=30.1. do { p++. cprintf("PRESS ANY KEY TO CONTINUE. border(). fflush(stdin). if(ch==8) { if(p>t) { p--.13). i--. textcolor(13). if(i<0) i=0. textmode(C80). getch().13).. cprintf("ENTER THE NEW PASSOWRD.24).fp)==1) { if((strcmp(pas1.b1..gotoxy(2. ch=getch().pas)==0)&&(no==b1. } } else if(ch!=13) { gotoxy(p. p--. menu1()." ).").sizeof(b1). .

} fclose(fp) . getch(). cprintf("PRESS ANY KEY TO CONTINUE."). fwrite(&b1.i. textcolor(13). } else { clrscr(). pas2[i]='\0' . getch(). fseek(fp.c='y'. strcpy(b1. border().. cprintf("WRONG A/C NO.sizeof(b1). textmode(C80). textcolor(YELLOW+BLINK) .13).. . cprintf("PRESS ANY KEY TO CONTINUE. isfound='y'.15).1.name1[20].fp). gotoxy(8. } } } if(isfound=='n') { clrscr().pas.a.t. break. OR PASSWORD").").. } }while(ch!=13).15).num[10].9). cprintf("NEW PASSWORD ACCEPTED"). gotoxy(4.k='n'. change_pas().. } /*this function withdrew amount from A/C of bank customers*/ /*void withdraw() { long int float amount=0.pas1[12].g='n'. int p=0.SEEK_CUR).-sz. textcolor(13). gotoxy(6. gotoxy(4. char ch.fclose(fp).

i=0. cprintf("WITHDRAW OF AMOUNT"). pas1[i++]=ch."rb+"). cprintf("ENTER YOUR A/C NUMBER fflush(stdin). cprintf(" ").11). textcolor(GREEN) .8). p--. if(ch==8) { if(p>t) { p--. cprintf("ENTER THE PASSWORD.3). if(i<0) i=0. :").. fflush(stdin). textcolor(WHITE).txt". i--. } if(i>15) { pas_overflow(). clrscr(). fp=fopen("data123. do { p++.&no). scanf("%lu". p=t=29. textmode(C40). gotoxy(7.11)."). gotoxy(12..2). gotoxy(p. ch=getch(). } } else if(ch!=13) { gotoxy(p. .FILE *fp. gotoxy(5. cprintf("*").11). cprintf("___________________"). gotoxy(12.

name). clrscr(). while(fread(&b1.b1. fclose(fp).pas)==0)&&(no==b1. gotoxy(10. if(c=='n') { clrscr(). strcpy(name1. ..24). cprintf("PRESS ANY KEY TO CONTINUE. cprintf("PRESS ANY KEY TO CONTINUE.. textcolor(YELLOW).8).fp)==1) { if((strcmp(pas1. getch(). gotoxy(2. clrscr(). cprintf("YOUR A/C HAS BEEN LOCKED") .12).9). getch().15). pas1[i]='\0' . gotoxy(3.pas1). g=check(&no. textcolor(13).11).. sz=sizeof(b1). c=search1(&no). } rewind(fp)."). fflush(stdin)."). cprintf("[ PASSWORD ACCEPTED ]"). textcolor(YELLOW). withdraw().ac_num)) { k='y'.sizeof(b1).1. gotoxy(1. textmode(C40). textmode(C80).b1. } }while(ch!=13). gotoxy(7. textcolor(13+BLINK). gotoxy(5. menu1(). if(g=='y') { fflush(stdin). delay(150).fclose(fp).. cprintf("PLEASE CONTACT TO THE BANK MANAGER").

15). fflush(stdin) . gotoxy(6. textmode(C80). if(a=='2') { clrscr(). i=strlen(num).&amount).") . gotoxy(6. cprintf("ENTER 1 FOR CASH"). } else { ch='y'. entered or not*/ /*if(i==0) { clrscr(). textcolor(GREEN) .10).13).. fflush(stdin). gotoxy(3. gotoxy(5. cprintf("ENTER THE CHEQUE NUMBER. cprintf("ENTER 2 FOR CHEQUE"). gotoxy(4.24). fflush(stdin). textcolor(YELLOW) . textcolor(LIGHTRED). gets(num). i=0. gotoxy(6.9). cprintf("PRESS ANY KEY TO CONTINUE.&a).")."). getch().. fclose(fp).. textcolor(YELLOW). cprintf("PLEASE ENTER THE CHEQUE NUMBER.. cprintf("BY CASH OR BY CHEQUE"). withdraw().14) . /*to check the check no. scanf("%c".. textmode(C40). scanf("%f".. cprintf("ENTER THE AMOUNT TO WITHDRAW:").textcolor(13). } } else if(a!='1' && a!='2') { .

getch(). clrscr(). gotoxy(7. gotoxy(6. rewind(fp).1.23).-sz."). textcolor(YELLOW).amount).fp).b1. cprintf("WRONG CHOICE"). withdraw().22). fclose(fp).amount=b1.15).clrscr().9). gotoxy(12. restore(no. gotoxy(20. } p=b1.1.amount). gotoxy(3. textcolor(YELLOW+BLINK).9). textcolor(13).&amount).num. cprintf("PRESS ANY KEY TO CONTINUE.1. } fwrite(&b1.").. textcolor(13). } else { clrscr(). cprintf("WITHDRAW SUCCESSFUL") .name1..sizeof(b1).name1. } else { strcpy(num.SEEK_CUR). getch(). if(a==2) { restore(no.8). cprintf("SO YOU CAN'T WITHDRAW Rs.2. if(amount<p) { fseek(fp. textcolor(LIGHTRED).1.13).amount-amount..&amount). gotoxy(5.num..%f/-".amount-500. %f/-". cprintf("TRY AGAIN !."--"). b1. cprintf("YOU HAVE ONLY Rs. cprintf("TRY AGAIN !"). . gotoxy(3. textcolor(YELLOW).

i. int p=0. cprintf("WRONG A/C NUMBER OR PASSWORD"). ch='n'. fclose(fp). withdraw(). scanf("%c". gets(num)..getch(). cprintf("ENTER THE CHEQUE NUMBER.. } break. cprintf("TRY AGAIN !. gotoxy(6.. float amount=0.").") . i=0.&a). getch(). fflush(stdin). } } } if(k=='n') { clrscr(). char ch. rewind(fp). cprintf("ENTER 2 FOR CHEQUE"). if(a=='2') { clrscr().t.9).num[10].no. menu1(). gotoxy(7.12).9). fclose(fp). /*to check the check no. entered or not*/ . gotoxy(6.pas[12]. fflush(stdin).g='n'. } */ /*this function deposit amount in a/c of bank customer */ /*void deposit() { long unsigned int sz.. } textmode(C80). textcolor(LIGHTRED).k='n'.name1[20]. i=strlen(num).c='y'.a.

gotoxy(7. fclose(fp). textmode(C40). deposit(). textcolor(YELLOW) .2. textcolor(LIGHTRED).amount+amount. if(ch=='y') { restore(no. cprintf("WRONG CHOICE"). gotoxy(5. getch().22).").-sz. if(amount<p) { fseek(fp. } } else if(a!='1' && a!='2') { clrscr(). textcolor(YELLOW+BLINK). } else ."). } else { ch='y'.name1.15). gotoxy(5. getch(). cprintf("PRESS ANY KEY TO CONTINUE. deposit(). textcolor(13). } p=b1. fclose(fp).10).2...8).amount+500.24). cprintf("PLEASE ENTER THE CHEQUE NUMBER."). rewind(fp). cprintf("TRY AGAIN !"). gotoxy(3. b1..num.. textmode(C80).. cprintf("PRESS ANY KEY TO CONTINUE.amount=b1. textcolor(LIGHTRED)..&amount).if(i==0) { clrscr(). gotoxy(12.SEEK_CUR).

cprintf("DEPOSIT SUCCESSFUL") .9). cprintf("WRONG A/C NUMBER OR PASSWORD"). clrscr().1. fclose(fp).num. gotoxy(7. home_page().12). getch().1. textcolor(YELLOW). restore(no... gotoxy(6. } . set_mgr_pas(). } textmode(C80)."--"). } break. textcolor(LIGHTRED).name1. cprintf("TRY AGAIN !. } } } if(k=='n') { clrscr(). } fwrite(&b1. gotoxy(6. menu1(). ch='n'.").fp).sizeof(b1).&amount).{ strcpy(num. getch().2. menu5().9). } void main() { clrscr(). rewind(fp).

Because of human inability to perform and communicate with perfection. the engineer attempts to build software from a concept to tangible implementations. Errors may begin to occur at every inception of the process where the objectives may be erroneously or imperfectly specified as well as later design and development stages. The engineer creates a series of test cases that are intended to demolish viewed as destructive rather than constructive. software development is accompanied by quality assurance activity. The increasing visibility of software as a system element and attendant “costs” associated with a software failure is motivating forces for well planned. the software has been built.TESTING TECHNIQUES The development of software systems involves a series of production activities where opportunities for injection of human fallibilities are enormous. Software Testing Fundamentals During earlier definition and development phases. design and coding. Testing required that the developer discard preconceived notion of the “correctness “of the software just developed and overcome a conflict of the interest that occurs when error are uncovered. Software testing is a critical element of software quality assurance and represents the ultimate review of specification. Now comes the testing. through testing. In fact testing is the one step in the software engineering process that could be .

But there is one thing that testing can not do. A test configuration that include a Test Plane and Procedure. A good test case is one that has high probabilities of finding an as yet undiscovered error. Testing is a process of executing a program with the intent of finding an error. A software configuration that includes a software requirement specification. 2. and Source code 2. Data collected as testing is conducted provide a good indication of software reliability and some indication of software quality as a whole. a design specification.TESTING OBJECTIVES A numbers of rules that can serve well as testing objectives: 1. A successful test is one that uncovers an as yet undiscovered error. any testing tools that are to be used. Test information flow Information flow for testing follows the pattern described in the figure: Two classes of input are provided: 1. Testing can not show the absence of defects. 3. . it can only show that software defects are present. Our objective is to design test systematically uncover different classes of errors and do so with minimum amount of time and effort. and test cases and there expected results.

Software Configuration Test Results Expected Results Model Error Data Rate Test Configuration Reliabilit y Evolutio n Errors Testin g Debug Corrections Predicted Reliability .

3. 6. 1.The keyboard is meant for providing any sort of inputs. MODIFY ACCOUNT: This modifies the details of Account holder. . Vertical menu includes the following under their respective headings. ADD ACCOUNT: the personal directory file.USER MANUAL There is no use of mouse to handle the software . DISPLAY ACCOUNT INFORMATION: This displays the customer Debit & Credit Account SEARCH: find the customer information. 4. 2. 5. EXIT: close Bank account system. There is only vertical menu with key access. DELETE ACCOUNT: Delete Customer Account details.

. that is how database is maintained.  It is automation of Telephone directory system.SCOPE OF FUTURE ENHANCEMENT The application certainly has same striking advantage over manual system.  In future according to the user’s requirement it can be updated so that to reach the user specification. There will be no paper work as possible and the information will be updated as it changes.  Furthermore with its implementation very large amount of data will be secure and editing and addition or deletion of data is done very easily.  The operator does not require any previous training because of its user friendliness the operator is free from any technicality of the backend processing.  If the process of the working changes in future then the alteration in the system will be done easily and will not cause in the mismanaging of data.  It secures the database of Telephone directory system from the unauthorized person.  With this system one can generate the report of the address.

there is a greater possibility of stabilization a clear and fair system. which will be monitoring through Account. Future modification and enhancements have become quite easier now in comparison to the previous manual system. Lot of paper work has been eliminated.The main advantage of BAS is that. . At the first step BAS will only be installed in the bank . This system can be used to provide some enhancement without rewriting of existing code. The important thing is that the system developed should be flexible to accommodate any future enhancements. After installation of BAS in the bank. There is no doubt that there always remains some scope of improvement. User queries have become quite accurate and efficient. it will become a powerful tool in establishment of better system in comparison of the existing system. which will be accurate. Last but one of the most important advantages of the banking system is that. through this system the whole procedure will take too less time in comparison of the manual system.CONCLUSION The application certainly has some striking feature over manual system. No doubt BAS will be helpful for institutes in all procedure. It helps to protect the system from the corruption. update and fast.


Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master Your Semester with a Special Offer from Scribd & The New York Times

Cancel anytime.