sa_lecture_df-1.pdf
TRANSCRIPT
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 1/14
Kazimieras Mickus, VU MIF
Layered Application Guidelines
Software Architecture
The project „Increasing Internationality in Study Programs of the Department of Computer Science II“,project number VP1–2.2–ŠMM-07-K-02-070,funded by The European Social Fund Agency and the Government of Lithuania
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 2/14
Outline
Software Architecture and Design
Design Fundamentals
Application Archetypes
Kazimieras Mickus, VU MIF2
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 3/14
Detailed outline 1/3
Software Architecture and Design What Is Software Architecture?
Key Principles of Software Architecture Architectural Patterns and Styles
A Technique for Architecture and Design
Kazimieras Mickus, VU MIF3
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 4/14
Detailed outline 2/3
Design Fundamentals Layered Application Guidelines
Presentation Layer Guidelines Business Layer Guidelines
Data Layer Guidelines
Service Layer Guidelines
Quality Attributes
Crosscutting Concerns Communication and Messaging
Physical Tiers and Deployment
Kazimieras Mickus, VU MIF4
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 5/14
Detailed outline 3/3
Application Archetypes Choosing an Application Type
Kazimieras Mickus, VU MIF5
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 6/14
Detailed outline
Design Fundamentals Layered Application Guidelines
Presentation Layer Guidelines Business Layer Guidelines
Data Layer Guidelines
Service Layer Guidelines
Quality Attributes
Crosscutting Concerns Communication and Messaging
Physical Tiers and Deployment
Kazimieras Mickus, VU MIF6
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 7/14
More detailed outline Layered Application Guidelines
Overview
Logical Layered Design
Presentation, Business, and Data Layers Services and Layers
Services Layer
Design Steps for a Layered Structure
Step 1 – Choose Your Layering Strategy Step 2 – Determine the Layers You Require
Step 3 – Decide How to Distribute Layers and Components
Step 4 – Determine If You Need to Collapse Layers
Step 5 – Determine Rules for Interaction Between Layers Step 6 – Identify Cross Cutting Concerns
Step 7 – Define the Interfaces between Layers
Step 8 – Choose Your Deployment Strategy
Step 9 – Choose Communication ProtocolsKazimieras Mickus, VU MIF
7
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 8/14
Logical Layered Design
Kazimieras Mickus, VU MIF8
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 9/14
Logical Layered Design
Presentation layer.
Business layer.
Data layer.
Kazimieras Mickus, VU MIF9
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 10/14
Services and Layers
Kazimieras Mickus, VU MIF10
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 11/14
Design Steps for a Layered Structure
Step 1 – Choose Your Layering Strategy
Step 2 – Determine the Layers You Require
Step 3 – Decide How to Distribute Layers andComponents
Step 4 – Determine If You Need to Collapse Layers
Step 5 – Determine Rules for Interaction BetweenLayers
Step 6 – Identify Cross Cutting Concerns
Step 7 – Define the Interfaces between Layers
Step 8 – Choose Your Deployment Strategy
Step 9 – Choose Communication ProtocolsKazimieras Mickus, VU MIF
11
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 12/14
Step 5 – Determine Rules for Interaction Between Layers
Top-down interaction.
Strict interaction.
Loose interaction.
Kazimieras Mickus, VU MIF12
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 13/14
Step 7 – Define the Interfaces between Layers
Abstract interface.
Common design type.
Dependency inversion. Message-based.
Kazimieras Mickus, VU MIF13
7/30/2019 SA_lecture_DF-1.pdf
http://slidepdf.com/reader/full/salecturedf-1pdf 14/14
Detailed outline
Design Fundamentals Layered Application Guidelines
Presentation Layer Guidelines Business Layer Guidelines
Data Layer Guidelines
Service Layer Guidelines
Quality Attributes
Crosscutting Concerns Communication and Messaging
Physical Tiers and Deployment
Kazimieras Mickus, VU MIF14