Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Lecture Notes on Software Architecture - Software Engineering 1 | CSIS 360, Study notes of Civil Engineering

Material Type: Notes; Professor: Hanks; Class: Software Engn 1: Syst Analysis; Subject: Computer Science Info Systems; University: Fort Lewis College; Term: Fall 1996;

Typology: Study notes

Pre 2010

Uploaded on 08/05/2009

koofers-user-uv8
koofers-user-uv8 🇺🇸

5

(2)

10 documents

1 / 5

Toggle sidebar

Related documents


Partial preview of the text

Download Lecture Notes on Software Architecture - Software Engineering 1 | CSIS 360 and more Study notes Civil Engineering in PDF only on Docsity! CSIS 360 Lecture 20 Design Principles What is design? Translation of user requirements into a description of how the system will satisfy those requirements. Software Architecture "The overall structure of the software and the ways in which that structure provides conceptual integrity for a system" – Mary Shaw and David Garlan, Software Architecture, 1996 The structure or organization of the software components, their interaction, and the structure of data used in the components. Diagrams are very helpful here! There are some common architectural patterns that are used in many software systems. Tiered or Layered architecture: system functionality is partitioned (or layered) so that each partition performs specific functionality, and only communicates with the adjoining layers. Frequently, each layer executes on a separate computer, although multiple layers may reside on one computer. Each layer provides service to the layer above it, and receives service from the layer below. Each layer provides an interface that is used to communicate with it. This allows layers to be changed easily - new versions only have to provide the same interface Layered architectures can also be more scalable. Often, a layer can reside on multiple computers in parallel, with each computer providing the layer's services. Requests for service can go to any of the machines. We can think of many applications as having three parts: presentation, application processing, and data management.  Presentation layer: concerned with presenting information to the user and user interaction.  Application processing layer: implements the logic of the application.  Data management layer: concerned with database operations. If we organize our applications carefully, we can separate these into layers. presentation ^ | v application processing ^ | v data management Note that the presentation layer does not interact directly with the data management layer. How can we map applications onto computing systems? Single-Tier Architecture (monolithic) Older style of computing. Mainframe computer with lots of dumb terminals. In this case, the three application layers all run on one computer, and may not clearly separated. Also, single-user application running on a PC (e.g., MS Office). 2-Tier Also called client/server architecture. Typical 2-tier architecture: application and database. Application includes business logic and presentation (display). Application needs to be installed on every computer on which it needs to be used. 2 major forms - thin client - client responsible for presentation only. Server is responsible for all application logic and data management - fat client - client responsible for presentation and application logic. Server responsible for data management only. (This is the style show in Figure 12-2 of the text). The thin client model is often used when large, single-tier systems are migrated to client/server systems. PCs are often used to connect to central mainframes, and they become responsible for the presentation layer. Disadvantages of thin-client model: heavy processing load on central server and on network. PCs have lots of computing power that is largely unused in this model.
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved