GWU CSCI 210 - Software Architecture Paradigms

Unformatted text preview:

1. Objectives2. Definitions3. Architecture Style [J. Peters and W. Pedrycz 2000]:4. Data Flow Systems4.1 Pipelines5. Call & return Systems5.1 Layered Architecture:5.2 N-Tier Architecture : (www.n-tier.com)MotivationsArchitecture:1. Client/Server (C/S)2. Different Types of Architectures6. Independent Processes6.1 Communicating Processes:7. Repository7.1 Blackboard Architecture8. Backboard control9. Architecture Evaluation: Good Structure9.1 Goals9.2 Cohesion3. Coincidental cohesion4. Logical cohesion5. Temporal cohesion6. Procedural cohesion7. Communicational cohesion8. Informational cohesion9. Functional cohesion9.3 Coupling1. Content Coupling2. Common Coupling3. Control Coupling4. Stamp Coupling5. Data Coupling10. Formal Definitions11. SummarySoftware Architecture Paradigms“We have found that understanding software architecture is the key todeveloping many important software solutions.”B. Stroustrup, 1991.Objectives...................................................................................................................31. Definitions..........................................................................................................42. Architecture Style [J. Peters and W. Pedrycz 2000]:..........................................43. Data Flow Systems.............................................................................................83.1 Pipelines..........................................................................................................84. Call & return Systems.......................................................................................104.1 Layered Architecture:...................................................................................101. Supervisor.................................................................................................114.2 N-Tier Architecture : (www.n-tier.com).......................................................134.2.1 Motivations...............................................................................................134.2.2 Architecture:.............................................................................................131. Client/Server (C/S)...................................................................................142. Different Types of Architectures...............................................................145. Independent Processes......................................................................................185.1 Communicating Processes:...........................................................................186. Repository.........................................................................................................216.1 Blackboard Architecture...............................................................................212. Action.......................................................................................................223. Action.......................................................................................................224. Action.......................................................................................................227. Architecture Evaluation: Good Structure.........................................................267.1 Goals.............................................................................................................267.2 Cohesion.......................................................................................................263. Coincidental cohesion...............................................................................264. Logical cohesion.......................................................................................275. Temporal cohesion....................................................................................286. Procedural cohesion..................................................................................287. Communicational cohesion.......................................................................298. Informational cohesion.............................................................................299. Functional cohesion..................................................................................307.3 Coupling.......................................................................................................31A. Bellaachia Page: 110. Content Coupling......................................................................................3211. Common Coupling....................................................................................3312. Control Coupling......................................................................................3413. Stamp Coupling........................................................................................3514. Data Coupling...........................................................................................358. Formal Definitions............................................................................................369. Summary...........................................................................................................38A. Bellaachia Page: 21. Objectives- An architecture design document is the key technical document used to determine whether the critical system requirements are met. - Software design determines how requirements are realized as software structures.- This is the immediate step after the requirements engineering phase in the software life-cycle. - In software development, it is useful to organize architectures into families and associate families with typical applications: This will help reduce the overall development time- Where are we in the software life cycle?A. Bellaachia Page: 3Requirements Design Implementation ….SoftwareArchitectures ComponentsSoftware Component ArchitectureDSSA: Domain-Specific SoftwareAchitecturesFrameworksDesign PatternsWhichProgramminglanguage?2. Definitions- A model for describing software architectures was introduced by Perry and Wolf in 1992. A description of a software architecture consists of three basic elements: - A processing element or component is a software structure that transforms its inputs into required outputs.- A data element consists of information needed for processing or information to be processed by a processing element.- Connecting elements are the “glue” that holds different pieces of an architecture together.3. Architecture Style [J. Peters and W. Pedrycz 2000]:- An


View Full Document

GWU CSCI 210 - Software Architecture Paradigms

Download Software Architecture Paradigms
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Software Architecture Paradigms and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Software Architecture Paradigms 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?