SlideShare a Scribd company logo
Architecture Arnon Rotem-Gal-Oz Product Line Architect [email_address] http://www.rgoarchitects.com
Agenda ,[object Object],[object Object],[object Object],[object Object]
Discussion  ,[object Object]
Architecting a dog house  Can be built by one person Requires Minimal modeling Simple process Simple tools Kruchten
Architecting a house Built most efficiently and timely by a team Requires Modeling Well-defined process Power tools Kruchten
Architecting a high rise Kruchten
D ifferences ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Agenda ,[object Object],[object Object],[object Object],[object Object]
Architecture defined ,[object Object],Beck
Architecture defined Formal Definition ,[object Object],[object Object],IEEE 1471-2000
[object Object],[object Object],[object Object],[object Object],[object Object],Architecture defined Another Go Booch, Kruchten, Reitman, Bittner, and Shaw
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Architecture defined Few More http://www.sei.edu/architecture/definitions.html
Common elements 1/2 ,[object Object],[object Object],[object Object],[object Object]
Common elements 2/2 ,[object Object],[object Object],[object Object],[object Object]
Architecture is Early ,[object Object],[object Object],[object Object],[object Object]
Architecture Drives ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Architecture vs. Design non-functional requirements (“ilities”) functional requirements (domains) Important : this is a general guideline – sometimes the borders are blurred  Architecture:  where non-functional decisions are cast, and functional requirements are partitioned Design:  where functional requirements are accomplished architecture design
System Quality Attribute ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],End User’s view Developer’s view ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Business Community view A list of quality attributes exists in ISO/IEC 9126-2001 Information Technology – Software Product Quality
Agenda ,[object Object],[object Object],[object Object],[object Object]
Business Architecture ,[object Object],[object Object],[object Object],[object Object]
Technical Architecture ,[object Object],[object Object],[object Object],[object Object]
Solutions Architecture ,[object Object]
Enterprise Architecture ,[object Object],[object Object]
Product Line Architecture ,[object Object]
Product Line - Initiation ,[object Object],[object Object],[object Object],[object Object]
Agenda ,[object Object],[object Object],[object Object],[object Object]
IEEE 1471 - Recap ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Documentation Conceptual Model IEEE 1471-2000
Stakeholders & their concerns Ease of Integration Ease of Use Functionality Price Dev Costs On Time Delivery Performance Stability & Maintainability Ease of Debugging Modifiability Testability & Traceability Structure & dependency between component Ease of Installation End User Sales  Dev Manager Developer Sys Admin Maintainer Customer
Documentation Conceptual Model IEEE 1471-2000
Discussion ,[object Object]
Views, Views and more Views ,[object Object],[object Object],[object Object],[object Object],[object Object]
RUP – 4+1
RM-ODP Viewpoints  (2001) Enterprise Information Engineering Technology Computational Manager Database Modeler Operating Sys. Engineer Designers Developer Business model Logical, data modeling Logical view of services Servers, Comm,  Physical view of  data and services  (IDL, WSDL)
DODAF (3 Main Views)
DoDAF Products 1/2
DoDAF Products 2/2
Zachman Framework Scope (Ballpark) view Owners View (Enterprise Model)  Designers View (System Model)  Builder’s View (Technology Model)  Out of Context View (Detailed Model)  Operational View (Functioning)  Data (What) Function (How) Network (Where) People (Who) Time (When) Motivation (Why)
 
Old Model  MSF 3.0 + Views Aimed at business executives Aimed at business process owners Aimed at architects and designers Aimed at designers and developers Contextual Conceptual Logical Physical
[object Object],[object Object],[object Object],[object Object],Old Model  MSF 3.0 + Views Contextual Conceptual Logical Physical Business View Applications View Information View Technology View
New Model set of views and artifacts -  Business  Capabilities Manual  Procedures Technology Architecture Constraints Reconciliation Services, Messages,  Applications, Endpoints XML, Projects,  DBs, Classes, Code Logical  Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes  and Entities Reconciliation Abstraction/ Refinement
Can be mapped… Contextual Conceptual Logical Physical Business Applications Information Technology Business  Capabilities Manual  Procedures Technology Architecture Constraints Reconciliation Services, Messages,  Applications, Endpoints XML, Projects,  DBs, Classes, Code Logical  Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes  and Entities Reconciliation Abstraction/ Refinement
Documentation Conceptual Model IEEE 1471-2000
Models ,[object Object],[object Object],[object Object],[object Object]
“ Non Standard” - Block Diagrams EAI Human Workflow ECM DW OLTP E-Publish DAL Service Agents Business Rules Activity Workflow Authorization Monitoring Service Interface Controls Log & Trace Exception Management Configuration Authentication Signing Rich UI  Web UI
An ADL Example (in ACME) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],client send-request server receive-request caller callee rpc
ADL - Pros ,[object Object],[object Object],[object Object],[object Object],[object Object]
ADL - Cons ,[object Object],[object Object],[object Object],[object Object]
UML 2.0 ,[object Object]
UML
DSL Services, Messages,  Applications, Endpoints XML, Projects,  DBs, Classes, Code Logical  Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes  and Entities Reconciliation Abstraction/ Refinement Business  Capabilities Manual  Procedures Technology Architecture Constraints Reconciliation
ADL - revisited ,[object Object],[object Object],[object Object]
Discussion ,[object Object]
Documentation Conceptual Model IEEE 1471-2000
Discussion  ,[object Object]
Famous Last Words… ,[object Object]
The Need of Architecture The Winchester “Mystery” House ,[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Togaf 9.2 Introduction
Togaf 9.2 IntroductionTogaf 9.2 Introduction
Togaf 9.2 Introduction
Mohamed Zakarya Abdelgawad
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
Shadrach Jabonir
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
Robert Greiner
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform Engineering
Weaveworks
 
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - WebinarRunning Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Amazon Web Services
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
Sanae BEKKAR
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
WSO2
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
Amazon Web Services
 
Reference Architecture
Reference ArchitectureReference Architecture
Reference Architecture
Johan Eltes
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
tyrantbrian
 
Micro Frontends: Rompiendo el monolito en las aplicaciones Web
Micro Frontends: Rompiendo el monolito en las aplicaciones WebMicro Frontends: Rompiendo el monolito en las aplicaciones Web
Micro Frontends: Rompiendo el monolito en las aplicaciones Web
Belatrix Software
 
Microservices
MicroservicesMicroservices
Microservices
Meysam Javadi
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
Stefan Norberg
 
Mastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to MicroservicesMastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to Microservices
Josh Evans
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
Jeff Bramwell
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
jeetendra mandal
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
Nishanth K Hydru
 
Event-driven Architecture
Event-driven ArchitectureEvent-driven Architecture
Event-driven Architecture
Centric Consulting
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
Shiva Narayanaswamy
 
Solution Architecture
Solution ArchitectureSolution Architecture
Solution Architecture
FirmansyahIrma1
 

What's hot (20)

Togaf 9.2 Introduction
Togaf 9.2 IntroductionTogaf 9.2 Introduction
Togaf 9.2 Introduction
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Six Signs You Need Platform Engineering
Six Signs You Need Platform EngineeringSix Signs You Need Platform Engineering
Six Signs You Need Platform Engineering
 
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - WebinarRunning Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
Running Microsoft SharePoint On AWS - Smartronix and AWS - Webinar
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Reference Architecture
Reference ArchitectureReference Architecture
Reference Architecture
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Micro Frontends: Rompiendo el monolito en las aplicaciones Web
Micro Frontends: Rompiendo el monolito en las aplicaciones WebMicro Frontends: Rompiendo el monolito en las aplicaciones Web
Micro Frontends: Rompiendo el monolito en las aplicaciones Web
 
Microservices
MicroservicesMicroservices
Microservices
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Mastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to MicroservicesMastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to Microservices
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
 
Event-driven Architecture
Event-driven ArchitectureEvent-driven Architecture
Event-driven Architecture
 
Introduction to DevOps on AWS
Introduction to DevOps on AWSIntroduction to DevOps on AWS
Introduction to DevOps on AWS
 
Solution Architecture
Solution ArchitectureSolution Architecture
Solution Architecture
 

Similar to Technical Architecture

Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise Applications
Gem WeBlog
 
Enterprise Architecture Toolkit Overview
Enterprise Architecture Toolkit OverviewEnterprise Architecture Toolkit Overview
Enterprise Architecture Toolkit OverviewMike Walker
 
Tech Talk - Enterprise Architect - 00
Tech Talk - Enterprise Architect - 00Tech Talk - Enterprise Architect - 00
Tech Talk - Enterprise Architect - 00Shahzad Masud
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
taxegap762
 
Chapter1
Chapter1Chapter1
Chapter1
Hoang Vu Dinh
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Mozaic Works
 
Brian muirhead v1-27-12
Brian muirhead v1-27-12Brian muirhead v1-27-12
Brian muirhead v1-27-12NASAPMC
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
Sudarsun Santhiappan
 
The Role of a Systems Architect
The Role of a Systems ArchitectThe Role of a Systems Architect
The Role of a Systems Architect
Anoushiravan M. Ghamsari
 
Introduction to Modern Software Architecture
Introduction to Modern Software ArchitectureIntroduction to Modern Software Architecture
Introduction to Modern Software Architecture
Jérôme Kehrli
 
DoD Architecture Framework Overview
DoD Architecture Framework OverviewDoD Architecture Framework Overview
DoD Architecture Framework OverviewAlessio Mosto
 
System analysis and design
System analysis and designSystem analysis and design
System analysis and design
RobinsonObura
 
Oracle Aim Methodology
Oracle Aim MethodologyOracle Aim Methodology
Oracle Aim Methodology
Shivmohan Purohit
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
ShwetaGajbhiye12
 
Architecting enterprise BPM systems for optimal agility
Architecting enterprise BPM systems for optimal agilityArchitecting enterprise BPM systems for optimal agility
Architecting enterprise BPM systems for optimal agility
Alexander SAMARIN
 

Similar to Technical Architecture (20)

Architecting and Designing Enterprise Applications
Architecting and Designing Enterprise ApplicationsArchitecting and Designing Enterprise Applications
Architecting and Designing Enterprise Applications
 
Enterprise Architecture Toolkit Overview
Enterprise Architecture Toolkit OverviewEnterprise Architecture Toolkit Overview
Enterprise Architecture Toolkit Overview
 
Tech Talk - Enterprise Architect - 00
Tech Talk - Enterprise Architect - 00Tech Talk - Enterprise Architect - 00
Tech Talk - Enterprise Architect - 00
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Chapter1
Chapter1Chapter1
Chapter1
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
 
Brian muirhead v1-27-12
Brian muirhead v1-27-12Brian muirhead v1-27-12
Brian muirhead v1-27-12
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
The Role of a Systems Architect
The Role of a Systems ArchitectThe Role of a Systems Architect
The Role of a Systems Architect
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
software architecture
software architecturesoftware architecture
software architecture
 
Introduction to Modern Software Architecture
Introduction to Modern Software ArchitectureIntroduction to Modern Software Architecture
Introduction to Modern Software Architecture
 
DoD Architecture Framework Overview
DoD Architecture Framework OverviewDoD Architecture Framework Overview
DoD Architecture Framework Overview
 
System analysis and design
System analysis and designSystem analysis and design
System analysis and design
 
Oracle Aim Methodology
Oracle Aim MethodologyOracle Aim Methodology
Oracle Aim Methodology
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
Architecting enterprise BPM systems for optimal agility
Architecting enterprise BPM systems for optimal agilityArchitecting enterprise BPM systems for optimal agility
Architecting enterprise BPM systems for optimal agility
 
Ibm irl
Ibm irlIbm irl
Ibm irl
 

Technical Architecture

  • 1. Architecture Arnon Rotem-Gal-Oz Product Line Architect [email_address] http://www.rgoarchitects.com
  • 2.
  • 3.
  • 4. Architecting a dog house Can be built by one person Requires Minimal modeling Simple process Simple tools Kruchten
  • 5. Architecting a house Built most efficiently and timely by a team Requires Modeling Well-defined process Power tools Kruchten
  • 6. Architecting a high rise Kruchten
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. Architecture vs. Design non-functional requirements (“ilities”) functional requirements (domains) Important : this is a general guideline – sometimes the borders are blurred Architecture: where non-functional decisions are cast, and functional requirements are partitioned Design: where functional requirements are accomplished architecture design
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 29. Stakeholders & their concerns Ease of Integration Ease of Use Functionality Price Dev Costs On Time Delivery Performance Stability & Maintainability Ease of Debugging Modifiability Testability & Traceability Structure & dependency between component Ease of Installation End User Sales Dev Manager Developer Sys Admin Maintainer Customer
  • 31.
  • 32.
  • 34. RM-ODP Viewpoints (2001) Enterprise Information Engineering Technology Computational Manager Database Modeler Operating Sys. Engineer Designers Developer Business model Logical, data modeling Logical view of services Servers, Comm, Physical view of data and services (IDL, WSDL)
  • 35. DODAF (3 Main Views)
  • 38. Zachman Framework Scope (Ballpark) view Owners View (Enterprise Model) Designers View (System Model) Builder’s View (Technology Model) Out of Context View (Detailed Model) Operational View (Functioning) Data (What) Function (How) Network (Where) People (Who) Time (When) Motivation (Why)
  • 39.  
  • 40. Old Model MSF 3.0 + Views Aimed at business executives Aimed at business process owners Aimed at architects and designers Aimed at designers and developers Contextual Conceptual Logical Physical
  • 41.
  • 42. New Model set of views and artifacts - Business Capabilities Manual Procedures Technology Architecture Constraints Reconciliation Services, Messages, Applications, Endpoints XML, Projects, DBs, Classes, Code Logical Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes and Entities Reconciliation Abstraction/ Refinement
  • 43. Can be mapped… Contextual Conceptual Logical Physical Business Applications Information Technology Business Capabilities Manual Procedures Technology Architecture Constraints Reconciliation Services, Messages, Applications, Endpoints XML, Projects, DBs, Classes, Code Logical Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes and Entities Reconciliation Abstraction/ Refinement
  • 45.
  • 46. “ Non Standard” - Block Diagrams EAI Human Workflow ECM DW OLTP E-Publish DAL Service Agents Business Rules Activity Workflow Authorization Monitoring Service Interface Controls Log & Trace Exception Management Configuration Authentication Signing Rich UI Web UI
  • 47.
  • 48.
  • 49.
  • 50.
  • 51. UML
  • 52. DSL Services, Messages, Applications, Endpoints XML, Projects, DBs, Classes, Code Logical Data Center Physical servers & segments Deployment Units Abstraction/ Refinement Constraints packaged into deployed on Business Processes and Entities Reconciliation Abstraction/ Refinement Business Capabilities Manual Procedures Technology Architecture Constraints Reconciliation
  • 53.
  • 54.
  • 56.
  • 57.
  • 58.

Editor's Notes

  1. .
  2. .
  3. .
  4. .
  5. . Emphasize that the rationale for the architectural decisions is very important.
  6. . Emphasize that the rationale for the architectural decisions is very important.
  7. . Key words in the definitions are underlined.
  8. . Every system has an architecture, even if it is not formally “spec’ed out”.
  9. . Every system has an architecture, even if it is not formally “spec’ed out”.
  10. .
  11. We will return to this when we’ll speak about Evaluating Architectures (ATAM, LAAAM)
  12. .
  13. .
  14. .