1 SWE 205 - Introduction to Software Engineering Lecture 13 – System Modeling.
1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)
-
date post
20-Dec-2015 -
Category
Documents
-
view
215 -
download
2
Transcript of 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)
![Page 1: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/1.jpg)
1
SWE 205 - Introduction to Software Engineering
Lecture 21 – Architectural Design (Chapter 13)
![Page 2: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/2.jpg)
2
Lecture Objectives To explain the organization of two
fundamental models of business systems – Batch processing; and Transaction processing systems
To describe the abstract architecture of resource management systems
![Page 3: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/3.jpg)
3
Generic application architectures Application systems are designed to meet
an organisational need. As businesses have much in common,
their application systems also tend to have a common architecture that reflects the application requirements.
A generic architecture is configured and adapted to create a system that meets specific requirements.
![Page 4: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/4.jpg)
4
Application types Data processing applications
Data driven applications that process data in batches without explicit user intervention during the processing.
Transaction processing applications Data-centred applications that process user
requests and update information in a system database.
![Page 5: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/5.jpg)
5
Application types Event processing systems
Applications where system actions depend on interpreting events from the system’s environment.
Language processing systems Applications where the users’ intentions are
specified in a formal language that is processed and interpreted by the system.
![Page 6: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/6.jpg)
6
Application type examples Data processing systems
Billing systems; Payroll systems.
Transaction processing systems E-commerce systems; Reservation systems.
Event processing systems Word processors; Real-time systems.
Language processing systems Compilers; Command interpreters.
![Page 7: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/7.jpg)
7
Data processing systems Systems that are data-centred where the
databases used are usually orders of magnitude larger than the software itself.
Data is input and output in batches Input: A set of customer numbers and
associated readings of an electricity meter; Output: A corresponding set of bills, one
for each customer number. Data processing systems usually have an
input-process-output structure.
![Page 8: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/8.jpg)
8
Input-process-output modelSystem
Input Process OutputPrinter
Database
![Page 9: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/9.jpg)
9
Input-process-output The input component reads data from a file or
database, checks its validity and queues the valid data for processing.
The process component takes a transaction from the queue (input), performs computations and creates a new record with the results of the computation.
The output component reads these records, formats them accordingly and writes them to the database or sends them to a printer.
![Page 10: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/10.jpg)
10
Data-flow diagrams Show how data is processed as it
moves through a system. Transformations are represented as
round-edged rectangles, data-flows as arrows between them and files/data stores as rectangles.
![Page 11: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/11.jpg)
11
Salary payment DFD
Read employeerecord
Read monthlypay data
Computesalary
Write taxtransactions
Monthly paydata
Taxtables
Taxtransactions
Pension data
Validateemployee data
Write pensiondata
Write banktransaction
Write socialsecurity data
Employeerecords
Monthly payrates
Banktransactions
Social securitydata
Print payslipPRINTER
Decodedemployee
record
Pay information
Validemployee record
Tax deduction + SSnumber + tax office
Pensiondeduction +SS number
Empoyee data+ deductions
Net payment + bankaccount info.
Social securitydeduction + SS number
![Page 12: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/12.jpg)
12
Transaction processing systems Process user requests for information from a
database or requests to update the database. From a user perspective a transaction is:
Any coherent sequence of operations that satisfies a goal;
For example - find the times of flights from London to Paris.
Users make asynchronous requests for service which are then processed by a transaction manager.
![Page 13: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/13.jpg)
13
Transaction processing
I/Oprocessing
Applicationlogic
Transactionmanager Database
![Page 14: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/14.jpg)
14
ATM system organisation
Get customeraccount id
Validate card
Input
Query account
Update account
Print details
Return card
Dispense cash
Process Output
Select service
ATM Database ATM
![Page 15: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/15.jpg)
15
Transaction processing middleware Transaction management middleware or
teleprocessing monitors handle communications with different terminal types (e.g. ATMs and counter terminals), serialises data and sends it for processing.
Query processing takes place in the system database and results are sent back through the transaction manager to the user’s terminal.
![Page 16: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/16.jpg)
16
Transaction management
Serialisedtransactions
Teleprocessingmonitor
Accountsdatabase
ATMs and terminals
Account queriesand updates
![Page 17: 1 SWE 205 - Introduction to Software Engineering Lecture 21 – Architectural Design (Chapter 13)](https://reader030.fdocuments.in/reader030/viewer/2022032800/56649d415503460f94a1c33c/html5/thumbnails/17.jpg)
17
Key points Generic models of application architectures help us
understand and compare applications. Important classes of application are data processing
systems, transaction processing systems, event processing systems and language processing system.
Data processing systems operate in batch mode and have an input-process-output structure.
Transaction processing systems allow information in a database to be remotely accessed and modified by multiple users.