Site Skin Structure Services Space plan Stuff Software Architecture and Software Architecture Patterns (1)

Slides:



Advertisements
Similar presentations
Dr. Rogelio Dávila Pérez
Advertisements

Web Services Architecture An interoperability architecture for the World Wide Service Network.
Vrije Universiteit amsterdamPostacademische Cursus Informatie Technologie Software architecture architecture -- components and boundaries case study --
Bill Malkin Software Engineering and Architecture Joint Technical Program.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Agile Architecture Prabhu Venkatesan for COMP-684.
Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.
Architecture is More Than Just Meeting Requirements Ron Olaski SE510 Fall 2003.
The Architecture Design Process
Design Patterns CS is not simply about programming
21-February-2003cse Architecture © 2003 University of Washington1 Architecture CSE 403, Winter 2003 Software Engineering
Unified Modeling (Part I) Overview of UML & Modeling
Essential Software Architecture Ian Gorton CS590 – Winter 2008.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Software Architecture in Practice
Software Architecture Patterns (2). what is architecture? (recap) o an overall blueprint/model describing the structures and properties of a "system"
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
Course Instructor: Aisha Azeem
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Software Architecture for DSD The “Uses” Relation.
Architectural Design.
What is Software Architecture?
Software Architecture in Practice (3rd Ed) Introduction
1/19 Component Design On-demand Learning Series Software Engineering of Web Application - Principles of Good Component Design Hunan University, Software.
An Introduction to Software Architecture
The Architecture Business Cycle. Software Architecture Definition The software architecture of a program or computing system is the structure or structures.
Architecture Business Cycle
1 5/18/2007ã 2007, Spencer Rugaber Software Architecture (Informal Definition) The organization of a system into component subsystems or modules Box and.
Lecture 9: Chapter 9 Architectural Design
Unified Modeling Language, Version 2.0
Patterns, effective design patterns Describing patterns Types of patterns – Architecture, data, component, interface design, and webapp patterns – Creational,
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Basic Concepts Software Architecture. What is Software Architecture? Definition: – A software architecture is the set of principal design decisions about.
Chapter 13 Architectural Design
Architectural Design Based on Chapter 11 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8t h Ed., Addison-Wesley, 2006 and on the Ch11 PowerPoint.
Software Architecture CS3300 Fall Beware the Fuzzy Front End We are already almost 1/3 of the way done Need to negotiate deliverable schedule: SDP.
10 Software Architecture CSCU 411 Software Engineering.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Chapter 6 Architectural Design.
Lecture 11 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Object Oriented Analysis and Design using the UML CIS 520 Advanced Object-Oriented Design.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
An Architecture-Centric Process
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
CSPC 464 Fall 2014 Son Nguyen.  Attendance/Roster  Introduction ◦ Instructor ◦ Students  Syllabus  Q & A.
Overview of SAIP and LSSA. Software Architecture in Practice Provides a set of techniques, not a prescriptive method for architectural design. Based on.
1 Unified Modeling Language, Version 2.0 Chapter 2.
CS223: Software Engineering Lecture 13: Software Architecture.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Gerhard Dueck -- CS3013Architecture 1 Architecture-Centric Process  There is more to software development then going blindly through the workflows driven.
Software Architecture Architecture represents different things from use cases –Use cases deal primarily with functional properties –Architecture deals.
Quality Consulting Module 7 Solution Development.
Basic Concepts of Software Architecture. What is Software Architecture? Definition: – A software system’s architecture is the set of principal design.
UML (Unified Modeling Language)
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
Software Architecture and Quality BY
OO Methodology OO Architecture.
University of Central Florida COP 3330 Object Oriented Programming
Software Architecture and
An Introduction to Software Architecture
Presentation transcript:

Site Skin Structure Services Space plan Stuff Software Architecture and Software Architecture Patterns (1)

What is architecture? o an overall blueprint/model describing the structures and properties of a "system" o designed mechanisms (causal chains & loops) which lead to - o emergent (intended) behaviour (but always some unintended behaviour as well) o"mapping" the boundaries (questions about the level of "closure")

Dictionary definition: Architecture n 1: the art of science of building, specifically, the art or practice of designing and building structures and esp. habitable ones 2 a: formation or construction as or as if as the result of conscious act b: a unifying or coherent form or structure [Webster’s Colligiate Dictionary - 10th ed.]

 Software architecture encompasses the set of significant decisions about the organization of a software system ­selection of the structural elements and their interfaces by which a system is composed ­behavior as specified in collaborations among those elements ­composition of these structural and behavioral elements into larger subsystem ­architectural style that guides this organization [Ref: Grady Booch et. al.] Software Architecture defined:

“Common” assumptions about software architecture: Architecture and design are the same thing Architecture and infrastructure are the same thing is the architecture A good architecture is the work of a single architect Architecture is flat, one blueprint is enough Architecture is just structure System architecture precedes software architecture Architecture cannot be measured and validated Architecture is a Science Architecture is an Art [ref: Philippe Kruchten]

Software Architecture (again) : 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. The term also refers to documentation of a system's software architecture. Documenting software architecture facilitates communication between stakeholders, documents early decisions about high-level design, and allows reuse of design components and patterns between projects. [Kazman et. al. ref: Wikipedia]

Implies specific questions and answers about: structures, mechanisms, communication, components, resilience, scalability, performance, adaptability, reliability, changeability, maintainability, extensibility, security, technologies, standards, aesthetics, and other key concerns.

Architecture Qualities Process Architecture Representation The “what” The “why” The “how” The “who” System Features S/W Requirements System Quality Attributes Satisfies Constrain Organization Architect Skills Stakeholders Defines role Produces Follows Defines Technology The What, Who, Why & How of SA:

Software Architecture Meta-model:

But… A Kuhnian “paradigm shift” since the 90’s… -Architecture breaking out of the enterprise…. “my web is bigger than your enterprise” -from closed to open -from machine to network -from individual to social -from local to global -from platform to application

oh… but there is so much more now in the architecture pie.. towards…