0% found this document useful (0 votes)
104 views

Software Engineering (Week-3)

This document summarizes the agenda and content covered in Week 3 of a software engineering course. The agenda includes a case study discussion on a banking system, assignment discussion, a quiz, and lectures on requirement engineering and requirement analysis using structured analysis. The banking system case study describes the functional requirements and workflow of an ATM system. Students are assigned to create an agile development plan for the case study using user stories, iteration plans, and test-driven development. The document also covers what requirements are, types of requirements, and structured analysis modeling using data flow diagrams.

Uploaded by

Zeenat Siddiq
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
104 views

Software Engineering (Week-3)

This document summarizes the agenda and content covered in Week 3 of a software engineering course. The agenda includes a case study discussion on a banking system, assignment discussion, a quiz, and lectures on requirement engineering and requirement analysis using structured analysis. The banking system case study describes the functional requirements and workflow of an ATM system. Students are assigned to create an agile development plan for the case study using user stories, iteration plans, and test-driven development. The document also covers what requirements are, types of requirements, and structured analysis modeling using data flow diagrams.

Uploaded by

Zeenat Siddiq
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 27

SOFTWARE ENGINEERING

(Week-3)

USAMA MUSHARAF
MS-CS (Software Engineering)
LECTURER (Department of Computer Science)
FAST-NUCES PESHAWAR
AGENDA OF WEEK # 3

 Case Study Discussion


 Class Activities
o Discussion on Assignment # 1
o Quiz # 1
 Requirement Engineering
 Requirement Analysis (Structured Analysis)
BANKING SYSTEM CASE STUDY

 A bank has several automated teller machines (ATMs), which are


geographically distributed and connected via a wide area network to a
central server.

 Each ATM machine has a card reader, a cash dispenser, a


keyboard/display, and a receipt printer.

 By using the ATM machine, a customer can withdraw cash from either
checking or savings account, query the balance of an account, or
transfer funds from one account to another.
BANKING SYSTEM CASE STUDY

 A transaction is initiated when a customer inserts an ATM card into the card
reader. Encoded on the magnetic strip on the back of the ATM card is the card
number, the start date, and the expiration date.

 Assuming the card is recognized, the system validates the ATM card to determine
that the expiration date has not passed, that the user-entered PIN (personal
identification number) matches the PIN maintained by the system, and that the
card is not lost or stolen.

 The customer is allowed three attempts to enter the correct PIN; the card is
confiscated if the third attempt fails. Cards that have been reported lost or stolen
are also confiscated.
BANKING SYSTEM CASE STUDY

 If the PIN is validated satisfactorily, the customer is prompted for a withdrawal,


query, or transfer transaction.

 Before withdrawal transaction can be approved, the system determines that


sufficient funds exist in the requested account, that the maximum daily limit will
not be exceeded, and that there are sufficient funds available at the local cash
dispenser.

 If the transaction is approved, the requested amount of cash is dispensed, a receipt


is printed containing information about the transaction, and the card is ejected.

 Customer records, account records, and debit card records are all maintained at the
server.
AGILE DEVELOPMENT USING BANKING CASE STUDY

Assignment no 1:
Create a working plan for banking system case study using agile
process model (Extreme programming). You are required to
 Identify functional requirements (FR’s) from the case study and write
User Stories for each FR in order to have detail understanding.
 Create Iteration Plans.
 Perform Test First Development (Write test descriptions for user story
cards).
WHAT IS REQUIREMENT?

What is requirement?

 The descriptions of what the system should do


 services that it provides and the constraints on its operation
TYPES OF REQUIREMENTS

 Functional requirements:
 statement of services
 how system reacts to input  Domain requirements

 how system behaves in particular  Inverse requirements


situation  Design and implementation
constraints
 Non-functional requirements:
 constraints on services (timing, quality,
security etc.)
THE REQUIREMENTS PROCESS
(PROCESS FOR CAPTURING REQUIREMENTS)
 Performed by the
req. analyst or
system analyst
 The final outcome is
a Software
Requirements
Specification (SRS)
document
REQUIREMENTS ELICITATION
STAKEHOLDERS

 Clients: pay for the software to be developed


 Users: use the system
 Domain experts: familiar with the problem that the software
must automate
REQUIREMENTS ELICITATION
MEANS OF ELICITING REQUIREMENTS

 Interviewing stakeholders
 Reviewing available documentations
 Observing the current system (if one exists)

11
ANALYSIS MODELING
ELEMENTS OF THE ANALYSIS MODEL
Object-oriented Analysis Structured Analysis

Scenario-based Flow-oriented
modeling modeling
Use case text
Data structure diagrams
Use case diagrams
Data flow diagrams
Activity diagrams

Class-based Behavioral
modeling modeling
Class diagrams State diagrams
CRC models Sequence diagrams
Collaboration diagrams
FLOW-ORIENTED MODELING
WHAT IS A DATA FLOW DIAGRAM?

 A data flow diagram (DFD) is a graphical tool that allows


system analysts (and system users) to depict the flow of
data in an information system.
DATA FLOW DIAGRAM SYMBOLS

Source
STEPS IN BUILDING DFDS

 Build the context diagram


 Create DFD fragments
 Organize DFD fragments into level 0
 Decompose level 0 DFDs as needed
CONTEXT DIAGRAM OF FOOD ORDERING SYSTEM
LEVEL-0 DFD OF FOOD ORDERING SYSTEM
LEVEL-1 DIAGRAM SHOWING DECOMPOSITION OF PROCESS 1.0 FROM THE
LEVEL-0 DIAGRAM
LEVEL-1 DIAGRAM SHOWING THE DECOMPOSITION OF PROCESS 4.0 FROM THE
LEVEL-0 DIAGRAM

4/9/21
LEVEL-2 DIAGRAM SHOWING THE DECOMPOSITION OF PROCESS 4.3
FROM THE LEVEL-1 DIAGRAM FOR PROCESS 4.0
DATA FLOW DIAGRAM OF
SAFE HOME SYSTEM
DATA FLOW DIAGRAM

Context-level DFD for SafeHome security function


Level 2 DFD that refines the monitor sensors process
HAVE A GOO DAY!

You might also like