Software Engg - Lab - Manual
Software Engg - Lab - Manual
LDCE-IT-SE-MANUAL VER:2020
L D College of Engineering, Ahmedabad
Department of Information Technology
GTU B.E. 6th Semester 2160701- Software Engineering
Practical List
Sr. Aim Hrs
No.
1 SDLC Models 2
Study and Prepare Summarize various Software Models.
Application, Advantages, Disadvantages
2 Software Engineering Project 2
Select a MIS System and Prepare Problem Description, Solution, User Roles and Responsibility,
Inputs and Deliverable Output Products for system
Prepare List of Requirements with Classification of Requirement ( Feasibility, Functional
/Non Functional, Type: User/System, Priority, Delivery Mode: InPhase/Immediate )
Prepare SRS Document for Selected Project
3 Structured Software Engineering 4
Prepare following software engineering documents
Data flow Diagrams (0 level to ER Diagram
Higher levels) Database Queries
Data Dictionary
4 Object Oriented Software Engineering: Structural UML Diagrams 4
Prepare following diagrams for selected project:
Class diagram, Component diagram
Object diagram Composite structure diagram
Package diagram Deployment diagram
5 Object Oriented Software Engineering: Behavioral UML Diagrams 4
Prepare following diagrams for selected project:
Use case diagram Communication diagram
Activity diagram Interaction overview diagram
Sequence diagram Timing diagram
State diagram
6 User Interface Design 2
Draw User Interface using CUI/GUI Methods-Menu Driven, Card Driven for selected project.
Prepare Software Design Document for the Project.
7 Software Project Management :Activity Scheduling 2
Prepare the Time Line and Activity Scheduling using Turbo Project, Microsoft Project Tool
Prepare Software Project Plan Document/Gantt Chart for the Project
8 Software Project Cost Estimation 2
Calculate the Various Costs using CoCoMo, Function Point ,Algorithmic Cost Modeling
Methods
9 Software Testing 2
Design Test Cases and Scenarios for Testing Software as a parts and as a whole
Prepare Software Project Test Plan Document for the Project
10 Case study on CASE Tools for Software Processes 2
11 Review of Website/ Desktop Application from Software Engineering Perspectives. 2
(LDCE-IT-SE-MANUAL VER:2020) 1
INDEX
GTU B.E. 6th Semester Subject: 2160701- Software Engineering
Student Name: Nishchal Visavadiya Enrollment No:170280116122
Student Name: Priyank Vora Enrollment No: 170280116123
Student Name: Vavadiya Hardik Enrollment No: 170280116120
Sr.
Aim Date Mark Sign
No.
1 SDLC Models
Faculty Sign:__________________
(LDCE-IT-SE-MANUAL VER:2020) 2
Practical 1: SDLC Models
AIM: Study and Prepare Summarize various Software Models. Application, Advantages,
Disadvantages
Models: Waterfall Model, Iterative Waterfall model, Spiral Model, Prototyping model, V-
Shape SDLC, Agile SDLC
Parameters:
A. Description
B. Diagram
C. Stages/Phases
D. Type of Software where it is applicable
E. Characteristics of Software Project
F. Characteristics of Software Project Team with Size
G. Risk Associated with Project
H. Characteristics of User/Customer
I. Scope and Cost of Change Request Management
Waterfall model
The Waterfall Model was first Process Model to be introduced. It is also referred to as a linear-
sequential life cycle model. It is very simple to understand and use. In a waterfall model, each
phase must be completed fully before the next phase can begin. This type of model is basically
used for the project which is small and there are no uncertain requirements. At the end of each
phase, a review takes place to determine if the project is on the right path and whether or not to
continue or discard the project. In this model the testing starts only after the development is
complete. In waterfall model phases do not overlap
(LDCE-IT-SE-MANUAL VER:2020) 3
Sequential Phases in the Waterfall Model
1. Requirements: The first phase involves understanding what needs to design and what is
its function, purpose, etc. Here, the specifications of the input and output or the final
product are studied and marked.
2. System Design: The requirement specifications from the first phase are studied in this
phase and system design is prepared. System Design helps in specifying hardware and
system requirements and also helps in defining overall system architecture. The software
code to be written in the next stage is created now.
3. Implementation: With inputs from system design, the system is first developed in small
programs called units, which are integrated into the next phase. Each unit is developed
and tested for its functionality which is referred to as Unit Testing.
4. Integration and Testing: All the units developed in the implementation phase are
integrated into a system after testing of each unit. The software designed, needs to go
through constant software testing to find out if there are any flaws or errors. Testing is
done so that the client does not face any problem during the installation of the software.
(LDCE-IT-SE-MANUAL VER:2020) 4
5. Deployment of System: Once the functional and non-functional testing is done, the
product is deployed in the customer environment or released into the market.
6. Maintenance: This step occurs after installation, and involves making modifications to
the system or an individual component to alter attributes or improve performance. These
modifications arise either due to change requests initiated by the customer, or defects
uncovered during live use of the system. The client is provided with regular maintenance
and support for the developed software.
It is easy to manage due to the rigidity of the model – each phase has specific
deliverable and a review process.
In this model phases are processed and completed one at a time. Phases do not overlap.
Waterfall model works well for smaller projects where requirements are very well
understood.
Not suitable for the projects where requirements are at a moderate to high risk of
changing.
(LDCE-IT-SE-MANUAL VER:2020) 5
Technology is understood.
There are no ambiguous requirements
Ample resources with required expertise are available freely
The project is short.
However, very less customer interaction is involved during the development of the product.
Once the product is ready then only it can be demoed to the end users. Once the product is
developed and if any failure occurs then the cost of fixing such issues are very high, because we
need to update everywhere from document till the logic.
PROTOTYPING MODEL
It always happens that a customer defines a set of general objectives for software but does not
identify detailed input, processing, or output requirements. In other cases, the developer may be
unsure of the efficiency of an algorithm, the adaptability of an operating system, or the form that
human/machine interaction should take. In these and many other situations, a prototyping
paradigm may offer the best approach.
Ideally, the prototype serves as a mechanism for identifying software requirements.
If a working prototype is built, the developer attempts to use existing program fragments or
applies tools that enable working programs to be generated quickly.
(LDCE-IT-SE-MANUAL VER:2020) 6
Prototyping Model has following six SDLC phases as follow:
This phase will not over until all the requirements specified by the user are met. Once
the user is satisfied with the developed prototype, a final system is developed based on
the approved final prototype.
(LDCE-IT-SE-MANUAL VER:2020) 7
Step 6: Implement Product and Maintain
Once the final system is developed based on the final prototype, it is thoroughly tested
and deployed to production. The system undergoes routine maintenance for minimizing
downtime and prevent large-scale failures.
(LDCE-IT-SE-MANUAL VER:2020) 8
It is very difficult for software developers to accommodate all the changes demanded
by the clients.
After seeing an early prototype model, the customers may think that the actual product
will be delivered to him soon.
The client may lose interest in the final product when he or she is not happy with the
initial prototype.
Developers who want to build prototypes quickly may end up building sub-standard
Both stakeholders and software engineers like the prototyping paradigm. Users
get a feel for the actual system, and developers get to build something immediately.
SPIRAL MODEL
The spiral model, originally proposed by Boehm, is an evolutionary software model that couples
the iterative nature of prototyping with the controlled and systematic aspects of the linear
segmental model.
(LDCE-IT-SE-MANUAL VER:2020) 9
It includes estimating the cost, schedule and resources for the iteration. It also involves
understanding the system requirements for continuous communication between the
system analyst and the customer
Risk Analysis
Identification of potential risk is done while risk mitigation strategy is planned and
finalized
Engineering
It includes testing, coding and deploying software at the customer site
Evaluation
Evaluation of software by the customer. Also, includes identifying and monitoring risks
such as schedule slippage and cost overrun
(LDCE-IT-SE-MANUAL VER:2020) 10
ITERATIVE-ENHANCEMENT MODEL
The iterative-enhancement model combines elements of the linear sequential model (applied
repetitively) with the iterative philosophy of prototyping. In this model, the software is broken
down into several modules, which are incrementally developed and delivered. First, the
development team develops the core module of the system and then it is later refined into
increasing levels of capability of adding new functionalities in successive versions.
(LDCE-IT-SE-MANUAL VER:2020) 11
Disadvantages of Iterative-Enhancement Model
The various disadvantages of the iterative-enhancement model include:
Software breakage, that is, later increments may require modifications to earlier
increments.
Programmers may be more productive working on one large system than on a series of
smaller ones.
Some problems are difficult to divide into functional units (modules), which can be
incrementally developed and delivered.
RAD MODEL
The RAD (Rapid Application Development Model) model is proposed when requirements and
solutions can be modularized as independent system or software components, each of which can
be developed by different teams. After these smaller system components are developed, they are
integrated to produce the large software system solution. The modularization could be on a
functional, technology, or architectural basis, such as front-end-back-end, client side-server side,
and so on.
RAD becomes faster if the software engineer uses the component’s technology such that the
components are really available for reuse. Since the development is distributed into component-
development teams, the teams work in tandem and total development is completed in a short
period (i.e., 60 to 90 days).
(LDCE-IT-SE-MANUAL VER:2020) 12
Disadvantages of RAD Model
The various disadvantages of the RAD model include:
For large, but scalable projects, RAD requires sufficient human resources to create the
right number of RAD teams.
If developers and customers are not committed to the rapid-fire activities necessary to
complete the system in a much abbreviated timeframe, RAD projects will fail.
If a system cannot be properly modularized, building the components necessary for
RAD will be problematic.
If high performance is an issue, and performance is to be achieved through tuning the
interfaces to system components, the RAD approach may not work.
RAD may not be appropriate when technical risks are high (for example, when a new
application makes heavy use of new technology).
(LDCE-IT-SE-MANUAL VER:2020) 13
Getting things done.
Psychological safety.
The right skills in your team.
Your tech-stack is a right fit.
Characteristics of user/customers
Demographics
Geographics
Psychographics
Behavioristics
Linguistics
Agile Model
The meaning of Agile is swift or versatile. "Agile process model" refers to a software
development approach based on iterative development. Agile methods break tasks into smaller
iterations, or parts do not directly involve long term planning. The project scope and
requirements are laid down at the beginning of the development process. Plans regarding the
number of iterations, the duration and the scope of each iteration are clearly defined in advance.
Each iteration is considered as a short time "frame" in the Agile process model, which typically
lasts from one to four weeks. The division of the entire project into smaller parts helps to
minimize the project risk and to reduce the overall project delivery time requirements. Each
iteration involves a team working through a full software development life cycle including
planning, requirements analysis, design, coding, and testing before a working product is
demonstrated to the client.
(LDCE-IT-SE-MANUAL VER:2020) 14
Phases of Agile Model:
Following are the phases in the Agile model are as follows:
Requirements gathering
Design the requirements
Construction/ iteration
Testing/ Quality assurance
Deployment
Feedback
1. Requirements gathering: In this phase, you must define the requirements. You should
explain business opportunities and plan the time and effort needed to build the project. Based on
this information, you can evaluate technical and economic feasibility.
(LDCE-IT-SE-MANUAL VER:2020) 15
2. Design the requirements: When you have identified the project, work with stakeholders to
define requirements. You can use the user flow diagram or the high-level UML diagram to show
the work of new features and show how it will apply to your existing system.
3. Construction/ iteration: When the team defines the requirements, the work begins. Designers
and developers start working on their project, which aims to deploy a working product. The
product will undergo various stages of improvement, so it includes simple, minimal
functionality.
4. Testing: In this phase, the Quality Assurance team examines the product's performance and
looks for the bug.
5. Deployment: In this phase, the team issues a product for the user's work environment.
6. Feedback: After releasing the product, the last step is feedback. In this, the team receives
feedback about the product and works through the feedback.
(LDCE-IT-SE-MANUAL VER:2020) 16
It reduces total development time.
AIM: Select a MIS System and Prepare Problem Description, Solution, User
Roles and Responsibility, Inputs and Deliverable Output Products for system
Project Title:
Stakeholders:
Major Requirements:
User Roles:
Responsibility of Roles:
Major Modules:
1.
2.
1. User (Responsible )
2. Priority(High/Medium/Low, Immediate/
NextPhase)
3. Input
4. Output
M1.R2
....
M2.R1
❖ Problem Definition
In the past, the paper based system were used for storing the data of all students, but paper based
system is the best to store small database. Also paper based system have many disadvantages like
no modification in data after once data entered, no back up option & no sharing of data.
(LDCE-IT-SE-MANUAL VER:2020) 18
It may help collecting perfect management in detail in a very short time, the collection will be
obvious, simple and sensible. It will help a person to know the management of passed year
perfectly and vividly. It also helps in current all works relative to college. It will be also reduced
the cost of collecting the management and collection procedure will go on smoothly.
The present project has been developed to meet the aspirations indicated in the modern age. An
attempt has been made through this project to do all easy and fast.
It provides current add, update, move next, move previous, move last, find and delete all facility
to accomplish the desired objective. The facility includes in this project and the suggested
activities have been organized to import knowledge and develop skills and attitude in the college
official works.
REQUIREMENT ANALYSIS
What is Requirement Analysis?
Requirement analysis activity is translating the gathered information during the analysis phase
into a document that defines a set of requirements. It encompasses those tasks that go into
determining the needs or conditions to meet for a new or altered product or project taking
account of the possibly conflicting requirement of the various stakeholders, analyzing,
documenting, validating and managing software or system Requirements.
▪ Interview: -
The interview is face to face, verbal inter personal communication in which a person called
interviewer asks a person who is interviewing to gather information about problem definition.
This is oldest and most often used techniques. There are two types of interview.
(LDCE-IT-SE-MANUAL VER:2020) 19
• Unstructured interview: Interview that is conducted with only a general goal or subject in mind
and few If any specific question. Open-ended question types are used in unstructured interview
that allows user to answer freely in appropriate way.
▪ Questionnaire: -
▪ Brainstorming session: -
It is a group technique that may be used during information gathering. It is also called group
discussion. It may lead new ideas quickly and promote creative thinking. This technique is used
by many companies to promote creative thinking
This session construct with actual users, middle level manager. Every idea documented in such
way that everyone can see it. On white board, notice board, transparency.
▪ Requirement: -
Requirements activity is translating the gathered information during the analysis phase into a
document that defines a set of requirements. Two types of requirement may be including:
❖ Functional requirement:
❖ Non-functional requirement:
(LDCE-IT-SE-MANUAL VER:2020) 20
▪ User interface: interface shall be compatible with web server like Google chrome Firefox etc.
▪ Hardware interface: Because we need internet to run this application. We must need hardware
like modem, WAN, LAN.
A programming approach is nothing but way of solving the computational problem. During the
design and development of new products, designers and engineers rely on both a bottom-up and
top-down approach.
A top down approach is essential the breaking down of a system to gain inside into Its
compositional sub system. In a top down approach an overview of the system in formulated
specifying but not detailing any first level sub system. Each sub system is them defined in yet
greater details, sometimes in many additions a sub system levels until the entire a specification in
reduced to best elements.
▪ Advantages:
• We are realizing a focus use of resources from the individual managed application.
• When the phase is completed for the managed application you have deeper, more mature
implementation of the identity management solution.
• Operation and maintain resources are not initial input severely as with the bottom up approach.
❖ Bottom up approach
(LDCE-IT-SE-MANUAL VER:2020) 21
A bottom up approach is the piecing of together of system to give rise to grand system thus
making to the original system and sub system of the emergency system. In a bottom up approach
the individual base element of system are first specified in detail. These elements are them linked
together to from larger sub system which then in terms are linked. Sometimes in many levels
until a complete top-level system is formed.
▪ Advantages:
▪ Early to clear the ideas about software because in bottom up we have on directional means all
modules are decided in starting so software developing become easy.
Developer requirement
1. Software requirement: -
▪ Technology: - Android
Android is a Linux based operating system developed for smart phones or tablet computers.
The official language for android is java. Large parts of Android are written in java.
My SQL is an open source relational database management system based on structured query
language.
(LDCE-IT-SE-MANUAL VER:2020) 22
▪ Tools: - Android studio
Android studio is an interested development environment from Google that provide developers
with tools needed to build application for android is platform.
2. Hardware Requirements: -
User requirement
1. Hardware Requirements:
2. Software Requirements:
Android
Android is a mobile operating system developed by Google, based on the Linux kernel and
designed primarily for touch screen mobile devices such as smartphones and tablets. Initially
developed by Android Inc., which Google bought in 2005, Android was unveiled in 2007.
Android Inc. was founded in Palo Alto, California in October 2003 by Andy Rubin, Rich Miner,
Nick Sears, and Chris White.
Why Android?
▪ Interface: -
Android's default user interface is mainly based on direct manipulation, using touch inputs that
loosely correspond to real-world actions, like swiping, tapping, pinching, and reverse pinching to
manipulate on-screen objects, along with a virtual keyboard. Game controllers and full-size
physical keyboards are supported via Bluetooth or USB.
▪ Beautiful UI: -
(LDCE-IT-SE-MANUAL VER:2020) 23
▪ Connectivity: -
GSM/EDGE, IDEN, CDMA, EV – DO, UMTS, Bluetooth, WIFI, LTE NFC and WIDI.
▪ Storage: -
SQLite is light weight relational, database is used for data storage purpose.
▪ Media support: -
Includes all types of audio and video formats files and support all types of image JPEG, PNG,
GTE.
▪ Messaging: -
▪ Web browser: -
Based on open source Web Kit layout engine, coupled with chromes vs JavaScript engine HTML
and CSS.
▪ Multitasking: -
User can jump one task to another task same time version application can run simultaneously.
MySQL
MySQL is an open-source relational database management system(RDBMS). The MySQL
development project has made its source code available under the terms of the GNU General
Public License, as well as under a variety of proprietary agreements.
It provides Security, Robustness, faster Deployment, Ease of Use and is easily available.
Considering the above features, we decided to use MySQL Server.
▪ Speed: -
▪ Easy to use: -
(LDCE-IT-SE-MANUAL VER:2020) 24
Multiple clients have concurrent access to one or more database simultaneously. Powerful and
flexible user privilege system.
▪ Portability: -
▪ Standard compliance: -
(LDCE-IT-SE-MANUAL VER:2020) 25
Practical 3: Structured Software Engineering
3. ER Diagram
manual or automated including the process, stores of data, and delays in the system. Data Flow
Diagrams are the central tool and the basis from which other components are developed. The
transformation of data from input to output, through processes, may be described logically and
independently of the physical components associated with the system. The DFD is also know as
(LDCE-IT-SE-MANUAL VER:2020) 26
DFDs are the model of the proposed system. They clearly should show the requirements
on which the new system should be built. Later during design activity this is taken as the basis
for drawing the system’s structure charts. The Basic Notation used to create a DFD’s are as
follows:
Process: People, procedures, or devices that use or produce (Transform) Data. The physical
Data Store: Here data are stored or referenced by a process in the System.
(LDCE-IT-SE-MANUAL VER:2020) 27
Context Level DATA FLOW DIAGRAM:
(LDCE-IT-SE-MANUAL VER:2020) 28
CONTEXT LEVEL DATA FLOW DIAGRAM
Branches
Data Base
Administrator Data Input Stages Data Output Stages
Services
Login
Eployee Data Input Stages Data Output Stages UI Screens
Transactions
Cheques
Balance
InternetBanking
System Process
AUTHENTICATION DFD:
(LDCE-IT-SE-MANUAL VER:2020) 29
GUI Interface Username,Password Authentication Server
NO
ADMIN:
(LDCE-IT-SE-MANUAL VER:2020) 30
CONTEXT LEVEL DATA FLOW DIAGRAM
Employee
Data Base
Data Output Stages
Branches
Services
Data Output Stages UI Screens
Accounttypes
FundTransfer
CheqBookReq
InternetBanking
System Process
(LDCE-IT-SE-MANUAL VER:2020) 31
Add
Employee
ViewBranche
s
View
Services
ViewAccount
Types
UI displaying
Admin Login set
Of Operations
View
ChequeIssue
s
General
Information View
CustomerTra
nsactions
View
Requests
LEVEL-2:
Administrator:
(LDCE-IT-SE-MANUAL VER:2020) 32
GUI Interface InputStage Services OutputStage Data Base
AccountTtype
GUI Interface InputStage OutputStage Data Base
s
CheqBookRe
Data Base InputStage OutputStage GUI Interface
q
(LDCE-IT-SE-MANUAL VER:2020) 33
LEVEL-3:
ADMINISTRATOR:
Option1
GUI Interface Input Output AddEmployeeFile
AddEmployee
Option2
GUI Interface Input Output ViewEmployeeFile
ViewEmployee
(LDCE-IT-SE-MANUAL VER:2020) 34
Option3
GUI Interface Input Output AddBranchesFile
AddBranches
Option4
GUI Interface Input
ViewBranches
Output ViewBranchesFile
Option5
GUI Interface Input Output AddServicesfile
AddServices
Option6
GUI Interface Input Output ViewServicesFile
ViewServices
(LDCE-IT-SE-MANUAL VER:2020) 35
Option7 ViewFundTransferF
GUI Interface Input Output
ViewFundTransfer ile
ViewFundTransferF
Input DataStore Output GUI Interface
ile
Option8
GUI Interface Input Output ViewLogindetailsFile
ViewLoginDetails
ViewLoginDetailsFil
Input DataStore Output GIU Interface
e
Option9
GUI Interface Input Output ViewChqbookReqFile
ViewCheqBookreq
Option10
GUI Interface Input
ViewStopPayments
Output ViewStopPaymentFile
(LDCE-IT-SE-MANUAL VER:2020) 36
LEVEL-4:
Administrator:
Enter MidName
Open form() Enter FirstName LastName Bar Reg Date
-------------------------
------------------- ---------------------- -------------------------- --------------------------
4.1.1.2
4.1.1.0 4.1.1.1 4.1.1.3 4.1.1.4
Enter
Open form() Enter Description
AccTypeName EnterAbbreviation
------------------- ---------------------------
---------------------- 4.1.2.2
4.1.2.0 4.1.2.3
4.1.2.1
Enterintrest EnterMinBal
EnterMinOpenBal EnteMaxOpenBal
--------------------------- ---------------------------
4.1.2.4 4.1.2.5
4.1.2.6 4.1.2.7
Employee:
(LDCE-IT-SE-MANUAL VER:2020) 37
CONTEXT LEVEL DATA FLOW DIAGRAM
Customer
Data Base
Data Output Stages
Banks
FundTransfe
r
Data Output Stages UI Screens
Cheques
StopPayment
CusTransactio
n
InternetBanking
System Process
(LDCE-IT-SE-MANUAL VER:2020) 38
ViewBranche
s
Registration
View
Services
ViewAccount
Types
UI displaying
Employee Login set
Of Operations
View
ChequeIssue
s
General
Information View
CustomerTra
nsactions
LEVEL-2:
EMPLOYEE:
(LDCE-IT-SE-MANUAL VER:2020) 39
GUI Interface Input FundTransfer Output Data Base
CusTransactio
GUI Interface Input Output Data Base
n
CusTransactio
Data Base Input Output GUI Interface
n
LEVEL-3:
(LDCE-IT-SE-MANUAL VER:2020) 40
Employee:
Option1
GUI Interface Input
AddCustomers
Output AddCustomerFile
Option2
GUI Interface Input
ViewCustomerFile
Output ViewCustomerFile
Option3
GUI Interface Input
ViewBranches
Output ViewBranchesFile
(LDCE-IT-SE-MANUAL VER:2020) 41
Option4
GUI Interface Input
ViewAccountTypes
Output ViewAccountTypesFile
Option5
GUI Interface Input
ViewStopPayments
Output ViewStopPaymentsFile
Option6
GUI Interface Input
AddBalanceEnquiry
Output AddBalanceEnquiryFile
(LDCE-IT-SE-MANUAL VER:2020) 42
Option7
GUI Interface Input Output ViewBalanceEnquiryFile
ViewBalanceEnquiryFile
Option8
GUI Interface Input Output AddCheqBookReqFile
AddChequeBookReq
Option9
GUI Interface Input
ViewCheqBookReq
Output ViewCheqBookreqFile
Option10
GUI Interface Input AddMoneytransaction
Output AddMoneyTransactionFile
(LDCE-IT-SE-MANUAL VER:2020) 43
Option11
GUI Interface Input
ViewMoneyTransaction
Output ViewMoneyTransactionFile
LEVEL-4:
Employee:
LEVEL-0:
(LDCE-IT-SE-MANUAL VER:2020) 44
Customer:
(LDCE-IT-SE-MANUAL VER:2020) 45
Level1: Data Flow Diagram For Customer:
ViewBranche
s
Registration
View
Services
ViewAccount
Types
UI displaying
Customer Login set
Of Operations
Add Money
Transactions
General
Information View
MoneyTransa
ctions
LEVEL-2:
Customer:
(LDCE-IT-SE-MANUAL VER:2020) 46
GUI Interface Input LoginDetails Output Data Base
StopPayemen
GUI Interface Input Output Data Base
t
(LDCE-IT-SE-MANUAL VER:2020) 47
CusTransactio
GUI Interface Input Output Data Base
n
CusTransactio
Data Base Input Output GUI Interface
n
LEVEL-3:
Customer:
Option1
GUI Interface Input
ViewBankBranches
Output ViewBranchesFile
Option2
GUI Interface Input
ViewAccountType
Outptu ViewAccountTypeFile
(LDCE-IT-SE-MANUAL VER:2020) 48
Option3
GUI Interface Input
ViewLoginDetails
Output ViewLoginDetailsform
Option4
GUI Interface Input Output AddMoneyTransactionFile
AddMOneyTransaction
Option5
GUI Interface Input
ViewMoneyTransaction
Output ViewMoneyTransactionFile
(LDCE-IT-SE-MANUAL VER:2020) 49
Option6
GUI Interface Input AddChequeBookRequest Output AddChequeBookReqdetFile
Master
Option7
GUI Interface Input ViewChequeBookReque Output ViewChequeBookReqdetFile
stMaster
Option8
GUI Interface Input
ViewCheqIssueDet
Output ViewCheqIssueDetFile
LEVEL-4:
(LDCE-IT-SE-MANUAL VER:2020) 50
Customer:
Enter Enter
Enter RequestTime
Abbreviation
Open form() Enter AccountNo Enter
EnterRequestDate
Description
LawTypeName -------------------------
------------------- ----------------------------- ---------------------------
---------------------- 4.1.2.2
4.1.3.2
4.1.2.0
4.1.3.0 4.1.3.1 4.1.2.3
4.1.3.3
4.1.2.1
Level 4 Data Flow Diagram for Add Cheque Book Request Details
ER Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 51
SQL QUERIES FOR DATA BASE :
TABLE : ACCOUNTTYPEMASTER
CREATE TABLE ACCOUNTTYPEMASTER
(LDCE-IT-SE-MANUAL VER:2020) 52
(
ACCOUNTTYPEID NUMBER,
TYPENAME VARCHAR2(20 BYTE),
ABBREVATION VARCHAR2(20 BYTE),
MINOPENBALANCE NUMBER(10,2),
MAXOPENBALANCE NUMBER(10,2),
INTRESTAPPLICABLEBIT VARCHAR2(20 BYTE),
DESCRIPTION VARCHAR2(20 BYTE),
MINBALANCETOBEMAINTAINED NUMBER(10,2),
CHECKBOOKFACILITYBIT VARCHAR2(20 BYTE),
BANKTYPEBIT VARCHAR2(20 BYTE),
BALACNCETYPEBIT VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
BALANCEENQUIRYMASTER :
CREATE TABLE BALANCEENQUIRYMASTER
(
ENQUIRYID NUMBER,
ENQUIRYDATE DATE,
LOGINID VARCHAR2(20 BYTE),
FROMDATE DATE,
(LDCE-IT-SE-MANUAL VER:2020) 53
TODATE DATE,
ACCOUNTNO NUMBER,
AMOUNT NUMBER
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 54
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
BANKACCOUNTS:
ALTER TABLE BANKACCOUNTS ADD (
CONSTRAINT BANKACCOUNTS_PK
PRIMARY KEY
(ACCOUNTNO)
USING INDEX
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));
(LDCE-IT-SE-MANUAL VER:2020) 55
FOREIGN KEY (LOGINID)
REFERENCES LOGINDETAILS (LOGINNAME));
BANKACCOUNTTYPES:
CREATE TABLE BANKACCOUNTTYPES
(
BRANCHID NUMBER,
ACCOUNTYPEID NUMBER
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
BANKBRANCHMASTER:
CREATE TABLE BANKBRANCHMASTER
(
BRANCHID NUMBER,
BRANCHADDRESS VARCHAR2(20 BYTE),
BRANCHPHONENO1 VARCHAR2(20 BYTE),
BRANCHPHONENO2 VARCHAR2(20 BYTE),
BRANCHPHONENO3 VARCHAR2(20 BYTE),
EMAIL VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
(LDCE-IT-SE-MANUAL VER:2020) 56
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
BANKSERVICESMASTER:
CREATE TABLE BANKSERVICESMASTER
(
SERVICEID NUMBER,
SERVICENAME VARCHAR2(20 BYTE),
SERVICEACTIVESTATE VARCHAR2(20 BYTE),
SERVICEDESC VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 57
ALTER TABLE BANKSERVICESMASTER ADD (
PRIMARY KEY
(SERVICEID)
USING INDEX
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));
BRANCHEMPLOYEE:
CREATE TABLE BRANCHEMPLOYEE
(
LOGINNAME VARCHAR2(20 BYTE),
BRANCHADDRESS VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 58
FOREIGN KEY (LOGINNAME)
REFERENCES LOGINDETAILS (LOGINNAME));
BRANCHSERVICEMASTER:
CREATE TABLE BRANCHSERVICEMASTER
(
BRANCHID NUMBER,
SERVICEID NUMBER
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 59
FOREIGN KEY (SERVICEID)
REFERENCES BANKSERVICESMASTER (SERVICEID));
CHEQUEBOOKREQUESTMASTER :
CREATE TABLE CHEQUEBOOKREQUESTMASTER
(
REQUESTID NUMBER,
REQUESTDATE DATE,
LOGINID VARCHAR2(20 BYTE),
ACCOUNTNO NUMBER,
CHEQUEBOOKTEST VARCHAR2(20 BYTE),
PREVIOUSCHEQUEBOOKSTATUS VARCHAR2(20 BYTE),
STATUS VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CHEQUEISUEMASTER:
CREATE TABLE CHEQUEISUEMASTER
(
CHEQUEISSUEID NUMBER,
REQUESTID NUMBER,
ISUEDATE DATE,
FROMNUMBER NUMBER,
TONUMBER NUMBER,
ACCOUNTNO NUMBER,
EMPLOYEENAME VARCHAR2(20 BYTE),
NOOFCHEQUES NUMBER
(LDCE-IT-SE-MANUAL VER:2020) 60
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CUSTOMERTRANSACTIONMASTER:
CREATE TABLE CUSTOMERTRANSACTIONMASTER
(
TRANSACTIONID NUMBER,
EMPLOYEENAME VARCHAR2(20 BYTE),
TRANSACTIONDATE DATE,
TRANSACTIONTYPE VARCHAR2(20 BYTE),
AMOUNT NUMBER,
ACCOUNTNO NUMBER,
BRANCHNAME VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
(LDCE-IT-SE-MANUAL VER:2020) 61
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 62
FUNDSTRANSFER:
CREATE TABLE FUNDSTRANSFER
(
FUNDSTRANSFERID NUMBER,
FUNDSTRANSFERDATE DATE,
FROMACCOUNTNO VARCHAR2(20 BYTE),
TOACCOUNTNO VARCHAR2(20 BYTE),
AMOUNT NUMBER,
LOGINID VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
LOGINAUDIT:
(LDCE-IT-SE-MANUAL VER:2020) 63
CREATE TABLE LOGINAUDIT
(
LOGINID VARCHAR2(20 BYTE),
LOGINDATE DATE,
LOGINDESC VARCHAR2(200 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
LOGINDETAILS:
CREATE TABLE LOGINDETAILS
(
LOGINNAME VARCHAR2(20 BYTE),
PASSWORD VARCHAR2(20 BYTE),
FIRSTNAME VARCHAR2(20 BYTE),
LASTNAME VARCHAR2(20 BYTE),
LOGINTYPE VARCHAR2(20 BYTE),
LOGINSTATUS VARCHAR2(20 BYTE),
REGDATE DATE,
SQUESTIONID NUMBER,
SANSWER VARCHAR2(20 BYTE),
FIRSTLOGIN NUMBER,
PASSMODIFIEDDATE DATE
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
(LDCE-IT-SE-MANUAL VER:2020) 64
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
LOGINPROFILE:
CREATE TABLE LOGINPROFILE
(
LOGINID VARCHAR2(20 BYTE),
BIRTHDATE DATE,
HNO VARCHAR2(20 BYTE),
STREET VARCHAR2(20 BYTE),
CITY VARCHAR2(20 BYTE),
STATE VARCHAR2(20 BYTE),
COUNTRY VARCHAR2(20 BYTE),
(LDCE-IT-SE-MANUAL VER:2020) 65
PINCODE VARCHAR2(20 BYTE),
CONTACTNO VARCHAR2(20 BYTE),
EMAIL VARCHAR2(200 BYTE),
LOCALE VARCHAR2(20 BYTE),
PROFILEMODIFIEDDATE DATE
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
QUESTIONBASE :
CREATE TABLE QUESTIONBASE
(
QUESTIONID NUMBER,
QUESTIONDETAIL VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
(LDCE-IT-SE-MANUAL VER:2020) 66
NOCACHE
NOPARALLEL
MONITORING;
STOPPAYMENTMASTER :
CREATE TABLE STOPPAYMENTMASTER
(
STOPPAYMENTTYPEID NUMBER,
STOPPAYDATE DATE,
LOGINID VARCHAR2(20 BYTE),
ACCOUNTNO VARCHAR2(20 BYTE),
CHEQUENO NUMBER,
AMOUNT NUMBER(10,2),
CHEQUEDATE DATE,
REASONFORSTOPPING VARCHAR2(20 BYTE),
STATUS VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
(LDCE-IT-SE-MANUAL VER:2020) 67
(STOPPAYMENTTYPEID)
USING INDEX
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS 2147483645
PCTINCREASE 0
));
(LDCE-IT-SE-MANUAL VER:2020) 68
A class represent a concept which encapsulates state (attributes) and behavior (operations). Each
attribute has a type. Each operation has a signature. The class name is the only mandatory
information.
Class Name:
The name of the class appears in the first partition.
Class Attributes:
Attributes are shown in the second partition.
The attribute type is shown after the colon.
Attributes map onto member variables (data members) in code.
Class Visibility: The +, - and # symbols before an attribute and operation name in a class
denote the visibility of the attribute and operation.
+ denotes public attributes or operations
- denotes private attributes or operations,
# denotes protected attributes or operations
(LDCE-IT-SE-MANUAL VER:2020) 69
Parameter Directionality: Each parameter in an operation (method) may be denoted as
in, out or inout which specifies its direction with respect to the caller. This directionality is shown
before the parameter name.
Relationship
(LDCE-IT-SE-MANUAL VER:2020) 70
2. Object diagram (All Objects)
The use of object diagrams is fairly limited, mainly to show examples of data structures.
A. During the analysis phase of a project, you might create a class diagram to describe the
structure of a system and then create a set of object diagrams as test cases to verify the
accuracy and completeness of the class diagram.
B. Before you create a class diagram, you might create an object diagram to discover facts about
specific model elements and their links, or to illustrate specific examples of the classifiers
that are required.
C. Object Names: Every object is actually symbolized like a rectangle, that offers the name
from the object and its class underlined as well as divided with a colon.
D. Object Attributes: Similar to classes, you are able to list object attributes inside a separate
compartment. However, unlike classes, object attributes should have values assigned for
them.
E. Links: Links tend to be instances associated with associations. You can draw a link while
using the lines utilized in class diagrams.
3. Package diagram
Package diagrams are used to structure high level system elements. Packages are used for organizing
large system which contains diagrams, documents and other key deliverables.
A. Package Diagram can be used to simplify complex class diagrams, it can group classes into
packages.
B. A package is a collection of logically related UML elements.
C. Packages are depicted as file folders and can be used on any of the UML diagrams.
(LDCE-IT-SE-MANUAL VER:2020) 71
4. Component diagram
Component diagram is a collection of vertices and arcs and commonly contain components, interfaces
and dependency, aggregation, constraint, generalization, association, and realization relationships. It
may also contain notes and constraints.
A. Association
B. Composition
C. Aggregation
D. Constraint
E. Dependency
F. Links
Library
(LDCE-IT-SE-MANUAL VER:2020) 72
5. Composite structure diagram:
A. Composite Structure Diagrams allow the users to "Peek Inside" an object to see exactly what it
is composed of.
B. The internal actions of a class, including the relationships of nested classes, can be detailed.
C. Objects are shown to be defined as a composition of other classified objects.
D. Composite Structure Diagrams show the internal parts of a class.
E. Parts are named: partName:partType[multiplicity]
F. Aggregated classes are parts of a class but parts are not necessarily classes, a part is any
element that is used to make up the containing class.
(LDCE-IT-SE-MANUAL VER:2020) 73
6. Deployment diagram
A. They show the structure of the run-time system
B. They capture the hardware that will be used to implement the system and the links between
different items of hardware.
C. They model physical hardware elements and the communication paths between them
D. They can be used to plan the architecture of a system.
E. They are also useful for Document the deployment of software components or nodes
1 ) Class Diagram :
(LDCE-IT-SE-MANUAL VER:2020) 74
2) Object Diagram : jaate banavano
3) Package Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 75
4) Composite Structure Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 76
5) Component Diagram:
6) Deployment Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 77
(LDCE-IT-SE-MANUAL VER:2020) 78
Practical 5: Object Oriented Software Engineering: Behavioral
UML Diagrams
(LDCE-IT-SE-MANUAL VER:2020) 79
Identify pre- and post-conditions (the context) for use cases
Model workflows between/within use cases
Model complex workflows in operations on objects
Model in detail complex activities in a high level activity Diagram
3. Sequence diagram
Model high-level interaction between active objects in a system
Model the interaction between object instances within a collaboration that realizes a use case
Model the interaction between objects within a collaboration that realizes an operation
Either model generic interactions (showing all possible paths through the interaction) or specific
instances of a interaction (showing just one path through the interaction)
Example :Hotel Reservation
(LDCE-IT-SE-MANUAL VER:2020) 80
4. State diagram
State machine diagram typically are used to describe state-dependent behavior for an object. An
object responds differently to the same event depending on what state it is in . State machine
diagrams are usually applied to objects but can be applied to any element that has behavior to other
entities such as: actors, use cases, methods, subsystems systems and etc. and they are typically used
in conjunction with interaction diagrams (usually sequence diagrams)
States:
1. Initial State-Entry State
2. Final State -Exit State
Events :
1. Signal event - corresponding to the arrival of an asynchronous message or signal
2. Call event - corresponding to the arrival of a procedural call to an operation
3. Time event - a time event occurs after a specified time has elapsed
4. Change event - a change event occurs whenever a specified condition is met
Transition
1. An element is in a source state
2. An event occurs
3. An action is performed
4. The element enters a target state
Substates:
A simple state is one which has no substructure. A state which has substates (nested states) is called a
composite state. Substates may be nested to any level. A nested state machine may have at most one
initial state and one final state
Example:Heater
(LDCE-IT-SE-MANUAL VER:2020) 81
5. Communication diagram
Model message passing between objects or roles that deliver the functionalities of use cases and
operations
Model mechanisms within the architectural design of the system
Capture interactions that show the passed messages between objects and roles within the
collaboration scenario
Model alternative scenarios within use cases or operations that involve the collaboration of
different objects and interactions
Support the identification of objects (hence classes), and their attributes (parameters of
message) and operations (messages) that participate in use cases
Each message in a communication diagram has a sequence number.
The top-level message is numbered 1.
Messages sent during the same call have the same decimal prefix, but suffixes of 1, 2, etc.
according to when they occur.
(LDCE-IT-SE-MANUAL VER:2020) 82
Example : Hotel Reservation Diagram
(LDCE-IT-SE-MANUAL VER:2020) 83
7. Timing diagram
Changes from one state to another are represented by a change in the level of the lifeline. For the
period of time when the object is a given state, the timeline runs parallel to that state. A change in state
appears as a vertical change from one level to another. The cause of the change, as is the case in a state
or sequence diagram, is the receipt of a message, an event that causes a change, a condition within the
system, or even just the passage of time.
Value Lifeline
(LDCE-IT-SE-MANUAL VER:2020) 84
1) Use-Case Diagram:
System
Administrator
InternetBanking
Employee
Customer
View Employee
Employees
Add Branches
View Branches
Branches
Add Services
View Requests
Stop Payment
(LDCE-IT-SE-MANUAL VER:2020) 86
Add Customers
view Branches
View Services
Stop Payment
Add Stop Payment
Cus transaction
View CusTransac
(LDCE-IT-SE-MANUAL VER:2020) 87
View Branches
View Services
Banks
Balance
Customer
Cheques
Stop Payment
Transaction
2) Activity Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 88
Administrator Activity Diagram:
Employee
Authentication
Enter UserName,Password
if fail
if Success
(LDCE-IT-SE-MANUAL VER:2020) 89
Customer
Authentication
Enter UserName,Password
if fail
if Success
AddCheqReq ViewChqReq
3) Sequence Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 90
Administrator Sequence Diagram:
Administrator Authentication Employees Branches Services Account Types Fund Transfer CustomerLogin CheqBookReq StopPayment
Success(
Failed()
if fail
Add Employee()
View
Add
View
Add
View
Add Account
View Account
View Fund
View Login
(LDCE-IT-SE-MANUAL VER:2020) 91
Employee Authentication Customers Banks Fund Transfer Cheques Stop Payment Cus
Transaction
Login()
Fail()
if fails if success
Add
View
View
View
View
View Fund
View Cheque
View Cheque
View ChequeIssue()
Add Stop
View Stop
View CustomerTransac
(LDCE-IT-SE-MANUAL VER:2020) 92
Customer Authntication Banks Login Balance Cheques StopPayment Transaction
Login()
Check(
Failed()
if Failes if Success
View
View
View Account
View Login
Add Balance
View Balance
Add ChequeBook
ViewChequeBook
ViewStop
AddMoney
ViewMoney
4) State Diagram:
(LDCE-IT-SE-MANUAL VER:2020) 93
5) Timing Diagram :
(LDCE-IT-SE-MANUAL VER:2020) 94
AIM: Draw User Interface using CUI/GUI Methods-Menu Driven, Card Driven
for selected project.
1. Contrast
2. Hierarchy
3. Proximity
4. Alignment
Components
1. Buttons
1. 2 Text Input
2. Dropdown Menu (Combo Box)
3. Radio Buttons and Checkboxes
4. Links
5. Tabs
6. Breadcrumbs
7. Vertical Navigation
8. Menu Bars
9. Accordions
10. Validation
11. Tooltips
12. Alerts
13. Data Tables
14. Icons
Shopping System
(LDCE-IT-SE-MANUAL VER:2020) 95
(LDCE-IT-SE-MANUAL VER:2020) 96
(LDCE-IT-SE-MANUAL VER:2020) 97
(LDCE-IT-SE-MANUAL VER:2020) 98
1) Actor: Admin
The Admin module consists of the following services:
1) Login
2) Create new Account types
3) Adding new Branch
4) Registering a new Employee
5) View Employees information
6) Change profile
7) Change Employee designation
8) Change branch details
9) Change Account Type details
10) Send message
11) View message
12) Block/Remove Employees
13) View account type Details
14) View branch details
15) Logout
Login:
In this process, Admin enters his username (i.e. his empid), password and submitted details are verified at
the server side. If he is authorized, then only he is presented with his remaining services otherwise his
access is denied
(LDCE-IT-SE-MANUAL VER:2020) 99
In this process, Admin is allowed to create a new account type. If any new recommended account type
has come up in existing system then Admin has a privilege to make an entry of the account type details
into the database, so that a centralized access will make the users of the application to observe the change
that is introduced into the system.
View Employees:
Using this process, Admin can view employee detail like his personal profile as well as other details
related to organization.
Change profile:
In this process, Admin can edit his own profile like his telephone number, Email and address.
This service enables Admin to change the cadre of an employee incase of any change in the designation
or department. Here, the Admin is displayed with a list of employee ids available in the database and by
selection of any particular employee, his details are displayed so that Admin is allowed to change the
This process facilitates the Admin to edit branch details incase of any change that has occurred with
the existing system. Branch Id is taken as the input and on obtaining the respective branch details,
required fields like location, address or phone number are modified. Hence the details are updated for the
later use.
This process registers a new employee by entering all the details like First Name, Last Name,
Designation, Date of join, address, salary and so on. If the record is successfully entered into the database
then the employee id is auto generated by the system in a specific format (ex. E07101). This empid is
unique and each employee is identified by his empid
This process facilitates the Admin to edit account type details incase of any change that has occurred with
the existing system. Acctype is taken as the input and on obtaining the respective account type details,
required fields like rate of interest, minimum balance and period are subjected to be modified.
Hence the details are updated for the later use by any part of the organization.
Send messages:
With this service, Admin is capable to send messages to any other user based on the requirement that is
raised at any time. This service takes to address, subject and message as the input from the Admin and
after sending the data to the respective recipient successfully, the acknowledgement is sent to him.
View messages:
This privilege lets the Admin to view the messages that are in his inbox.
There might be some situations where an employee of the organization is subjected to any illegal
activities or it is also possible that an employee quits from the organization and in such a times his data
must be either omitted from the working employees data or sent to some other storage unit. This
responsibility of maintaining the information in a secured and reliable manner is taken care by the admin
with the help of this subsystem or process.
This service helps the Admin to view the branch details based on requirement. The branch details like
branch id, location, address, phone
Logout:
2) Actor --Cashier
The Cahier module consists of the following services:
1) Login
2) Change profile
3) Create account
4) View account details
5) Deposit
6) Withdrawal
7) View balance
8) Transfer amount Details
9) Generate a/c stmt
10) View messages
12) Logout
Login:
In this process, Cashier enters his username (i.e. his empid), password and submitted details are
verified at the server side. If he is authorized, then only he is presented with his remaining services
otherwise his access is denied.
Change profile:
In this process, Cashier has a privilege to edit his own profile like his telephone number, Email and
address.
In this process, Cashier enters all the customer details that are required to create the account such as
account details, personal details, account options, account nominee details and the account additional
information. In case he gets any request for opening a new account by the customer then that will also be
collected and the request is forwarded to Manager for approval. After the approval of account, the
account number that is auto generated by the system is used to identify the customer’s account for any
further transactions.
With this service, the Cashier has the privilege to view the account details of each customer who has an
account and based on these details’ other transactions like deposit, withdrawal etc. are processed.
This service is used by the Cashier whenever a customer credits some amount into any of the
account. This amount is deposited and the transaction is recorded into the concerned account by
the cashier for the later use.
Withdrawal:
In this process, when a customer makes a request for withdrawing some amount from his account, then
Cashier enters customers account details with account no and issues cash to the customer based on the
availability of the requested amount in his account.
View Balance:
This service serves the Cashier when customer sends a request to process the Transfer of amount
from his account to other. The source and destination account numbers along with their balances
are verified to be correct inorder to process the request. Also this transaction is recorded that can
be of use in future.
Account statement is a statement that shows all the transactions made by the customer in his account.
The Cashier checks customer account details based on his accno and based on his transactions, generates
an account statement for that respective customer and the respective period of time.
View messages:
Logout:
Whenever the Cashier wants to quit the application he needs to use this service so that the session will be
invalidated so that no one can access his account thus restricting others in accessing the Cashier’s
account.
3) Actor: Manager
The Manager module consists of the following services:
1) Closing an account
2) Logout
Login:
In this process, Manager enters his username (i.e. his empid), password and submitted details are
verified at the server side. If he is authorized, then only he is presented with his remaining services
otherwise his access is denied.
Change profile:
In this process, Admin can edit his own profile like his telephone number, Email and address.
Approve/Reject Account:
Manager is the only one who has the authority to either accept or reject the customer’s account based
on the organization’s terms and conditions, since he is a decision maker for whole financial system.
With this service, Manager is capable to send messages to any other user based on the requirement that is
raised at any time. This service takes to_address, subject and message as the input from the Manager and
after sending the data to the respective recipient successfully, the acknowledgement is sent to him.
This privilege lets the Manager to view the messages that are in his inbox.
Similar to Admin’s service, Manager also has the privilege to view the account type details if required.
The account type details like minimum balance, account name, interest, period of the account type that is
requested are displayed.
Closing an account:-
4) Actor: Customer
1) Registration
2) Login
3) View account details
4) Change profile
5) Request to change account type/branch/account options
6) View account statement
7) Transfer amount details
8) Send Messages
9) View Messages
10) Logout
Registration:
Login:
In this process, Customer enters his username (i.e. his empid), password and submitted details
are verified at the server side. If he is authorized, then only he is presented with his remaining
services otherwise his access is denied.
View Balance:
In this service, customer views his account details that he entered and account details like
number, acctype,branch can be viewed by customer.
Change Profile:
In this, Customer can edit his personal profile like his telephone number, email and address .
Send messages:
With this service, Customer is capable to send messages to any other user based on the
requirement that is raised at any time. This service takes to address , subject and message as the
input from the Manager and after sending the data to the respective recipient successfully, the
acknowledgement is sent to him.
AIM: Prepare the Time Line and Activity Scheduling using Turbo Project,
Microsoft Project Tool
Software Engineer: will plan, analyze and design the software project during preparing the
documentations of project.
Programmer: will write the code of the system.
Test Team Member: will test the system to augment the quality.
Training Coordinator: will prepare the stuff-training plan to ensure that necessary skill levels in
sufficient numbers will be available to successfully conduct the software project.
Meeting Tracer: will organize and coordinate the meetings of team members and also meetings with
customers.
DB Administrator: will be responsible from database configuration and management.
Software System Engineer: will help the project team to identify, control, and track requirements and
changes to requirements at any time as the project proceeds and make the architectural design of the
project accordingly.
Project Manager: will plan (schedule, cost and budget), motivate, organize and control the software
team.
User interface designer: will design the web-based user interfaces.
Configuration Manager: will manage different versions of the work products, control the changes that
are imposed and audit and report on the changes that are made. And also will update the project’s web
page regularly.
Name E-mail Roles and Responsibilities
Project Manager, Software Engineer,
Configuration Manager, Programmer, DB
Administrator, Meeting Tracer, Test Team
Member, Training Coordinator.
Software Engineer, Programmer, DB
Administrator, Test Team Member, User
Interface Designer.
Software Engineer, Programmer, Test
Team Member, Configuration Manager,
Training Coordinator.
Software System Engineer, Software
Engineer, Programmer,
DB Administrator, Test
Team Member, Programmer, Configuration
Manager
Work Plan
Work Activities
Work activities of project are given in table 10. The milestone tasks are identified at the third column by
*Milestone mark.
Resource Allocation
Group members have the general information about design techniques of .Net language. PCs will
be used for documentations of the reports that are IP, SRS, SPMP and SDD and coding. Table below
shows software tools to be used by project phase.
Risk Management
Risk Mitigation
Group deficiency: One of Resolution: Other group members Dead line is very close.
1 the members is sick. are over work.
Communication skill is not Alternatives: Group will make a Middle of the coding
4 enough: In the code phase, meeting with customers. phase.
the new requirements will
be come.
Project Schedule
A typical project involves a number of activities, and each activity requires human resources
support. These activities and resources must be properly planned and scheduled in order to
achieve optimum project time and cost. This paper proposes a process planning and scheduling
system which is based on the concept of process planning typically used for the planning of
project activities. An Advanced Planning System offers support at all planning levels along the
supply chain while observing limited resources. As one of the most challenging problems in
project management, scheduling has been receiving considerable attention not only from
researchers but also from practitioners. In the past few decades, the field of project management
theory and practice has made tremendous strides forward (Rory Burke2003) However, as
projects grow in complexity, finding realizable schedules that efficiently exploit scarce resources
continues to be a challenging task within project management.
Modern era demands an efficient scheduling to enhance the profitability of any enterprise. The
resource-constrained project scheduling problem is a general scheduling problem which involves
the scheduling of project activities subjected to some temporal constraints and resource
constraints, so as to minimize the total project duration. Temporal constraints usually consist of
precedence constraints, which imply that certain jobs must be completed before others can be
started. A resource constraint specifies that every job requires different capacity of limited
renewable resource types while being processed.
The activities are usually ranked by using the priority rule, which determines the order that the
activities are added to the schedule. There exists no constructive heuristic that outperforms all
other constructive heuristics given a variety of different performance criteria. In addition to
priority rules, another major component of constructive heuristics is the schedule generation
scheme (SGS), which determines the way in which a feasible schedule is constructed by
assigning starting times to the different activities. The serial SGS and parallel SGS constitute the
two basic schedule generation schemes. When constructing a feasible schedule, we start with the
dummy start activity and gradually schedule all activities until the dummy end activity has been
assigned a starting time. This can easily be obtained by reversing all precedence relations and
using the reverse priority list on the resulting network. The resulting starting times can then
2. PROJECT PLANNING
A major responsibility for the project manager is the initial planning of the project. The early
stages of the project must be spent carefully establishing a baseline plan that provides a clear
definition of how the project the project scope will be accomplished on time, to budget and using
available resources.
1. Project initiation
2. Time
The schedule is the timetable for activities involved in achieving the project objective.
The project will have a finite date for completion, either set by the banking consortium.
The timetable must include these.
The time plan lists all the activities, which will do that what and how long each is
planned to take. This includes the milestone finish dates of each stage of the project life-
cycle, and the estimated completion date of the whole project.
Project managers use project management software, such as Microsoft Project, to organise their
task and workforce. These software packages allow project managers to produce reports and
charts in a few minutes, compared to the several hours it can take if they do not use a software
package.
Gantt Chart
A Gantt chart is a popular bar chart that aims to show the timing of tasks or activities as they
occur across time. Although the Gantt chart did not initially indicate the relationships between
activities, this has become more common in current use as both timing and interdependencies
between tasks can be identified.
Start-Finish S-F
Finish-Finish F-F
Both tasks finish at the same time
Logic Network
A Logic Network shows the sequence of activities in a project across time. It shows which
activity logically precedes or follows another activity. It can be used to identify the milestones
and critical path of a project.
PERT Chart
PERT is basically a method for analyzing the tasks involved in completing a given project,
especially the time needed to complete each task and identifying the minimum time needed to
complete the total project.
The PRINCE2 project management method mandates the use of product based planning, part of
which is developing a product breakdown structure.
Sets out all the individual activities that make up a larger project.
Shows the order in which activities have to be undertaken.
Shows which activities can only taken place once other activities have been completed.
Shows which activities can be undertaken simultaneously, thereby reducing the overall
time taken to complete the whole project.
Shows when certain resources will be needed – for example, a crane to be hired for a
building site.
In order to construct a CPA, it is necessary to estimate the elapsed time for each activity – that is
the time taken from commencement to completion.
Then the CPA is drawn up a based on dependencies such as: (Kelley JE 1963)
Nodes are numbered to identify each one and show the Earliest Start Time (EST) of the
activities that immediately follow the node, and the Latest Finish Time (LFT) of the
immediately preceding activities
The CPA must begin and end on one ‘node’
There must be no crossing activities in the CPA
East activity is labelled with its name or it may be given a label, such as ‘D’.
The activities on the critical path are usually marked with a ‘//’ or dark line
(Kelley JE ,1963)
The first stage in constructing a network for a project is to consult with the technical experts and
summarise the information that they provide in a table, as in the following simple example.
The predecessors impose constraints on the project: C cannot begin until A has been completed,
whereas D cannot begin until both A and B has been completed.
Estimation Plan
The cost and schedule for conducting the project (PS) as well as the methods, tools, techniques,
used to estimate project cost, schedule, resource requirements, external input and output data associated
confidence levels are presented below.
Function Point method is used for size estimation of the project. The functions of the project are
identified according to the user requirements defined during the initial meetings. These functions are:
External inputs:
New Patient Information Add
New Patient Information Delete
New Patient Information Update
Patient Disease Identification and Therapy Information Add
Patient Disease Identification and Therapy Information Delete
Patient Disease Identification and Therapy Information Update
Drug Information Add
Drug Information Delete
Drug Information Update
Drug Stock Input-Output Information Add
Drug Stock Input-Output Information Delete
Drug Stock Input-Output Information Update
Disease Information ICP-10 Add
Disease Information ICP-10 Delete
Disease Information ICP-10 Update
External Output:
Patient Registration
Drug Registration
Stock Registration
Warning Message
External Enquiry:
Access to Patient Records
Access drugs which are given to patient before
Access to Drugs Records
Access to stock records
Access number of decreasing drugs records
Access to drug names and codes records
Function Levels
Components Count Low Average High Total
External Inputs 16 9x3 6x4 1x6 54
External Outputs 4 2x4 2x5 0x7 18
External Inquiries 6 4x3 2x4 1x6 26
Internal Logical Files 5 5x 7 0 x 10 0 x 15 35
External Interface Files 1 0x5 0x7 1 x 10 10
Total Unadjusted FP (UFP): 143
Table 1 Unadjusted Function Point Table
Value Adjustment Factor (VAF) = (TDI x 0.01) + 0.65 = (41 x 0.01) + 0.65 = 1.06
Effort Estimation
An LOC-oriented estimation model is used for effort estimation. The number of lines of code is then
defined by:
LOC = FPx Language Factor (Language Factor vary by Language of Programming)
KLOC = 4.547 (4547.4 LOC)
Then the effort is:
Effort (Coding) = a x Size b
Development Time (T) =c*(Effort)^d
a and b are constants that depend on the project, and size is measured in thousands of lines of
code (KLOC).
Software
Project a b c D
1.0
Organic 3.2 5 2.5 0.38
1.1
Semi-detached 3 2 2.5 0.35
1.2
Embedded 2.8 0 2.5 0.32
Because of the decision, that the software project has an “organic” structure.
COCOMODevelopment Time (T) =c*(Effort Applied)^d = 2.5 * ( 15.68) ^ 0.38 ≈ 7.11 Months
“c ” and 'd' depends on the modes of the difficulty so that d is decided as 0.38 as it is for the other organic
software projects. COCOMO model calculates effort in staff months (19 days per month or 152 working
hours per month).
15.68 man month = 15.68 x 152 (hours in a month) = 2383.36 man hours
Cost = Effort x $ (the hourly salary)
C = 2383.36 man-hours x (40000/152)man-hours=6,27,200Rs.
Resource planning: determining what resources and quantities of them should be used
Cost estimating: developing an estimate of the costs and resources needed to complete a
project
Cost budgeting: allocating the overall cost estimate to individual work items to establish
a baseline for measuring performance
Cost control: controlling changes to the project budget
Tangible costs or benefits are those costs or benefits that an organization can easily
measure in dollars.
Direct costs are costs that can be directly related to producing the products and services
of the project.
Indirect costs are costs that are not directly related to the products or services of the
project, but are indirectly related to performing the project.
Sunk cost is money that has been spent in the past; when deciding what projects to invest
in or continue, you should not include sunk costs.
Learning curve theory states that when many items are produced repetitively, the unit
cost of those items decreases in a regular pattern as more units are produced.
Reserves are dollars included in a cost estimate to mitigate cost risk by allowing for
future situations that are difficult to predict.
Contingency reserves allow for future situations that may be partially planned
for (sometimes called known unknowns) and are included in the project cost
baseline.
Resource Planning
The nature of the project and the organization will affect resource planning
Is there anything unique in this project’s scope statement that will affect
resources?
Does the organization have or can they acquire the people, equipment, and
materials that are capable and available for performing the work?
Cost Estimating
An important output of project cost management is a cost estimate
There are several types of cost estimates and tools and techniques to help create them
bottom-up: estimate individual work items and sum them to get a total
estimate
A large percentage of total project costs are often labor costs, so project
managers must develop and track estimates for labor.
Source Lines of Code (SLOC): A human-written line of code that is not a blank
line or comment.
Boehm suggests that only parametric models do not suffer from the limits of human
decision-making
Ex. http://www.jsc.nasa.gov/bu2/COCOMO.html
Many people doing estimates have little experience doing them. Try to provide training
and mentoring
People have a bias toward underestimation. Review estimates and ask important
questions to make sure estimates are not biased
For example, in the Business Systems Replacement project, there was a total purchased
cost estimate for FY97 of $600,000 and another $1.2 million for Information Services
and Technology
These amounts were allocated to appropriate budgets as shown in the next slide
ensuring that only appropriate project changes are included in a revised cost
baseline
informing project stakeholders of authorized changes to the project that will affect
costs
AIM: Design Test Cases and Scenarios for Testing Software as a parts and as a
whole Prepare Software Project Test Plan Document for the Project
TestCaseID Test Scenario: Check Customer Login with valid Data Pass/Fai
l
T1 Test Steps: Pass
1. Go to site Enter UserId
2. Enter Password
3. Click Submit
Test Data: User-id = abc99 Password = pass123
Expected Results: User should Login into an application
Actual Results: As Expected
T2 Test Scenario
Test Steps:
Test Data:
Expected Results:
Actual Results:
Domain is nothing but the industry for which the software testing project is created. When we
talk about software project or development, this term is often referred. For example, Insurance
domain, Banking domain, Retail Domain, Telecom Domain, etc
Usually, while developing any specific domain project, domain expert help is sought
out. Domain expert are master of the subject, and he may know the inside-out of the
product or application.
Domain knowledge is quintessential for testing any software product, and it has its own benefits
like
Banking domain concepts are huge, and basically it is sub-characterized into two sectors
1. Core banking
2. Corporate banking
Below is the table of the services these two sub-sectors of banking encompass
Before you begin testing, it's important to note the standard features expected of any banking
application. So that, you can gear your test efforts to achieve these characteristics.
A standard banking application should meet all these characteristics as mentioned below.
Security is prime for any banking application. Therefore, during test preparation, QA
team should include both negative and positive test scenarios in order to sneak into the
system and report for any vulnerabilities before any unauthorized individual get access to
it. It not only involves writing negative test cases but may also include destructive testing.
Following are generic test cases to check any banking application
For Admin Verify Admin login with valid and Invalid data
Verify admin login without data
Verify all admin home links
Verify admin change password with valid and invalid data
Verify admin change password without data
Verify admin change password with existing data
Verify admin logout
For new Branch Create a new branch with valid and invalid data
Create a new branch without data
Create a new branch with existing branch data
Verify reset and cancel option
Update branch with valid and invalid data
For New Role Create a new role with valid and invalid data
Create a new role without data
Verify new role with existing data
verify role description and role types
Verify cancel and reset option
Verify role deletion with and without dependency
verify links in role details page
For New users Create a new user with valid and invalid data
Create a new user without data
Create a new user with existing branch data
Verify cancel and reset option
Update user with valid and invalid data
Update user with existing data
Verify cancel option
Verify deletion of the user
Getting access to production data and Ensure that test data meets regulatory
replicating it as test data, for testing is compliances requirements and
challenging guidelines
Maintain the data confidentiality by
following techniques like data
masking, synthetic test data, testing
system integration, etc.
There may be the cases where The test should participate in the
requirements are not documented well project right from Requirement
and may lead to functional gaps in test Analysis phases and should actively
plan review the Business Requirements
Many non-functional requirements are
not fully documented, and testers do
not know whether to test it or not
The scope and the timelines increases Ensure Time budget for Integration
as banking application are integrated Testing is accounted if your banking
with other application like internet application has many external
or Mobile banking interfaces
Summary
(LDCE-IT-SE-MANUAL VER:2020) 152
Banking domain is the most vulnerable area for cyber-theft, and safeguarding the software
requires precise testing. This tutorial gives a clear idea of what it takes for banking domain
testing and how important it is. One must understand that -
Project group has to prepare case study of one of the CASE Tool
Central Repository - CASE tools require a central repository, which can serve as a source of common,
integrated and consistent information. Central repository is a central place of storage where product
specifications, requirement documents, related reports and diagrams, other useful information regarding
management is stored. Central repository also serves as data dictionary.
Upper Case Tools - Upper CASE tools are used in
Planning, Analysis and Design stages of SDLC.
Lower Case Tools - Lower CASE tools are used in
Implementation, Testing and Maintenance.
Integrated Case Tools - Integrated CASE tools are helpful in all
the stages of SDLC, from Requirement Gathering to Testing and
Documentation.
CASE tools can be grouped together if they have similar
functionality, process activities and capability of getting
integrated with other tools.
Scope of Case Tools: The scope of CASE tools goes throughout
the SDLC.
Case Tools Types
A. Diagram tools
These tools are used to represent system components, data and control flow among various software
components and system structure in a graphical form. For example, Flow Chart Maker tool for creating
state-of-the-art flowcharts.
D. Documentation Tools
Documentation in a software project starts prior to the software process, goes throughout all phases of
SDLC and after the completion of the project. Documentation tools generate documents for technical
users and end users. Technical users are mostly in-house professionals of the development team who
refer to system manual, reference manual, training manual, installation manuals etc. The end user
documents describe the functioning and how-to of the system such as user manual. For example,
Doxygen, DrExplain, Adobe RoboHelp for documentation.
F. Design Tools
These tools help software designers to design the block structure of the software, which may further be
broken down in smaller modules using refinement techniques. These tools provides detailing of each
module and interconnections among modules. For example, Animated Software Design
J. Prototyping Tools
Software prototype is simulated version of the intended software product. Prototype provides initial look
and feel of the product and simulates few aspect of actual product.Prototyping CASE tools essentially
come with graphical libraries. They can create hardware independent user interfaces and design. These
tools help us to build rapid prototypes based on existing information. In addition, they provide
simulation of software prototype. For example, Serena prototype composer, Mockup Builder.
M. Maintenance Tools
Software maintenance includes modifications in the software product after it is delivered. Automatic
logging and error reporting techniques, automatic error ticket generation and root cause Analysis are few
CASE tools, which help software organization in maintenance phase of SDLC. For example, Bugzilla
for defect tracking, HP Quality Center.
Major Functionalities:
No of Users(Approx.) :
Input: Data/Image/Information
Output: Transaction/Reports/Statistics/etc
No of Screens/Pages/Cards (Approx.):
FAQs Sections:
Update Mode:
Security Features: