Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
10 views34 pages

Lecture 16 - Architecture Frameworks

The document discusses the importance of software architecture, emphasizing its role in providing a structured approach to solving problems and ensuring project success. It outlines the necessity for architecture in complex software solutions, the benefits of enterprise architecture, and introduces frameworks like TOGAF and the Zachman Framework. Key architectural principles and phases of the Architecture Development Method (ADM) are also detailed, highlighting the process of managing architecture changes and requirements.

Uploaded by

vinu.v.perera
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views34 pages

Lecture 16 - Architecture Frameworks

The document discusses the importance of software architecture, emphasizing its role in providing a structured approach to solving problems and ensuring project success. It outlines the necessity for architecture in complex software solutions, the benefits of enterprise architecture, and introduces frameworks like TOGAF and the Zachman Framework. Key architectural principles and phases of the Architecture Development Method (ADM) are also detailed, highlighting the process of managing architecture changes and requirements.

Uploaded by

vinu.v.perera
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 34

Software Architecture Frameworks

Software Architecture
3rd Year – Semester 1
Lecture 16

SE 3030 (SLIIT) by Chathura R De Silva 1


Why Software Architecture
• Provides standard governing structure
• Provide solutions to known problems
• Helps to make projects successful
• Addresses: Failing to consider key scenarios, failing to design for common
problems, or failing to appreciate the long term consequences of key
decisions can put your application at risk
• Makes products easy to maintain

SE 3030 (SLIIT) by Chathura R De Silva 2


When do we need to “Architect”
• When the Solution(s) gets bigger
• Modern Software are more complex than what was before
• When you have to think about the future
• Software lasts longer, they are no longer “throw-away” items - specially on
Data
• Increased Usage and Usage Types
• Earlier only direct users interacted with Software, now Systems interact with
each other

SE 3030 (SLIIT) by Chathura R De Silva 3


Enterprise Architecture
• A well-defined practice for conducting enterprise analysis, design,
planning, and implementation, using a holistic approach at all times,
for the successful development and execution of strategy
• Applies architecture principles and practices to guide organizations
through the business, information, process, and technology changes
necessary to execute their strategies

SE 3030 (SLIIT) by Chathura R De Silva 4


Benefits of Enterprise Architecture
• Business Benefits
• Helps an Organization achieve its business strategy
• Faster time to market for new innovations and capabilities
• More consistent business process and information across business units
• More reliability and security, less risk
• IT Benefits
• Better traceability of IT costs
• Lower IT costs – design, buy, operate, support, change
• Faster design and development
• Less complexity
• Less IT risk
SE 3030 (SLIIT) by Chathura R De Silva 5
Key Architecture Principles
• Build to change instead of building to last
• Consider how the application may need to change over time to address new requirements and
challenges
• Build with flexibility to adopt changes
• Model to analyze and reduce risk
• Use design tools to visualize e.g. UML
• Capture requirements and architectural and design decisions and to analyze their impact
• Do not formalize the model to the extent that it suppresses the capability adapt easily
• Communication and Collaboration
• Use visualizations of the architecture to communicate and share your design efficiently with all the
stakeholders, and to enable rapid communication of changes to the design
• Identify key engineering decisions
• Understand the key engineering decisions and the areas where mistakes are most often made
• Invest in getting these key decisions right the first time (late changes are always costly)
SE 3030 (SLIIT) by Chathura R De Silva 6
Architecture Frameworks - How it
evolved

SE 3030 (SLIIT) by Chathura R De Silva 7


Enterprise Architecture Frameworks
• Zachman Framework
• In 1982, when working for IBM and with BSP, John Zachman was perhaps the
first to mention Enterprise Architecture in the public domain. In 1987, John
Zachman, who was a marketing specialist at IBM, published the paper, A
Framework for Information Systems Architecture. The paper provided a
classification scheme for artifacts that describe the what, how, where, who,
when and why of information systems.
• The Open Group Architecture Framework (TOGAF)
• In 1994, the Open Group selected TAFIM from the US DoD as a basis for
development of The Open Group Architecture Framework (TOGAF), where
architecture meant IT architecture.

SE 3030 (SLIIT) by Chathura R De Silva 8


Architecture Frameworks – Mutual
Influence

SE 3030 (SLIIT) by Chathura R De Silva 9


TOGAF
• The Open Group Architecture Framework (TOGAF) is a framework for
enterprise architecture that provides an approach for designing, planning,
implementing, and governing an enterprise information technology
architecture.
• TOGAF is a high level approach to design. It is typically modeled at four levels:
Business, Application, Data, and Technology.
• TOGAF Relies heavily on modularization, standardization, and already existing
proven technologies and products
• TOGAF Components
• Architecture Development Method (ADM)
• Enterprise Continuum
• Resource Base
SE 3030 (SLIIT) by Chathura R De Silva 10
TOGAF – Architecture Development
Method (ADM)
• A Step by Step process to Developing or
Changing an Architecture


Preliminary
Phase A } Defines the need for Architectural
Change

}
• Phase B
Develops a Clear description of the
• Phase C Future Architecture
• Phase D
• Phase E How the Vision & Future Architecture is Delivered
• Phase F Implementation & Migrations Planning
Architectural Oversight to Implementation
• Phase G
Architecture Change Management
• Phase H
• Requirements Management
SE 3030 (SLIIT) by Chathura R De Silva 11
ADM – Preliminary Phase
• Defines what needs to be done, how it will be carried out.
• Establish parameters for a successful iteration of ADM
• Identify and establish architecture Frameworks & Principles
• TOGAF can be tailored to meet the needs
• TOGAF can be integrated with other management frameworks (e.g.
PRINCE2)
• Output: Request for Architecture Work
• Outlines Requirements, Organizational Context, Structures, Tools or
Architecture Frameworks

SE 3030 (SLIIT) by Chathura R De Silva 12


ADM – Phase A: Architecture Vision
• Starts with Request for Architecture Work
• Sells the benefits of the proposed capability to stakeholders and decision-makers
• Outlines Vision for the Architecture
• High-Level aspiration of capabilities
• Business values that the Architecture will deliver
• Identifies Concerns and Requirements.
• Confirms business goals, drivers and constraints
• Goal is to make sure that the enterprise is Able, Ready, Willing and Committed to
make the necessary Architecture Changes
• Output: Statement of Architecture Work
• It also provides the Vision of the proposed enterprise architecture. This sense of direction is
vital for guiding the work throughout this iteration of the ADM
SE 3030 (SLIIT) by Chathura R De Silva 13
ADM – Phase B: Business
Architecture
• Starts with Improving Business Capability
• Key objective is to identify Target Business Architecture that shows
how the enterprise can achieve the Architecture Vision
• Business Architecture demonstrate Business Value and Return on
Investment (ROI) to the Stakeholders
• Output:
• Business models
• Activity or Process models
• Use Case

SE 3030 (SLIIT) by Chathura R De Silva 14


ADM – Phase C: Information
Systems Architecture
• Takes the Business Perspective from previous Phase as the input
• Information Systems Architecture compose Data Architecture and
Applications Architecture
• Data & Application Architecture uses different reference models
• Data Architecture – Class Diagrams, ER Diagrams
• Application Architecture – Application Communication, Component Diagram,
etc…
• Identify Candidate Architecture Roadmap Components
• Output:
• Architecture Definition Document
SE 3030 (SLIIT) by Chathura R De Silva 15
Exercise #1
• Business Case:
• There are many types of Vehicles; Cars, Vans, Bikes, etc… Different types of
vehicles may have specialized attributes but there are a few attributes in
common.
• A Person may own a vehicle for a given time and this ownership is registered
at the Department of Motor Vehicles.
• Q1) How would you develop Data Architecture for the Above? State
your assumptions.
• Q2) Draw the Data Architecture diagrams.

SE 3030 (SLIIT) by Chathura R De Silva 16


Exercise #1: Sample Answers…
• Developing Data Architecture
• Requirement Clarification meetings to be held to better understand the requirement. Use Case Diagrams to
be created
• A Gap Analysis on the requirement & business entities needs to be created.
• Business and Logical Data Models to be identified. Create Diagrams i.e. Class Diagrams / Entity Relationship
Diagrams to be created.
• Assumptions
• A vehicle cannot be a Car or a Van at the same time [Total Participation]
• Vehicle will be owned by only 1 person at a given time [Person : Vehicle = 1 : M]
• A vehicle ownership can be transferred from one person to another [Association Vs. Composition]
• Vehicle & Person attributes can represented in Text, Number and Date formats
• Diagrams
• ER Diagram
• Class Diagram
• Table Structures
SE 3030 (SLIIT) by Chathura R De Silva 17
Exercise #2:
• Business Case:
• A CCTV Camera system captures a set of videos and send them to a central
Server. The server needs to store the video and meta information for later
retrieval.
• Q1) Create the Data Architecture
• Data Architecture diagrams.
• Q2) Create the Application Architecture
• Application Communication
• Component Diagram

SE 3030 (SLIIT) by Chathura R De Silva 18


ADM – Phase D: Technology
Architecture
• Technology Architecture is a description of…
• Structure and interaction of the platform services
• Logical and Physical technology components.
• Develop Baseline Technology Architecture
• Creates Technology Reference Models & Criteria for Measurement
• Develop Target Technology Architecture - requirements traceability, criteria for selection of
service portfolio
• Output:
• Baseline Technology Architecture
• Networked Computing/Hardware view
• Communications view
• Processing view
• Technology Architecture Report (summarizing the key findings)
SE 3030 (SLIIT) by Chathura R De Silva 19
ADM – Phase E: Opportunities
and Solutions
• About finding Opportunities for…
• Delivering the Target Architecture by implementing specific Solutions.
• Concentrated on How to Deliver the Architecture
• When the change is large, this Phase provides an Incremental Approach to
convert from Baseline to Target Architecture
• Generates the first complete version of Architecture Roadmap by
combining the analysis and suggestions from the Architecture
Development phases
• Output:
• High-level Implementation Plan
• High-level Migration Plan & Impact Analysis
SE 3030 (SLIIT) by Chathura R De Silva 20
ADM – Phase F: Migration Plan
• Finalizes a detailed Implementation and Migration Plan
• Also finalizes the Architecture Roadmap
• Plan is coordinated with…
• Change management approach used within the enterprise
• Business Planning
• Enterprise Architecture
• Portfolio and Project Management
• Operations Management
• Goal is to ensures that key stakeholders fully understand
• Business value
• Cost of work packages
• Transition and Future Architectures
SE 3030 (SLIIT) by Chathura R De Silva 21
ADM – Phase G: Implementation
Governance
• Provides an Architectural Oversight to Implementation
• Ensures Project Implementation conforms the Target Architecture
• Formulate Project Recommendations
• Manages Implementation Driven Architecture Changes
• Review Ongoing Implementation Governance and Architecture Compliance
• Confirms the scope and priorities for deployment
• Guiding development and solutions deployment
• Performs compliance reviews
• Output:
• Architecture Contract Document (drives any Architecture Changes)

SE 3030 (SLIIT) by Chathura R De Silva 22


ADM – Phase H: Architecture Change
Management
• Change management process to manage changes to the Architecture
• Process for managing changes
• Ensure Architecture achieves its intended Business Value
• Requires continues monitoring
• Governance Requests
• New Technologies
• Changes in the Business Environment
• Strategic Changes (e.g. Cost)
• Judge whether a Change Request warrants a simple architecture update or whether it
requires to Re-Architect with ADM
• Output:
• Architecture updates
• Changes to architecture framework and principles
• New Request for Architecture Work
SE 3030 (SLIIT) by Chathura R De Silva 23
ADM – Requirement Management
• It’s a Continuing Ongoing Process and sits in the center of the ADM
• Requirements are Produced, Analyzed and Reviewed in each ADM Phase
• Ensured Changes to Requirement are well governed and Reflected in
all other Phases
• Describes a Process for Requirements Management and how they are
lined to the other Phases
• Output:
• Changed requirements
• Requirements Impact Statement

SE 3030 (SLIIT) by Chathura R De Silva 24


Zachman Framework
• Zachman Framework is an enterprise ontology and is a fundamental
structure for Enterprise Architecture which provides a formal and
structured way of viewing and defining an enterprise.
• The ontology is a two dimensional classification schema that reflects
the intersection between two historical classifications.
• Dimension #1: What, How, Where, Who, When and Why
• Dimension #2: Contextual, Conceptual, Logical, Physical, As Built and
Functioning Enterprise

SE 3030 (SLIIT) by Chathura R De Silva 25


Zachman Framework – Rows

SE 3030 (SLIIT) by Chathura R De Silva 26


Zachman – Row 1: Scope (Planner’s
View)
• Motivation/Why
• Business goals, objectives and performance measures
• Function/How
• High-level business functions
• Data/What
• High-level data classes related to each function What How Where Who When Why

1 Contextual Contextual

• People/Who
Conceptual Conceptual
• Stakeholders related to each function
Logical Logical
• Network/Where
Physical Physical
• Locations related to each function
• Time/When
As Built As Built

• Cycles and events related to each function


Functioning Functioning

What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 27


Zachman – Row 2: Enterprise Model
(Designer’s View)
• Motivation/Why
• Policies, procedures and standards for each process
• Function/How
• Business processes
• Data/What
• Business data
What How Where Who When Why
• People/Who
Contextual Contextual
• Roles and responsibilities in each process
• Network/Where 2 Conceptual Conceptual

• Locations related to each process Logical Logical

• Time/When Physical Physical

• Events for each process As Built As Built

• Sequencing of integration
Functioning Functioning
• Process improvements
What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 28


Zachman – Row 3: System Model
(Designer’s View)
• Motivation/Why
• Policies, standards and procedures associated with a business rule model
• Function/How
• Logical representation of information systems and their relationships
• Data/What
• Logical data models of data What How Where Who When Why

• Data relationships Contextual Contextual

• People/Who Conceptual Conceptual

• Logical representation of access privileges


3 Logical Logical

• Network/Where Physical Physical

• Logical representation of the distributed architecture


As Built As Built

• Time/When
Functioning Functioning
• Logical events and their triggered responses What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 29


Zachman – Row 4: Technology Model
(Builder’s View)
• Motivation/Why
• Business rules constrained by information systems standards
• Function/How
• Specifications of applications that operate on particular technology platforms
• Data/What
• Database management system What How Where Who When Why

• Logical data models Contextual Contextual

• People/Who Conceptual Conceptual

• Access privileges to technologies Logical Logical

• Network/Where 4 Physical Physical

• Network devices and their relationships


As Built As Built

• Time/When
Functioning Functioning
• Specification of triggers to respond to system What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 30


Zachman – Row 5: As Built
(Integrator’s View)
• Motivation/Why
• Business rules constrained by specific technology standards
• Function/How
• Programs coded to operate on specific technology platforms
• Data/What
• Data definitions by physical data models What How Where Who When Why

Contextual Contextual

• People/Who
Conceptual Conceptual
• Access privileges to control access
Logical Logical
• Network/Where
Physical Physical
• Devices configured to conform to node specifications
5
• Time/When
As Built As Built

• Timing definitions coded to sequence activities


Functioning Functioning

What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 31


Zachman – Row 6: Functioning
Enterprise (User’s View)
• Motivation/Why
• Operating characteristics of specific technologies constrained by standards
• Function/How
• Functioning computer instructions
• Data/What
• Data values stored in actual databases What How Where Who When Why

Contextual Contextual

• People/Who
Conceptual Conceptual
• Personnel and key stakeholders / roles
Logical Logical
• Network/Where
Physical Physical
• Sending and receiving messages
• Time/When
Integrated Integrated

• Timing definitions operating to sequence activities 6 Functioning Functioning

What How Where Who When Why

SE 3030 (SLIIT) by Chathura R De Silva 32


Zachman Framework – Outputs

SE 3030 (SLIIT) by Chathura R De Silva 33


References

• http://pubs.opengroup.org/architecture/togaf8-doc/arch/toc.html
• https://www.orbussoftware.com/enterprise-architecture/togaf/what-
is-the-adm/
• https://www.zachman.com/

SE 3030 (SLIIT) by Chathura R De Silva 34

You might also like