1 / 12

Software Architecture

Software Architecture. Abimbola Makanjuola SWE 6623/001. Topics. What is Software Architecture? IEEE Recommended Practice Patterns and Styles of architecture Types of architecture. What is Software Architecture?. Formal Definition(IEEE-1471-2000)

devaki
Download Presentation

Software Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Architecture Abimbola Makanjuola SWE 6623/001

  2. Topics • What is Software Architecture? • IEEE Recommended Practice • Patterns and Styles of architecture • Types of architecture

  3. What is Software Architecture? Formal Definition(IEEE-1471-2000) “Software architecture is the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.”

  4. What is Software Architecture? More Definitions The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. "Externally visible” properties refers to those assumptions other elements can make of an element, such as its provided services, performance characteristics, fault handling, shared resource usage, and so on.

  5. What is IEEE 1471-2000 Developed by IEEE Society. Article 1471-2000 is the “Recommended Practice for Architectural Description of Software-Intensive Systems” It is only a recommended practice. Organizations should decide how to implement these standards or whether to implement them at all.

  6. Conceptual Model

  7. Styles and Patterns(Shaw and Garlan) • Pipes and Filters - Input -> Output. - Filters are applied as necessary. • Object Oriented - Components built around abstract data types • Implicit Invocation - Even driven, heavy use of event handlers

  8. Styles and Patterns(Shaw and Garlan) • Layering - Hierarchial layering. - Outside layer acts as a client. - Inside layer provides service. • Repositories - Traditional Database: Transactional control - Blackboard: Data store control • Interpreters - Converting pseudo code into actual code.

  9. Styles and Patterns • Process Control - Maintain specified process outputs at set point.

  10. Architecture Types

  11. Questions ?

  12. References • Software Engineering Institue, Carnegie Mellon http://www.sei.cmu.edu/architecture • Wikipedia http://en.wikipedia.org/wiki/Software_architecture • Institute for Software Research http://www.isr.uci.edu/architecture/index.html • Worldwide Institute of Software Architects http://www.wwisa.org/wwisamain/phil.htm • Software Engineering, Theory and Practice, Pfleeger and Atlee

More Related