Introduction to Software Architecture (1)

Similar documents
SOFTWARE ARCHITECTURE. Semester II (Computer Engineering) SUB CODE: MECE202. Evaluation Scheme L T P Total Credit Theory Mid Sem Exam

SOFTWARE ARCHITECTURE

Rationale for Software Architecture Design. Definitions for Software Architecture. Rationale for Software Architecture. Common Misconceptions

GOPALAN COLLEGE OF ENGINEERING AND MANAGEMENT Department of Computer Science and Engineering

SOFTWARE ARCHITECTURES:

Software Architecture Context

Interoperability, Architecture And Architectural Frameworks. Rob Dobson Rob Dobson & Associates Pty Ltd

RAD: Really Awful Design - Really? Rob Day & Eoin Woods Agile Conference, September 2005

A FORMAL APPROACH FOR INCORPORATING ARCHITECTURAL TACTICS INTO THE SOFTWARE ARCHITECTURE

Detecting and Maintaining Architecture Consistency. Dr Liam O Brien, Geoscience Australia

Course Descriptions Real Estate and the Built Environment

Organizational Project Management

Towards Independent Software Architecture Review*

The Method-Framework for Engineering System Architectures (MFESA)

European Component Oriented Architecture (ECOA ) Collaboration Programme: ECOA White Paper

DOWNLOAD OR READ : SOFTWARE ARCHITECT ENGINEERING PDF EBOOK EPUB MOBI

The Journey to 100% Electronic Survey. Land Information New Zealand. August 2009

Egyptian Nationwide Title Cadastre System

The Method-Framework for Engineering System Architectures (MFESA)

CPPDSM4003A Appraise property

A Vision for a Fully Digital Cadastral Survey System

From 2D representation of the buildings into cadastral maps towards 3D GIS applications and BIM a case study for Prishtina

Preprint.

Henry Muccini. Pisa, March , workshop on Architecture-based Testing: Moving Research into Practice

MS-REBE Course Descriptions

SMART GUIDE TO SELLING YOUR HOME

Tutorial - Part IV Applications Serena Villata

Release: 1. CPPDSM4011A List property for lease

Graphical Representation of Defeasible Logic Rules Using Digraphs

On 1 February 2013 the IVSC announced the release of an Exposure Draft dealing with amendments to IVS 2011.

PLSS as a Spatial Framework: A History of GCDB Steven L. Hope. Abstract. Background

Specifying and Monitoring Economic Environments Using Rights and Obligations

THINKING OUTSIDE THE TRIANGLE TAKING ADVANTAGE OF MODERN LAND MARKETS. Ian Williamson

CMGT PreConstruction Integration & Planning

Collateral Risk Network. The Language of Data. April Elizabeth Green

The Social Tenure Domain Model STDM-Online

COPYRIGHTED MATERIAL. Comprehensive Site-Planning Overview. 1.1 Introduction. 1.2 Role of Government

The TAUREAN Residential Valuation System An Overview

Village of Scarsdale

TOWARDS E-LAND ADMINISTRATION - ELECTRONIC PLANS OF SUBDIVISIONS IN VICTORIA

Chapter 9: 3D Visualisation as a Tool to Facilitate Managing Land and Properties

LGFP CONFERENCE Appreciating Depreciation. QAO Perspective. Patrick Flemming Brendan Macrae. 25 November 2014

Influence of Digital Computer Technology on Architectural Design Teaching Mode

Architecture (ARCH) Courses. Architecture (ARCH) 1

Advances in Modern Land Administration Cadastre 2014 in the Year 2006

Department of Architecture. Faculty of Engineering & Technology The University of Jordan. B.Sc. Curriculum

D DAVID PUBLISHING. Mass Valuation and the Implementation Necessity of GIS (Geographic Information System) in Albania

New Developments in the Hellenic Cadastre

The New Technology of a Survey Data Model and Cadastral Fabric as the Foundation for a Future Land Administration System.

A CADASTRAL GEODATA BASE FOR LAND ADMINISTRATION USING ARCGIS CADASTRAL FABRIC MODEL A CASE STUDY OF UWANI ENUGU, ENUGU STATE, NIGERIA

Course Number Course Title Course Description

Extending Land Administration Domain Models with a Goal Perspective

Cities for development

Understanding Architectural Details First In Architecture

Principles of Architecture and Construction

Interoperability in surveying

ARCHITECTURE (ARCH) ARCH Courses. Architecture (ARCH) 1

GIS and Land Records Integration A PRIA White Paper

BULGARIAN CADASTRE A GUARANTEE FOR THE OWNERSHIP RIGHTS IN IMMOVABLE PROPERTIES

Residential New Construction Attitude and Awareness Baseline Study

Internet Best Practices Recommended Guidelines ARELLO November 2009

Implementing Small Area Fair Market Rents (SAFMRs) in the HCV Program. Plano Housing Authority Case Study

RESIDENTIAL MEASUREMENT STANDARD

I am writing to you at the request of the Law Society's Property Law Committee (Committee).

ISSUES OF EFFICIENCY IN PUBLIC REAL ESTATE RESOURCES MANAGEMENT

BUSI 452 Case Studies in Appraisal II

Institutional Analysis of Condominium Management System in Amhara Region: the Case of Bahir Dar City

Frog Street Pre-K Correlated to the Oklahoma PASS Standards For Pre-Kindergarten 2015

1.0 INTRODUCTION PURPOSE OF THE CIP VISION LEGISLATIVE AUTHORITY Municipal Act Planning Act...

Questionnaire/Quiz (5 min)

Chapter 37. The Appraiser's Cost Approach INTRODUCTION

PROCESSES IN CADASTRE: PROCESS MODEL FOR SERBIAN 3D CADASTRE

Land Information System as new instrument for Land Administration: Case Examples. Mike Cheremshynskyi Consultant, Land Administration Expert

Introducing Property Valuation

Universal Geo-database Connector Interface Component (UG-CIC) For Virtual Web-base GIS Server Essential For Real Estate Industry Uses

AVM Validation. Evaluating AVM performance

Flood Hazard Modelling

MOTIVATIONAL MEMORANDUM: REZONING

Software Architecture and Agile Software Development An Oxymoron? Philippe Kruchten

Real Estate Reference Material

MetroList is pleased to introduce Mercado, the Marketplace for California Real Estate!

Introducing. Property. Valuation. Second edition. Michael Blackledge. Routledge R Taylor & Francis Croup LONDON AND NEW YORK

Yorklyn Village Market Study and Economic Analysis: Executive Summary Yorklyn Village, Delaware

Recent Trends in Legal Tech 21 March 2018

The agent-based modeling approach to MFM: A call to join forces

COORDINATED CADASTRES - A KEY TO BUILDING FUTURE GIS

Real Estate Market Intelligence. Thorough Research Sound Decisions Greater Profits

DII-AF Chief Architects Office. The Architect s Job. 6 June 1997 Rich Hilliard (v 2.0)

Home Selling Made Simple

Architecture (ARCH) Courses. Architecture (ARCH) 1

Developing DITA Expertise Across Your Virtual Team. Martha Morgan Architect, Information Engineering October 14, 2009

EVGN 11. The Valuer s Use of Statistical Tools

Depreciation A QUICK REFERENCE GUIDE FOR ELECTED OFFICIALS AND STAFF

ANNOUNCEMENT OF PHASE 2 REQUIREMENTS TO FILE LAND TITLE FORMS ELECTRONICALLY

LOW-COST LAND INFORMATION SYSTEM FOR SUSTAINABLE URBAN DEVELOPMENT

1. BIOGRAPHICAL SKETCH

RICH REAL ESTATE AGENT, POOR REAL ESTATE AGENT

Federated Data Model to Improve Accessibility of Distributed Cadastral Databases in Land Administration

PART ONE - GENERAL INFORMATION

The IASB s Exposure Draft on Leases

Transcription:

Introduction to Software Architecture (1) Wendy Liu 2003 (Acknowledgement: part of the content is contributed by Peter Kanareitsev) Architect s roles not just technology Creating the right technical vision aligned with organization s business strategy Getting the organization to buy into this vision: executive sponsors, project managers, developers requires a lot of political skill Leadership and communication read Role of the Software Architect for more on this We will focus on technical aspects T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 2 1

Purpose of Software Architecture [Jazayeri et al. 2000] a vehicle for communication architectural views: functional, concurrency, code, development, physical view architectural description: UML, ADLs a manifestation of earliest design decisions quality attributes: performance, availability, reliability, etc. architectural styles a reusable, transferable abstraction T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 3 Software Architecture Is a craft, not an engineering discipline, at this point in time (Shaw & Garlan) Is a creative, not a routine, activity No formal notion of optimal architecture, given a product domain No repeatable methodology to write down optimal architecture Formal training less valuable than experience, including some degree of learning from your own errors (Penny) T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 4 2

However This does not mean you cannot reuse any of the vast experience of architects who came before you Can reuse traditional formats and modeling notations for capturing and communicating architectures Can reuse architectural styles popular structures of components and connectors, each having a defined impact on functionality and quality attributes T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 5 Architectural Design Stages Requirements Architecturally Significant Requirements (ASRs) evaluate How to determine ASRs? How to represent architectural decisions? Architectural Decisions How to derive architectural decisions from ASRs? How to represent architectural descriptions? Architectural Description How to make architectural trade-offs? How to choose an ADL? How to convert an architectural description into a computational infrastructure? Building Computational Infrastructure Detail Implementation How to evaluate ASRs? T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 6 3

Architecture blueprint should be: Self-motivating: include some rationale with your architectural decisions. Don t leave the reader wondering why you made these choices Relevantly biased: not all viewpoints are equally important for all systems focus on the right aspects (e.g. for an AI system, knowledge base structure & reasoning mechanisms logical view deserves more detail than deployment view) Simple yet decisive (the hard part) Based on known architectural styles T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 7 Architectural Styles Like patterns in class design Common styles (Shaw & Garlan 1996): Pipes and filters (e.g. Unix shell, data processing) Implicit invocation (e.g. GUI s: when an event is announced, any interested components may process it) Layered functionality (e.g. network protocols, graphics rendering) Repository / blackboard (e.g. online transaction processing, pattern recognition) Interpreter (e.g. Java Virtual Machine) T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 8 4

More on Architectural Styles Attribute-based architectural styles (Klein & Kazman 1999): Synchronization Data indirection Abstract data repository Publish/Subscribe Layering Simplex Attempt to quantify the impact of styles on a system e.g. authors show that Repository reduces the number of code changes in situations where data producers and consumers evolve while data schema stays frozen T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 9 Architectural Description Languages (ADLs) ACME interchange Adage and Meta-H avionics system Aesop and UniCon real-time analysis Darwin π-calculus analysis of distributed message-passing Rapide design simulation and analysis Wright formal specification and analysis UML Approach direct link to implementation practitioners like it poor vocabulary for AD informal, less automated analysis T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 10 5

We present Next Tutorial format of practical architectural design document examples T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 11 References 1. D. Bredemeyer and R. Malan, Role of the Software Architect, 2000, http://www.bredemeyer.com/pdf_files/role.pdf 2. L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, (1 st Ed.) 1998, (2 nd Ed.) 2003. 3. M. Shaw and D. Garlan, Software Architecture, 1996. 4. M. Jazayeri, A. Ran, and F. Linden, Software Architecture for Product Families: Principles and Practice, 2000. 5. M. Klein, R. Kazman, Attribute-Based Architectural Styles, 1999 (CMU/SEI-99-TR-22). T10: Architecture 1 2003 Fall, CSC407 ( 2003, W.Liu) 12 6