Designing and Implementing of ATM System Using Object Oriented Approach
VerifiedAdded on 2019/09/26
|27
|6046
|161
Report
AI Summary
The software development process involves several stages, including designing, coding, testing, deployment, and feedback. The design stage includes creating use case diagrams to depict actor and their use cases operations, class modeling diagram for representing class relationships and attributes, and sequential modeling diagram for depicting sequential actions happening in a system. The coding stage implements object-oriented concepts like classes, objects, abstraction, encapsulation, inheritance, and static binding using Java language and Microsoft Visual Studio Code IDE. The testing stage includes unit testing to test individual classes, integrated testing to combine separate class units, system testing to ensure the entire software functionality, and acceptance testing to check if the software meets customer requirements. Deployment involves ensuring the software is complete and bug-free before releasing it to the client site. Feedback from clients is used to improve the software further. Additionally, professional, legal, social, security, and ethical issues are considered throughout the development process.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.
1
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
Contents
1.Use Case Model Diagram (Logical Design Diagram)..................................................................4
2.Class Diagram (Logical Design)..................................................................................................6
3.Sequence Diagram (Logical Design)............................................................................................8
4. Program........................................................................................................................................9
Critical Discussion: Introduction...................................................................................................18
NationNarrow Reflection and Critical-Evaluation....................................................................18
Critical self-reflection on the work................................................................................................19
Software Development Life Cycle (SDLC) of this software.....................................................19
Requirement Gathering..........................................................................................................19
Design.....................................................................................................................................19
Development..........................................................................................................................20
Software Testing.....................................................................................................................20
Deployment............................................................................................................................21
Feedback.................................................................................................................................22
Issues..............................................................................................................................................23
Conclusion.....................................................................................................................................23
References......................................................................................................................................24
2
1.Use Case Model Diagram (Logical Design Diagram)..................................................................4
2.Class Diagram (Logical Design)..................................................................................................6
3.Sequence Diagram (Logical Design)............................................................................................8
4. Program........................................................................................................................................9
Critical Discussion: Introduction...................................................................................................18
NationNarrow Reflection and Critical-Evaluation....................................................................18
Critical self-reflection on the work................................................................................................19
Software Development Life Cycle (SDLC) of this software.....................................................19
Requirement Gathering..........................................................................................................19
Design.....................................................................................................................................19
Development..........................................................................................................................20
Software Testing.....................................................................................................................20
Deployment............................................................................................................................21
Feedback.................................................................................................................................22
Issues..............................................................................................................................................23
Conclusion.....................................................................................................................................23
References......................................................................................................................................24
2
Table of Content
S. NO. CONTENT PAGE NO.
1. Use Case Model Diagram 2
2. Class Diagram 4
3. Sequence Diagram 6
4. Program 8
5. Critical Discussion : Introduction 16
6. Critical self-reflection on the work 17
7. Issues 21
8. Conclusion 21
9. References 22
3
S. NO. CONTENT PAGE NO.
1. Use Case Model Diagram 2
2. Class Diagram 4
3. Sequence Diagram 6
4. Program 8
5. Critical Discussion : Introduction 16
6. Critical self-reflection on the work 17
7. Issues 21
8. Conclusion 21
9. References 22
3
1. Use Case Model Diagram (Logical Design Diagram)
This diagram is employed to characterize different actors / users or clients and their
operations or actions or events. This use case diagram is employed to model the structure of
software or a sub system. It highlights the representation of user and their actions in which
the particular user or an actor or a client is working on. It has mainly 2 components one is
actor and two is use case in a specific application It specifies the users who are all going to
use particular software without minding the actual implementation of a function. The actors
are the real end users of the software which is depicted using an actor stereotype. The use
case action is specified using oval symbol. It is to be named with an action verb for
functionality. The relationship between actor and a use case symbol is depicted through a
line which linkages the both. In this Banking Software for NatioNarrow Building Society 3
main use cases where defined. They are
o Bank Manager,
o Bank Teller and Customer.
The Bank Teller and the customer acts on account creation with enquiry of bank
statements, deposit functionality, withdrawal action and fund transfer activities. The Bank
manager acts on the above work flow along with adding user credentials and dealing with
approving and sanctioning of loans and allows to create account on various categories including
current, saving, ISA, Business, etc., The Bank manager use case inherits all the properties of the
use case bank teller and also in terms of customer point of view.
4
This diagram is employed to characterize different actors / users or clients and their
operations or actions or events. This use case diagram is employed to model the structure of
software or a sub system. It highlights the representation of user and their actions in which
the particular user or an actor or a client is working on. It has mainly 2 components one is
actor and two is use case in a specific application It specifies the users who are all going to
use particular software without minding the actual implementation of a function. The actors
are the real end users of the software which is depicted using an actor stereotype. The use
case action is specified using oval symbol. It is to be named with an action verb for
functionality. The relationship between actor and a use case symbol is depicted through a
line which linkages the both. In this Banking Software for NatioNarrow Building Society 3
main use cases where defined. They are
o Bank Manager,
o Bank Teller and Customer.
The Bank Teller and the customer acts on account creation with enquiry of bank
statements, deposit functionality, withdrawal action and fund transfer activities. The Bank
manager acts on the above work flow along with adding user credentials and dealing with
approving and sanctioning of loans and allows to create account on various categories including
current, saving, ISA, Business, etc., The Bank manager use case inherits all the properties of the
use case bank teller and also in terms of customer point of view.
4
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
Bank Software - Use Case Diagram Explanation
The following Bank Software Use Case diagram is a diagrammatic representation of
different use cases or actors or users of this particular software. e.g. the bank teller may be one
actor, customer is an another actor and bank manager is an one more actor of this software. The
bank teller actor performs actions such as balance enquiry, cash deposit, cash withdrawal and
fund transfer operations in this bank software. Like bank teller actor, customer actor also
performs operations like enquiry, deposit, withdrawal and transfer operations in this bank
software. The bank manager actor performing operation includes user credential and loan
approval and sanctioning along with balance enquiry, cash deposit, cash withdrawal and fund
transfer operations in this bank software.
The Banking System is a software system which includes the key operations played by
the actors Bank teller, Customer and Bank Manager. The operations of Banking Software are key
functionality of the software which includes balance amount enquiry, cash deposit, cash
withdrawal and fund operations, making user credentials, loan sanctioning in this bank software.
The actor on the right hand side is a bank use case or actor. It represents the complete operations
done on behalf of bank software. The Bank Software operations are affected on the actor bank
5
The following Bank Software Use Case diagram is a diagrammatic representation of
different use cases or actors or users of this particular software. e.g. the bank teller may be one
actor, customer is an another actor and bank manager is an one more actor of this software. The
bank teller actor performs actions such as balance enquiry, cash deposit, cash withdrawal and
fund transfer operations in this bank software. Like bank teller actor, customer actor also
performs operations like enquiry, deposit, withdrawal and transfer operations in this bank
software. The bank manager actor performing operation includes user credential and loan
approval and sanctioning along with balance enquiry, cash deposit, cash withdrawal and fund
transfer operations in this bank software.
The Banking System is a software system which includes the key operations played by
the actors Bank teller, Customer and Bank Manager. The operations of Banking Software are key
functionality of the software which includes balance amount enquiry, cash deposit, cash
withdrawal and fund operations, making user credentials, loan sanctioning in this bank software.
The actor on the right hand side is a bank use case or actor. It represents the complete operations
done on behalf of bank software. The Bank Software operations are affected on the actor bank
5
Banking System
Bank Teller /
Customer
<<extends>>
Bank Manager
Bank
Banking Software – Use Case Diagram
6
Enquiry
Deposit
Withdrawal
Transfer
User Credentials
Loan Sanction
Bank Teller /
Customer
<<extends>>
Bank Manager
Bank
Banking Software – Use Case Diagram
6
Enquiry
Deposit
Withdrawal
Transfer
User Credentials
Loan Sanction
2. Class Diagram (Logical Design)
This diagram is used to represent classes along with its attributes (variables) and methods
(operations) also it is employed to specify relationship among base and derived classes. It is a
logical building of a software program It provides the complete structure of an object oriented
programming software application. It is an actual depiction of various class usages in software. It
is employed only for object oriented constructs. The group of all the class depictions forms a
class diagram. The class representation box first part should have proper class name along with
the attribute depiction box second part should have the names of a variable and the method
denoting box third part should have the name and return type of the function name. It is
decisively for stagnant depiction of a system. It will be sketched for the languages like c++, java,
php, python, samlltalk, etc.,
It’s (class) represented with 3 main parts in a rectangular box. They are
1st part of the rectangular box is a class name
2nd part of the rectangular box is for an attribute name
3rd part of the rectangular box is for a method name
The arrow line shows the relationship among various classes in an application like inheritance,
aggregation, etc.,
The BankAccount Class has two attributes accountno and amount and it has three functions
which includes BankAccount(), deposit() and withdraw().
The BankTeller class has various six labels four textboxes, five buttons , panel, frame attributes
and it has three functions BankTeller(), testAccount, actionPerformed()
The BankManager class has three functions. They are main() function, userCreden() and
loanAccount()
The BankManager inherits all the attributes and functionalities of its base class BankTeller
which uses the class BankAccount for its working
The class NewWindowAdapter has a function of windowClosing() . It is basically derived from
the base class WindowADapter
The class FundsInsufficientException has two attributes namely balance and withdraw _amount
and two functions namely FundsInsufficientException() and toString(). It is basically derived
from the base class Exception
7
This diagram is used to represent classes along with its attributes (variables) and methods
(operations) also it is employed to specify relationship among base and derived classes. It is a
logical building of a software program It provides the complete structure of an object oriented
programming software application. It is an actual depiction of various class usages in software. It
is employed only for object oriented constructs. The group of all the class depictions forms a
class diagram. The class representation box first part should have proper class name along with
the attribute depiction box second part should have the names of a variable and the method
denoting box third part should have the name and return type of the function name. It is
decisively for stagnant depiction of a system. It will be sketched for the languages like c++, java,
php, python, samlltalk, etc.,
It’s (class) represented with 3 main parts in a rectangular box. They are
1st part of the rectangular box is a class name
2nd part of the rectangular box is for an attribute name
3rd part of the rectangular box is for a method name
The arrow line shows the relationship among various classes in an application like inheritance,
aggregation, etc.,
The BankAccount Class has two attributes accountno and amount and it has three functions
which includes BankAccount(), deposit() and withdraw().
The BankTeller class has various six labels four textboxes, five buttons , panel, frame attributes
and it has three functions BankTeller(), testAccount, actionPerformed()
The BankManager class has three functions. They are main() function, userCreden() and
loanAccount()
The BankManager inherits all the attributes and functionalities of its base class BankTeller
which uses the class BankAccount for its working
The class NewWindowAdapter has a function of windowClosing() . It is basically derived from
the base class WindowADapter
The class FundsInsufficientException has two attributes namely balance and withdraw _amount
and two functions namely FundsInsufficientException() and toString(). It is basically derived
from the base class Exception
7
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Bank- Software - Class Diagram Explanation
In the following Bank software class diagram it is represented with many classes and its
mutual relationship existing among those classes. The class diagram has totally seven classes,
out of seven classes; two classes are built in classes imported from a java packages and the
remaining five classes are user defined classes. The yellow color highlighted classes are user
defined required classes in the Bank Software. The Bank Account classes are used to perform
main bank operations including deposit and withdraw which is inherited by the class Bank
Teller. The Bank Teller class is added with the function testAccount() along with the base class
bankaccount properties which is again inherited by the class BankManager which supports
functionality like usercredential() and loanaccount() along with the properties of its base class
Bank Teller.
The user defined class FundSufficientException is inherited from the built in class
Exception which support to raise a user defined exception fundsufficientexception in case of
accessing insufficient amount. The one more user defined class NewWindowAdapter is inherited
from the built in class WindowAdapter which support for handling windows in the bank software
8
In the following Bank software class diagram it is represented with many classes and its
mutual relationship existing among those classes. The class diagram has totally seven classes,
out of seven classes; two classes are built in classes imported from a java packages and the
remaining five classes are user defined classes. The yellow color highlighted classes are user
defined required classes in the Bank Software. The Bank Account classes are used to perform
main bank operations including deposit and withdraw which is inherited by the class Bank
Teller. The Bank Teller class is added with the function testAccount() along with the base class
bankaccount properties which is again inherited by the class BankManager which supports
functionality like usercredential() and loanaccount() along with the properties of its base class
Bank Teller.
The user defined class FundSufficientException is inherited from the built in class
Exception which support to raise a user defined exception fundsufficientexception in case of
accessing insufficient amount. The one more user defined class NewWindowAdapter is inherited
from the built in class WindowAdapter which support for handling windows in the bank software
8
Banking Software – Class Diagram
9
WindowAdapter
Bank Account
accountno:int
amount:int
BankAccount(int,int
)
void deposit(int)
void withdraw(int)
Exception
NewWindowAdapter
void
windowClosing(Window
Event)
BankTeller
Label
TextField
Button
JFrame
BankTeller()
String testAccount(int,int)
void
actionPerformed(ActionEvent)
FundsInsufficientException
balance:int
withdraw_amount:int
FundsInsufficientException(int,int)
String toString()
9
WindowAdapter
Bank Account
accountno:int
amount:int
BankAccount(int,int
)
void deposit(int)
void withdraw(int)
Exception
NewWindowAdapter
void
windowClosing(Window
Event)
BankTeller
Label
TextField
Button
JFrame
BankTeller()
String testAccount(int,int)
void
actionPerformed(ActionEvent)
FundsInsufficientException
balance:int
withdraw_amount:int
FundsInsufficientException(int,int)
String toString()
3. Sequence Diagram (Logical Design)
It illustrates dealings among objects in a chronological order. It is also termed as event
diagram or event scenarios. It showcases when one object finishes it operations and when
another begins its work. It is for the depiction of factual time state of affairs. It shows the manner
how a system is moving on while it’s functioning. The symbols employed to draw basically the
sequence diagram involves an actor, life lines, messages, etc., The Actor is an external entity
which is employed to play a role on a system functioning.
It is placed at the top of the line .Any number of actors can
be involved in a scenario depending upon the system.
Each instance of a class is depicted as a life line which
is also placed at the top of a line. It is a name represented component of a sequence diagram. The
life line is an internal component of a sequence diagram.
The messages are depicted using an arrow line which shows the contact between objects or
among an instance of a class or an object. Messages and lifeline are the vital components for the
depiction of a sequence diagram. In the below diagram Bank actor is involved along with the life
lines which has an instance of the classes AccountCreation , BankManager and Loan. Initially
BankAccount is activated then a testAccount is communicated followed by show details deposit
withdrawal messages are communicated to the instance of a class BankManager. During
withdrawal in case of insufficient balance exception is raised it is sent back to the actor Bank. It
also the duty of the bank to approve and sanction a loan to the customers. The Loan Account
Creation is communicated to the instance of a class named loan then Loan Approval is also
communicated to the instance of a class Loan. In case of not approval of a loan account by the
credential it is sent back to the an actor Bank. It all shows the sequential movements of various
messages from an actor to an instance of a class or from an instance of a class to an another
instance of a class
10
BankManager
void main()
void userCreden(int, String)
void loanAccount(int)
It illustrates dealings among objects in a chronological order. It is also termed as event
diagram or event scenarios. It showcases when one object finishes it operations and when
another begins its work. It is for the depiction of factual time state of affairs. It shows the manner
how a system is moving on while it’s functioning. The symbols employed to draw basically the
sequence diagram involves an actor, life lines, messages, etc., The Actor is an external entity
which is employed to play a role on a system functioning.
It is placed at the top of the line .Any number of actors can
be involved in a scenario depending upon the system.
Each instance of a class is depicted as a life line which
is also placed at the top of a line. It is a name represented component of a sequence diagram. The
life line is an internal component of a sequence diagram.
The messages are depicted using an arrow line which shows the contact between objects or
among an instance of a class or an object. Messages and lifeline are the vital components for the
depiction of a sequence diagram. In the below diagram Bank actor is involved along with the life
lines which has an instance of the classes AccountCreation , BankManager and Loan. Initially
BankAccount is activated then a testAccount is communicated followed by show details deposit
withdrawal messages are communicated to the instance of a class BankManager. During
withdrawal in case of insufficient balance exception is raised it is sent back to the actor Bank. It
also the duty of the bank to approve and sanction a loan to the customers. The Loan Account
Creation is communicated to the instance of a class named loan then Loan Approval is also
communicated to the instance of a class Loan. In case of not approval of a loan account by the
credential it is sent back to the an actor Bank. It all shows the sequential movements of various
messages from an actor to an instance of a class or from an instance of a class to an another
instance of a class
10
BankManager
void main()
void userCreden(int, String)
void loanAccount(int)
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
Banking Software – Sequential Diagram Explanation
In the following Banking Software - sequential diagram is explored. It is a diagram which
shows the sequential actions flows in the banking software. In the diagram actor bank and
instances of classes are involved.
The actor is Bank which is involved along with the life lines which is actually an instance of
the classes existing in the Bank software which includes AccountCreation, BankManager and
Loan. Initially instance of BankAccount is activated toward the Account creation then a
testAccount is communicated towards the BankManager Instance followed by show details
deposit withdrawal messages are communicated to the instance of a class BankManager. During
withdrawal in case of insufficient balance exception is raised it is sent back to the actor Bank
from the instance BankManager. It is also the duty of the bank to approve and sanction a loan to
the customers for which a message is communicated from the Bank to the instance of a class
Loan with the actions LoanaccountCreation and LoanSanction. In case of not approving the loan
a message is communicated from the instance of Loan to the actor Bank
11
In the following Banking Software - sequential diagram is explored. It is a diagram which
shows the sequential actions flows in the banking software. In the diagram actor bank and
instances of classes are involved.
The actor is Bank which is involved along with the life lines which is actually an instance of
the classes existing in the Bank software which includes AccountCreation, BankManager and
Loan. Initially instance of BankAccount is activated toward the Account creation then a
testAccount is communicated towards the BankManager Instance followed by show details
deposit withdrawal messages are communicated to the instance of a class BankManager. During
withdrawal in case of insufficient balance exception is raised it is sent back to the actor Bank
from the instance BankManager. It is also the duty of the bank to approve and sanction a loan to
the customers for which a message is communicated from the Bank to the instance of a class
Loan with the actions LoanaccountCreation and LoanSanction. In case of not approving the loan
a message is communicated from the instance of Loan to the actor Bank
11
Banking Software – Sequential Diagram
Bank
12
Account Creation BankManager Loan
Bank
12
Account Creation BankManager Loan
4. Program
package com.shre.servicemgmt.service;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
class BankTeller extends JFrame implements ActionListener // inherits
JFrame
{
Label lab=new Label(" "); // label creation lab
Label lab1=new Label(" ");// label creation lab1
TextField t[]=new TextField [4]; // creation of 4 textbox
Label l[]=new Label [4];// creation of 4 label
Button but=new Button("Create Account"); // Button to create Account
Button but1=new Button("Test Account"); // Button to test Account
Button show = new Button ("Show Details");// Button to show details
Button btnusercred = new Button ("User Credentials");// Button to User
Credentials
Button btnloandet = new Button ("Loan Details");// Button to show Loan
Details
JFrame f=new JFrame("Bank Frame Creation"); // Frame Creation
BankAccount b; // object creation for BankAccount class
BankTeller() // 0 parameter constructor definition
{
addWindowListener(new NewWindowAdapter()); // adding WindowListener
setLayout(new GridLayout(3,0));// setting layout
Panel p=new Panel(); // creation of panel
Panel p1=new Panel(); // creation of panel
but.addActionListener(this); // adding button but to the ActionListener
but1.addActionListener(this); // adding button but1 to the ActionListener
show.addActionListener(this);// adding button show to the ActionListenr
Class
btnusercred.addActionListener(this); // adding button to the Listener
btnloandet.addActionListener(this); // adding button to the Listener
13
BankAccount(int,int)
TestAccount(int)
showDetails()
deposit(int)
withdraw(int)
FundInsufficient
LoanAccountCreation (int)
LoanSanction(int, int)
NotApproval
package com.shre.servicemgmt.service;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
class BankTeller extends JFrame implements ActionListener // inherits
JFrame
{
Label lab=new Label(" "); // label creation lab
Label lab1=new Label(" ");// label creation lab1
TextField t[]=new TextField [4]; // creation of 4 textbox
Label l[]=new Label [4];// creation of 4 label
Button but=new Button("Create Account"); // Button to create Account
Button but1=new Button("Test Account"); // Button to test Account
Button show = new Button ("Show Details");// Button to show details
Button btnusercred = new Button ("User Credentials");// Button to User
Credentials
Button btnloandet = new Button ("Loan Details");// Button to show Loan
Details
JFrame f=new JFrame("Bank Frame Creation"); // Frame Creation
BankAccount b; // object creation for BankAccount class
BankTeller() // 0 parameter constructor definition
{
addWindowListener(new NewWindowAdapter()); // adding WindowListener
setLayout(new GridLayout(3,0));// setting layout
Panel p=new Panel(); // creation of panel
Panel p1=new Panel(); // creation of panel
but.addActionListener(this); // adding button but to the ActionListener
but1.addActionListener(this); // adding button but1 to the ActionListener
show.addActionListener(this);// adding button show to the ActionListenr
Class
btnusercred.addActionListener(this); // adding button to the Listener
btnloandet.addActionListener(this); // adding button to the Listener
13
BankAccount(int,int)
TestAccount(int)
showDetails()
deposit(int)
withdraw(int)
FundInsufficient
LoanAccountCreation (int)
LoanSanction(int, int)
NotApproval
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
p.setLayout(new GridLayout(9,2)); // setting grid layout to the panel p
p1.add(lab1); // adding label to the panel
p1.add(lab); // adding label lab to the panel
l[0]=new Label("Account Number"); // Initializing label l[0]
l[1]=new Label("Initial Balance");// Initializing label l[1]
l[2]=new Label("Deposit Amount");// Initializing label l[2]
l[3]=new Label("Withdraw Amount"); // Initializing label l[3]
for(int i=0;i<4;i++) // looping
{
t[i]=new TextField(10); // initializing text field
p.add(l[i]); //adding label in the panel
p.add(t[i]); //adding text box in the panel
}
p.add(but); // adding button but in the panel
p.add(but1); // adding button but 1 in the panel
p.add(show); // adding button show in the panel
p.add(btnusercred); // adding button btnusercred in the panel
p.add(btnloandet); // adding button btnloandet in the panel
but1.setVisible(false); // setting visibility false for but1
l[2].setVisible(false); // setting visibility false for l[2]
l[3].setVisible(false); // setting visibility false for l[3]
t[2].setVisible(false); // setting visibility false for t[2]
t[3].setVisible(false); // setting visibility false for t[3]
add(p);
add(p1);
}
String testAccount(int d_amt,int w_amt)
{
String msg="";
b.deposit(d_amt); // calling deposit method
System.out.println("d_amt"+d_amt);
JOptionPane.showMessageDialog(frame, "Transaction Succesful!"); //
Raising Alert
//msg="Transaction Succesful";
/*
try
{
b.withdraw(w_amt);
14
p1.add(lab1); // adding label to the panel
p1.add(lab); // adding label lab to the panel
l[0]=new Label("Account Number"); // Initializing label l[0]
l[1]=new Label("Initial Balance");// Initializing label l[1]
l[2]=new Label("Deposit Amount");// Initializing label l[2]
l[3]=new Label("Withdraw Amount"); // Initializing label l[3]
for(int i=0;i<4;i++) // looping
{
t[i]=new TextField(10); // initializing text field
p.add(l[i]); //adding label in the panel
p.add(t[i]); //adding text box in the panel
}
p.add(but); // adding button but in the panel
p.add(but1); // adding button but 1 in the panel
p.add(show); // adding button show in the panel
p.add(btnusercred); // adding button btnusercred in the panel
p.add(btnloandet); // adding button btnloandet in the panel
but1.setVisible(false); // setting visibility false for but1
l[2].setVisible(false); // setting visibility false for l[2]
l[3].setVisible(false); // setting visibility false for l[3]
t[2].setVisible(false); // setting visibility false for t[2]
t[3].setVisible(false); // setting visibility false for t[3]
add(p);
add(p1);
}
String testAccount(int d_amt,int w_amt)
{
String msg="";
b.deposit(d_amt); // calling deposit method
System.out.println("d_amt"+d_amt);
JOptionPane.showMessageDialog(frame, "Transaction Succesful!"); //
Raising Alert
//msg="Transaction Succesful";
/*
try
{
b.withdraw(w_amt);
14
}catch(FundsInsufficientException fe)
{
fe=new FundsInsufficientException(b.amount,w_amt);
msg=String.valueOf(fe);
}*/
return msg;
}
public void actionPerformed(ActionEvent ae) // invoked when mouse click
is in action
{
String str=ae.getActionCommand(); // calling action command
if(str.equals("Create Account")) // checking create account
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true); // setting visibility for the buttons show
l[2].setVisible(true); // setting visibility for the label l[2]
l[3].setVisible(true); // setting visibility for the label l[3]
t[2].setVisible(true); // setting visibility for the text box t[2]
t[3].setVisible(true);// setting visibility for the text box t[3]
but.setVisible(false); // setting visibility for the button but
l[0].setVisible(false); // setting visibility for the label l[0]
l[1].setVisible(false); // setting visibility for the label l[1]
t[0].setVisible(false); // setting visibility for the text box t[0]
t[1].setVisible(false); // setting visibility for the text box t[1]
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
return; // setting text to the label
}
if(str.equals("Show Details")) // checking show details or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true);// setting visibility for 2 buttons
l[2].setVisible(true);
l[3].setVisible(true);
t[2].setVisible(true);
t[3].setVisible(true);
but.setVisible(false);
l[0].setVisible(false);// setting visibility for 4 labels and 4 textboxes
l[1].setVisible(false);
15
{
fe=new FundsInsufficientException(b.amount,w_amt);
msg=String.valueOf(fe);
}*/
return msg;
}
public void actionPerformed(ActionEvent ae) // invoked when mouse click
is in action
{
String str=ae.getActionCommand(); // calling action command
if(str.equals("Create Account")) // checking create account
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true); // setting visibility for the buttons show
l[2].setVisible(true); // setting visibility for the label l[2]
l[3].setVisible(true); // setting visibility for the label l[3]
t[2].setVisible(true); // setting visibility for the text box t[2]
t[3].setVisible(true);// setting visibility for the text box t[3]
but.setVisible(false); // setting visibility for the button but
l[0].setVisible(false); // setting visibility for the label l[0]
l[1].setVisible(false); // setting visibility for the label l[1]
t[0].setVisible(false); // setting visibility for the text box t[0]
t[1].setVisible(false); // setting visibility for the text box t[1]
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
return; // setting text to the label
}
if(str.equals("Show Details")) // checking show details or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true);// setting visibility for 2 buttons
l[2].setVisible(true);
l[3].setVisible(true);
t[2].setVisible(true);
t[3].setVisible(true);
but.setVisible(false);
l[0].setVisible(false);// setting visibility for 4 labels and 4 textboxes
l[1].setVisible(false);
15
t[0].setVisible(false);
t[1].setVisible(false);
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
return;
}
if(str.equals("User Credentials")) // checking user credentials or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true);// setting visibility for 2 buttons
l[2].setVisible(true);
l[3].setVisible(true);
t[2].setVisible(true);
t[3].setVisible(true);
but.setVisible(false);
l[0].setVisible(false);// setting visibility for 4 labels and 4 textboxes
l[1].setVisible(false);
t[0].setVisible(false);
t[1].setVisible(false);
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
return; // returning result
}
if(str.equals("Loan Details")) // checking loan details or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
// object creation for the class Bank Account
but1.setVisible(true); // setting visibility for the button but1
show.setVisible(true); // setting visibility for the button show
l[2].setVisible(true); // setting visibility for the label l[2]
l[3].setVisible(true); // setting visibility for the label l[3]
t[2].setVisible(true); // setting visibility for the text box t[2]
t[3].setVisible(true); // setting visibility for the text box t[3]
but.setVisible(false); // setting visibility for the button but
l[0].setVisible(false);// setting visibility for the label l[0]
l[1].setVisible(false); // setting visibility for the label l[1]
t[0].setVisible(false); // setting visibility for the text box t[0]
t[1].setVisible(false); // setting visibility for the text box t[1]
lab1.setText("Account : "+b.accountno+", Loan Amount : "+b.amount);
16
t[1].setVisible(false);
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
return;
}
if(str.equals("User Credentials")) // checking user credentials or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
but1.setVisible(true);
show.setVisible(true);// setting visibility for 2 buttons
l[2].setVisible(true);
l[3].setVisible(true);
t[2].setVisible(true);
t[3].setVisible(true);
but.setVisible(false);
l[0].setVisible(false);// setting visibility for 4 labels and 4 textboxes
l[1].setVisible(false);
t[0].setVisible(false);
t[1].setVisible(false);
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
return; // returning result
}
if(str.equals("Loan Details")) // checking loan details or not
{
b=new
BankAccoun
t(Integer.parseInt(t[0].getText()),Integer.parseInt(t[1].getText()));
// object creation for the class Bank Account
but1.setVisible(true); // setting visibility for the button but1
show.setVisible(true); // setting visibility for the button show
l[2].setVisible(true); // setting visibility for the label l[2]
l[3].setVisible(true); // setting visibility for the label l[3]
t[2].setVisible(true); // setting visibility for the text box t[2]
t[3].setVisible(true); // setting visibility for the text box t[3]
but.setVisible(false); // setting visibility for the button but
l[0].setVisible(false);// setting visibility for the label l[0]
l[1].setVisible(false); // setting visibility for the label l[1]
t[0].setVisible(false); // setting visibility for the text box t[0]
t[1].setVisible(false); // setting visibility for the text box t[1]
lab1.setText("Account : "+b.accountno+", Loan Amount : "+b.amount);
16
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
return;
}
else
{
la
b.setText(testAccount(Integer.parseInt(t[2].getText()),Integer.parseInt(t
[3].getText())));// set text to the label lab
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
}
}
}
public class BankManager extends BankTeller //BankTeller is extended
Inheritance
{
public static void main(String arg[]) // Implementation starts here
{
BankTeller at=new BankTeller(); // Object Creation for Base Class
at.setTitle("Banking Software for NatioNarrow Building Society"); //
setting title
at.setSize(600,200); // setting size
at.setVisible(true); // making visible
}
}
class NewWindowAdapter extends WindowAdapter
{
public void windowClosing(WindowEvent we) // Window Closing
{
System.exit(0);// exiting
}
}
class BankAccount
{
int accountno;
int amount;
BankAccount(int num,int amt) // Account Creation with initial amount
{
accountno=num; // initializing value to accountno
17
}
else
{
la
b.setText(testAccount(Integer.parseInt(t[2].getText()),Integer.parseInt(t
[3].getText())));// set text to the label lab
lab1.setText("Account : "+b.accountno+", Current Balance : "+b.amount);
// set text to the label lab1
}
}
}
public class BankManager extends BankTeller //BankTeller is extended
Inheritance
{
public static void main(String arg[]) // Implementation starts here
{
BankTeller at=new BankTeller(); // Object Creation for Base Class
at.setTitle("Banking Software for NatioNarrow Building Society"); //
setting title
at.setSize(600,200); // setting size
at.setVisible(true); // making visible
}
}
class NewWindowAdapter extends WindowAdapter
{
public void windowClosing(WindowEvent we) // Window Closing
{
System.exit(0);// exiting
}
}
class BankAccount
{
int accountno;
int amount;
BankAccount(int num,int amt) // Account Creation with initial amount
{
accountno=num; // initializing value to accountno
17
amount=amt; // initializing value to amount
}
public void deposit(int amt)// depositing function
{
amount=amount+amt; // adding
}
public void withdraw(int amt) throws FundsInsufficientException
// withdrawal function
{
if(amt>amount) // checks for sufficient amount
throw new FundsInsufficientException(amount,amt); // raising
exception
else
amount=amount-amt; // withdrawal
}
}
class FundsInsufficientException extends Exception
{
int balance;
int withdraw_amount;
FundsInsufficientException(int bal,int w_amt) // User Defined Exception
Method
{
balance=bal; //
withdraw_amount=w_amt;
}
public String toString()
{
return "The drawing amount ("+withdraw_amount+") is to be below than an
existing balance ("+balance+"). Withdrawal never be processed.";//
specifying withdrawal //never be processed
}
}
18
}
public void deposit(int amt)// depositing function
{
amount=amount+amt; // adding
}
public void withdraw(int amt) throws FundsInsufficientException
// withdrawal function
{
if(amt>amount) // checks for sufficient amount
throw new FundsInsufficientException(amount,amt); // raising
exception
else
amount=amount-amt; // withdrawal
}
}
class FundsInsufficientException extends Exception
{
int balance;
int withdraw_amount;
FundsInsufficientException(int bal,int w_amt) // User Defined Exception
Method
{
balance=bal; //
withdraw_amount=w_amt;
}
public String toString()
{
return "The drawing amount ("+withdraw_amount+") is to be below than an
existing balance ("+balance+"). Withdrawal never be processed.";//
specifying withdrawal //never be processed
}
}
18
Output
19
19
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
20
5. Critical Discussion : Introduction
NationNarrow Reflection and Critical-Evaluation
It’s a Banking Software for NatioNarrow Building Society. Actually the Role Performed by
Software Architect in team of System Analysis Designer is considered. The Software Main Users
are
Bank Teller and then on behalf Customers
Bank Manager
The user Performing Operations are categorized as follows:
The Bank Teller or a customer can do an operation of following
o Amount Depositing
o Amount Withdrawals and
o Fund Transfer.
o Showing all the transactions
o Bank statement between dates
o Requesting a balance update
The Bank Manager can do an operation of following
o Same operation of Bank Tellers. Additionally
o Creating new user credentials (user logins and passwords) if hiring new
staff.
o Approving and granting of loans,
o Approving to open various new bank accounts
21
NationNarrow Reflection and Critical-Evaluation
It’s a Banking Software for NatioNarrow Building Society. Actually the Role Performed by
Software Architect in team of System Analysis Designer is considered. The Software Main Users
are
Bank Teller and then on behalf Customers
Bank Manager
The user Performing Operations are categorized as follows:
The Bank Teller or a customer can do an operation of following
o Amount Depositing
o Amount Withdrawals and
o Fund Transfer.
o Showing all the transactions
o Bank statement between dates
o Requesting a balance update
The Bank Manager can do an operation of following
o Same operation of Bank Tellers. Additionally
o Creating new user credentials (user logins and passwords) if hiring new
staff.
o Approving and granting of loans,
o Approving to open various new bank accounts
21
Scope of the Software
The software is designed to satisfy the basic needs of Bank Customers, Bank Teller and
Bank Manager. It is devised to perform general operation like account creation under
several categories, deposit, withdrawal, enquiry about an account, fund transferring,
adding new credentials and sanctioning of loans with the help of an user friendly
interfaces. This system will work to perform various operations of Bank Teller and behalf
of a customer and Bank Manager various operations. This software is developed by
considering the utilization of its functionalities in a real time scenario before developing a
code it is critically analyzed with the provided requirements then it is followed by
development of various UML diagram like use case modeling diagram, class modeling
diagram and sequence model ling diagram. Based on the developed model the code
development has been taken place. Hence, this system will support the end user in all the
ways .
6. Critical self-reflection on the work
Software Development Life Cycle (SDLC) of this software
Requirement Gathering
The first and foremost process in any of the software development is collecting necessary
requirements from the clients. In this software development the case study is critically analyzed
to gather the proper requirements to perform all the designing and coding part. When the
requirements are not analyzed properly, it is not possible to provide a clear and detailed solution
to the end users. Once the requirements are clear according to the scenario, and then the half of
the problem is well solved .It represents the key objectives of a problem to be solved. At last the
developed code must met the produced requirements of the clients. If it is met, it’s a quality
product
22
The software is designed to satisfy the basic needs of Bank Customers, Bank Teller and
Bank Manager. It is devised to perform general operation like account creation under
several categories, deposit, withdrawal, enquiry about an account, fund transferring,
adding new credentials and sanctioning of loans with the help of an user friendly
interfaces. This system will work to perform various operations of Bank Teller and behalf
of a customer and Bank Manager various operations. This software is developed by
considering the utilization of its functionalities in a real time scenario before developing a
code it is critically analyzed with the provided requirements then it is followed by
development of various UML diagram like use case modeling diagram, class modeling
diagram and sequence model ling diagram. Based on the developed model the code
development has been taken place. Hence, this system will support the end user in all the
ways .
6. Critical self-reflection on the work
Software Development Life Cycle (SDLC) of this software
Requirement Gathering
The first and foremost process in any of the software development is collecting necessary
requirements from the clients. In this software development the case study is critically analyzed
to gather the proper requirements to perform all the designing and coding part. When the
requirements are not analyzed properly, it is not possible to provide a clear and detailed solution
to the end users. Once the requirements are clear according to the scenario, and then the half of
the problem is well solved .It represents the key objectives of a problem to be solved. At last the
developed code must met the produced requirements of the clients. If it is met, it’s a quality
product
22
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
e.g. Here the case study scenario is stated precisely, which paves the path for gathering
basic requirements of the software
Design
Based on the gathered requirements it is analyzed thoroughly to design who are all the
actors and what actions they are going to perform in a Use case logical diagram. As it is
developed in java language that supports object oriented programming. Hence, it is required to
design another logical diagram which is termed as class diagram. It just represents different
classes and its attributes and functions along with the relationship between different classes
existing in a program. In this context, it is also represented with sequence diagram which
specifies the sequence of objet reactions in a program execution. It depicts the scenario of how
an one instance of a class interacts with an another object. This modeling helps to focus on
logical representation of a system in three levels i.e. use case level, class level and scenario level.
Use case modeling diagram is employed for actor and their use case operation depiction.
Class Modeling Diagram is employed for representing class relationships and their attributes
representation. Sequential Modeling Diagram is employed for the depiction of sequential actions
happening in a system
Development
Based on the designing part the coding is generated which implements most of the object
oriented concepts like classes, objects, abstraction, encapsulation, inheritance, static binding,
message passing. As this software is designed in an object oriented programming language
named java which supports the major key concept of object oriented programming concepts. The
software utilizes the code reusable functionality. Java supports various built in packages for easy
creation of code. It is developed with the help of an Integrated Development Environment (IDE)
namely Microsoft Visual Studio Code version 1.36. This tool is employed for this software
customization in a user friendly manner. There are so many IDEs available on an Internet which
are all freely downloadable. This software also uses Java Frames (JFrame) to support GUI
features in java and also supports user friendly interfaces
23
basic requirements of the software
Design
Based on the gathered requirements it is analyzed thoroughly to design who are all the
actors and what actions they are going to perform in a Use case logical diagram. As it is
developed in java language that supports object oriented programming. Hence, it is required to
design another logical diagram which is termed as class diagram. It just represents different
classes and its attributes and functions along with the relationship between different classes
existing in a program. In this context, it is also represented with sequence diagram which
specifies the sequence of objet reactions in a program execution. It depicts the scenario of how
an one instance of a class interacts with an another object. This modeling helps to focus on
logical representation of a system in three levels i.e. use case level, class level and scenario level.
Use case modeling diagram is employed for actor and their use case operation depiction.
Class Modeling Diagram is employed for representing class relationships and their attributes
representation. Sequential Modeling Diagram is employed for the depiction of sequential actions
happening in a system
Development
Based on the designing part the coding is generated which implements most of the object
oriented concepts like classes, objects, abstraction, encapsulation, inheritance, static binding,
message passing. As this software is designed in an object oriented programming language
named java which supports the major key concept of object oriented programming concepts. The
software utilizes the code reusable functionality. Java supports various built in packages for easy
creation of code. It is developed with the help of an Integrated Development Environment (IDE)
namely Microsoft Visual Studio Code version 1.36. This tool is employed for this software
customization in a user friendly manner. There are so many IDEs available on an Internet which
are all freely downloadable. This software also uses Java Frames (JFrame) to support GUI
features in java and also supports user friendly interfaces
23
Software Testing
Software testing is the practice to appraise the features of the software to test whether
software met the user needs with zero defects. It is possible to test software both manually and
automatically. In cases, test case and report is generated. The test case and its report is
ascertained for the quality of a product release. The input parameter is given to test the outcome
of a proposed software application. This software is programmed in such a way that to suit the
needy of end users by eliminating all the bugs. There are various testing types existing to test
source code workings which include manual, automated (CASE) tools, white (glass) box, black
(dark) box, functional, non functional.
Software testing has various altitudes of testing.It includes Testing by an Unit, Testing by
an integration, Testing through a system and Testing by the customer acceptance level
Unit Testing
This unit testing is exercised by testing a code in a unit by unit level i.e. class by class the
code is tested to check the reachability of a code. In critical projects the source is divided into
multiple parts or unit and tested individually. Here, in this software this unit testing is performed
to test each class performance.
Integrated Testing
This integration testing is exercised by testing a code in combined fashion. i.e. the
splitted classes are joined together and tested to check the reachability and integrated working of
a code. This testing plays a crucial role in checking the complete software functionality as per
the requirements of specified software. Here, the software is tested in an integrated way by
combining all the classes together and experimented the amalgamation of separate class unit are
functioning very well
System Testing
This system testing is exercised after the amalgamation of unit testing. Here, the complete
software is organized and it is tested to fulfill the completeness and defects free software. In the
24
Software testing is the practice to appraise the features of the software to test whether
software met the user needs with zero defects. It is possible to test software both manually and
automatically. In cases, test case and report is generated. The test case and its report is
ascertained for the quality of a product release. The input parameter is given to test the outcome
of a proposed software application. This software is programmed in such a way that to suit the
needy of end users by eliminating all the bugs. There are various testing types existing to test
source code workings which include manual, automated (CASE) tools, white (glass) box, black
(dark) box, functional, non functional.
Software testing has various altitudes of testing.It includes Testing by an Unit, Testing by
an integration, Testing through a system and Testing by the customer acceptance level
Unit Testing
This unit testing is exercised by testing a code in a unit by unit level i.e. class by class the
code is tested to check the reachability of a code. In critical projects the source is divided into
multiple parts or unit and tested individually. Here, in this software this unit testing is performed
to test each class performance.
Integrated Testing
This integration testing is exercised by testing a code in combined fashion. i.e. the
splitted classes are joined together and tested to check the reachability and integrated working of
a code. This testing plays a crucial role in checking the complete software functionality as per
the requirements of specified software. Here, the software is tested in an integrated way by
combining all the classes together and experimented the amalgamation of separate class unit are
functioning very well
System Testing
This system testing is exercised after the amalgamation of unit testing. Here, the complete
software is organized and it is tested to fulfill the completeness and defects free software. In the
24
software development it is performed before the stage of user acknowledging testing
(Acceptance) . The whole system is investigated for the correctness of software.
Acceptance Testing
The project is proposed as per the requirements of the customer needs. The user checks
with a valid input and output, if the output suits the given input, and then customer is satisfied
Deployment
Deployment is ensured once the software is complete and all the bugs are fixed. It
ensures the software implementation is going to happen lively in the client site location. It is
going to be a last stage of process in the development life cycle of software. It provides the
actual solution whether the developed software is a high quality one or not. To deploy the
software the entire pre requisite has to be made well in advance to overcome the system,
network, platform, hardware difficulties in the client spot which reduces the risk of non
functioning of a software difficulties on the client site. This stage is attained once all the stage of
software testing is over and comes with defects free software level. Once all the testing’s are
satisfied with maximum quality and minimum defects, it is finally deployed at the client location
in an operational hierarchy
Feedback
After deployment, the feedback is entertained from the clients. The client feedback suggests
the actual outcome of software whether the software is successful or not and also to assure that
the proposed software met all the needs also it suggests the developer to improve the software
further. The positive feedback does not require any changes in the SDLC further, but in case of
negative feedback it is to be incorporated in the next version and modified suggested feedback
has to be introduced in the further release shortly which paves the path for successful completion
of a software
25
(Acceptance) . The whole system is investigated for the correctness of software.
Acceptance Testing
The project is proposed as per the requirements of the customer needs. The user checks
with a valid input and output, if the output suits the given input, and then customer is satisfied
Deployment
Deployment is ensured once the software is complete and all the bugs are fixed. It
ensures the software implementation is going to happen lively in the client site location. It is
going to be a last stage of process in the development life cycle of software. It provides the
actual solution whether the developed software is a high quality one or not. To deploy the
software the entire pre requisite has to be made well in advance to overcome the system,
network, platform, hardware difficulties in the client spot which reduces the risk of non
functioning of a software difficulties on the client site. This stage is attained once all the stage of
software testing is over and comes with defects free software level. Once all the testing’s are
satisfied with maximum quality and minimum defects, it is finally deployed at the client location
in an operational hierarchy
Feedback
After deployment, the feedback is entertained from the clients. The client feedback suggests
the actual outcome of software whether the software is successful or not and also to assure that
the proposed software met all the needs also it suggests the developer to improve the software
further. The positive feedback does not require any changes in the SDLC further, but in case of
negative feedback it is to be incorporated in the next version and modified suggested feedback
has to be introduced in the further release shortly which paves the path for successful completion
of a software
25
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
IssuesProfessional, legal, social, security and ethical issues in development and use of
software in an organisational context.
The various issues pertaining to professional, legal, social, security and security during the
development and employing the software in an organization includes the following areas
Improper understanding of requirements and Poor designing of code is a big issue in
professional software design. Software design process becomes successful when the
requirements are clearly defined and understood. The professional designing principles
specifies the same
Proper implementation with privacy factor is a legal issue in software design. The
software has to be implemented with all the security features enabling the safety criteria
Non assuring the quality software is a social issue in the development of software. The
quality focus of software should not be withdrawn at any cost. It reflects the efficiency of
the software performance
Software with bugs, Inadequate Testing and Debugging, non safety features are security
related issues in the software development. The complete software development should
ensure the error free code with sufficient types and levels of testing process and
correcting errors in case of existence of error in a coding part
Improper reporting and investigation, improper usage and overconfidence in using
software is an ethical issues pertaining to software development. The Software
Development phase is to be reported promptly to the lead at proper time interval and
investigations has to be made in an utilization of the software principles
7. Conclusion
It is concluded that the designed software will meet the basic requirements of the customers,
bank tellers and bank managers in all the ways. It is also proposed by considering the highest
quality aspects with zero defects in a customer friendly way. This software is developed based on
the constructed models of use case diagram, class diagram and sequence diagram which are
specified earlier in the practical solution prototype. This software has undergone various testing
principles like Absence of error- fallacy, pesticide paradox, etc., also several types and levels of
26
software in an organisational context.
The various issues pertaining to professional, legal, social, security and security during the
development and employing the software in an organization includes the following areas
Improper understanding of requirements and Poor designing of code is a big issue in
professional software design. Software design process becomes successful when the
requirements are clearly defined and understood. The professional designing principles
specifies the same
Proper implementation with privacy factor is a legal issue in software design. The
software has to be implemented with all the security features enabling the safety criteria
Non assuring the quality software is a social issue in the development of software. The
quality focus of software should not be withdrawn at any cost. It reflects the efficiency of
the software performance
Software with bugs, Inadequate Testing and Debugging, non safety features are security
related issues in the software development. The complete software development should
ensure the error free code with sufficient types and levels of testing process and
correcting errors in case of existence of error in a coding part
Improper reporting and investigation, improper usage and overconfidence in using
software is an ethical issues pertaining to software development. The Software
Development phase is to be reported promptly to the lead at proper time interval and
investigations has to be made in an utilization of the software principles
7. Conclusion
It is concluded that the designed software will meet the basic requirements of the customers,
bank tellers and bank managers in all the ways. It is also proposed by considering the highest
quality aspects with zero defects in a customer friendly way. This software is developed based on
the constructed models of use case diagram, class diagram and sequence diagram which are
specified earlier in the practical solution prototype. This software has undergone various testing
principles like Absence of error- fallacy, pesticide paradox, etc., also several types and levels of
26
testing are performed which affixes glass box , dark box testing, functional and non functional
testing and different hierarchy of testing from unit level to user acceptance level. From all the
levels of testing, it is apparently stated that the software is free from all forms of error
References
R S Madanayake1, G. K. (2017). Transforming Simplified Requirement in to a UML Use Case
Diagram . International Journal of Computer Science and Software Engineering , 61-70.
Saleh, O. S. (2015). Designing and Implementing of ATM System Using Object Oriented
Approach. International journal of Scientific & Engineering Research .
Sergievskiy, M. (2017). Description Logic Application for UML Class Diagrams Optimization.
International Journal of Advanced Computer Science and Applications , 5.
Felipe P. Vista IV 1, K. T. (2013). System Design, Development & Deployment Using Rapid
By-Customer Demand With Business Principles Approach. pp 76-86 , 76-84.
Pathak, M. S. (2017). Acceptance Testing Technique: A Survey along with Its Operating
Frameworks . International Journal on Research and Innovation Trends in Computing and
Communications , 772-775.
Eduardo Witter dos Santos & Ingrid Nunes (2018). Investigating the effectiveness of peer code
review in distributed software development based on objective and subjective data. Journal of
Software Engineering Research and Development ,volume 6
Baysal, O, Kononenko O, Holmes R, Godfrey MW (2016). Investigating technical and non-
technical factors influencing modern code review. Empircal Software Engineering 21(3):932–
959.
27
testing and different hierarchy of testing from unit level to user acceptance level. From all the
levels of testing, it is apparently stated that the software is free from all forms of error
References
R S Madanayake1, G. K. (2017). Transforming Simplified Requirement in to a UML Use Case
Diagram . International Journal of Computer Science and Software Engineering , 61-70.
Saleh, O. S. (2015). Designing and Implementing of ATM System Using Object Oriented
Approach. International journal of Scientific & Engineering Research .
Sergievskiy, M. (2017). Description Logic Application for UML Class Diagrams Optimization.
International Journal of Advanced Computer Science and Applications , 5.
Felipe P. Vista IV 1, K. T. (2013). System Design, Development & Deployment Using Rapid
By-Customer Demand With Business Principles Approach. pp 76-86 , 76-84.
Pathak, M. S. (2017). Acceptance Testing Technique: A Survey along with Its Operating
Frameworks . International Journal on Research and Innovation Trends in Computing and
Communications , 772-775.
Eduardo Witter dos Santos & Ingrid Nunes (2018). Investigating the effectiveness of peer code
review in distributed software development based on objective and subjective data. Journal of
Software Engineering Research and Development ,volume 6
Baysal, O, Kononenko O, Holmes R, Godfrey MW (2016). Investigating technical and non-
technical factors influencing modern code review. Empircal Software Engineering 21(3):932–
959.
27
1 out of 27
Related Documents
Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.