An Introduction To Fundamental Architecture Concepts: Warren Weinmeyer
An Introduction To Fundamental Architecture Concepts: Warren Weinmeyer
Architecture Concepts
Warren Weinmeyer
Warren Weinmeyer
March, 2013
May 2012
This deck is for you if any of the following search terms are of
relevance:
IT Architecture
Enterprise Architecture
Business Architecture
Physical Architecture
City Planning
High-rise construction
BIM
Who am I?
Contents
Architecture vs. Design
Architectural Abstraction
Viewpoints and Views
Standard Architecture Domains
Standard Architecture Tiers
TOGAF and Continuous Improvement
Integrating Architecture into the Annual Cycle
Integrating Architecture into Projects
DEFINITIONS:
Architecture:
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.
(ANSI/IEEE 1471-2000)
A representation of a system in which there is a mapping of functionality onto hardware and
software components, a mapping of the software architecture onto the hardware
architecture, and human interaction with these components.
(Carnegie Mellon University's Software Engineering Institute)
An architecture is the most important, pervasive, top-level, strategic inventions, decisions,
and their associated rationales about the overall structure (i.e., essential elements and their
relationships) and associated characteristics and behavior. (OPEN Process Framework)
A description of the design and contents of a computer system. If documented, it may
include information such as a detailed inventory of current hardware, software and
networking capabilities; a description of long-range plans and priorities for future
purchases, and a plan for upgrading and/or replacing dated equipment and software.
(National Center for Education Statistics).
The structure of components, their interrelationships, and the principles and guidelines
governing their design and evolution over time. (TOGAF)
In the end, architecture boils down to whatever the important stuff is Martin Fowler
DEFINITIONS:
Design:
Realization of a concept or idea into a configuration, drawing, model,
mould, pattern, plan or specification (on which the actual or commercial
production of an item is based) and which helps achieve the item's
designated objective(s). (BusinessDictionary.com)
A specification or plan for making a particular artifact or for undertaking
a particular activity. A design is the basis for, and precursor to, the
making of an artifact. (Terence Love, 2002)
The process of refining and expanding the preliminary design phase
(i.e. the architecture) of a system or component to the extent that the
design is sufficiently complete to be implemented. (IEEE Standard
Glossary of Software Engineering Terminology)
Architecture
More Abstract
Abstraction Continuum
Design
More Concrete
What is Salient?
It depends!
this is one reason why an Architect is a senior
role
what is salient is based on the concerns of the
stakeholders, the greater picture of the current
and future state of the organizational and
technical environment, the need to deliver
actionable guidance, etc.
Over-specification is a result of the Architect
performing design work by virtue of not making
good decisions about what is salient.
13
A Physical Architecture
14
Architectural Abstraction
16
DEFINITIONS:
Conceptual Architecture:
shows of a set of relationships between factors that are believed to impact or lead
to a target condition; a diagram that defines theoretical entities, objects, or
conditions of a system and the relationships between them. (Dictionary.com)
Logical Architecture:
Physical Architecture:
17
More Abstract
Logical
Physical
More Concrete
Conceptual Architecture
19
Logical Architecture
Can show a static view (for example, connectivity) or a dynamic view (for example,
process flow)
The following models describe the same thing, at different levels of Logical detail:
20
Logical Architecture
Example: a detailed logical model that almost maps
1:1 with the corresponding physical model that
realizes the Logical architecture
21
Physical Architecture
Refers to specific products, protocols, and data
representation where/when/if it is architecturally
salient to do so
This is where over-architecting can most easily
occur
Even when specifying real-world products, there
is typically missing information for detailed
design to provide
22
Mixed Models
Sometimes, it is desirable to create a model that is
not a pure Physical or pure Logical model.
It is ok to do that if its done in a controlled way:
Your Modeling Framework should specify which
models can contain mixed elements
24
Definitions:
25
Viewpoints
Viewpoints serve to provide the underlying guidance for how to describe an architectural
perspective: they are based on the Architectural Concerns (i.e. interests) of one or more
Stakeholders.
The diagram below shows a portion of the ISO 42010 conceptual model:
26
Viewpoints
IEEE specifies that a viewpoint description
includes:
The Viewpoint name
The stakeholders addressed by the
viewpoint
The architectural concerns framed by the
viewpoint (i.e. the purpose)
The language, or modeling techniques, or
analytical methods used to construct,
depict and analyze the resulting view
Note: the models you use should be
organized into a coherent framework of
models (in this example: TOGAF)
27
Viewpoint Frameworks
28
As an aggregation, the
Viewpoints in the Framework
cover the entire scope of
architectural concerns from all
the Stakeholders
Note that the Viewpoints
(mostly) fall into the category
of a particular branch of
Architecture (referred to as a
Domain)
Domains are explained
later in this deck
29
View Frameworks
Standard Architecture
Domains
31
A commonly-referenced framework
of architectural domains is:
Business
Architecture:
Vision, Strategy,
Objectives, Processes,
Principles, Capabilities,
Actors, Use Cases,
Application
Organization, etc.
Architecture:
Business
Architect
ure
Applicati
on
Architect
ure
Technical
Architect
ure
Informati
on
Architect
ure
Systems, Applications,
Services, Protocols,
Messages, Interfaces,
Data/Information
Transactions, etc.
Architecture:
Information Entities,
Ontologies, Taxonomies, Data
Relationships,
Technical Schemas, etc.
Architecture:
32
Network, Servers,
Storage,
Communications,
Platforms, etc.
DEFINITIONS:
Business Architecture:
Graphical representation of a business model, showing the networks through
which authority, information, and work flows in a firm. It serves as the blueprint
of a firm's business structure, and clarifies how the firm's activities and policies
will affect its defined objectives. (BusinessDictionary.com)
The practice of creating a design to satisfy an organizations strategic and tactical
directives by providing an enterprise-wide, holistic business view, and identifying
and monitoring both internal and external impacting factors and
interdependencies. (Business Architects Association)
A blueprint of the enterprise that provides a common understanding of the
organization and is used to align strategic objectives and tactical demands. (OMG
Business Architecture Special Interest Group (BASIG))
A description of the structure and interaction between the business strategy,
organization, functions, business processes, and information needs. (TOGAF)
The structure and behavior of a business system (not necessarily related to
computers). Covers business goals, business functions or capabilities, business
processes and roles etc. Business functions and business processes are often
mapped to the applications and data they need. (Wikipedia)
33
DEFINITIONS:
Application Architecture:
Application architecture is the organizational design of an entire software
application, including all sub-components and external applications interchanges.
(wiseGeek.com)
A description of the structure and interaction of the applications as groups of
capabilities that provide key business functions and manage the data assets.
(TOGAF)
The structure and behavior of applications used in a business, focused on how
they interact with each other and with users. Focused on the data consumed and
produced by applications rather than their internal structure. In application
portfolio management, the applications are usually mapped to business functions
and to application platform technologies. (Wikipedia)
34
DEFINITIONS:
Data/Information Architecture:
The data structures used by a business and/or its applications. Descriptions of
data in storage and data in motion. Descriptions of data stores, data groups and
data items. Mappings of those data artifacts to data qualities, applications,
locations etc. (Wikipedia)
A description of the structure and interaction of the enterprises major types and
sources of data, logical data assets, physical data assets, and data management
resources. (TOGAF)
Information Architecture is about organizing and simplifying information,
designing and integrating information spaces/systems, and creating ways for
people to find and interact with information content. Its goal is to help people
understand and manage information and make right decisions accordingly. (Wei
Ding, Xia Lin Information Architecture)
Set of rules that determine what, and how and where, information will be
collected, stored, processed, transmitted, presented, and used.
(BusinessDictionary.com)
35
DEFINITIONS:
Technical/Technology Architecture:
A description of the structure and interaction of the platform services, and logical
and physical technology components. (TOGAF)
The structure and behavior of the technology infrastructure. Covers the client
and server nodes of the hardware configuration, the infrastructure applications
that run on them, the infrastructure services they offer to applications, the
protocols and networks that connect applications and nodes. (Wikipedia)
36
Standard Architecture
Tiers
37
Technology Horizon
Enterprise Architecture
38
Enterprise Architecture
Technology Horizon
Segment
Architecture
39
Enterprise Architecture
Technology Horizon
Portfolio
Architecture
40
Enterprise Architecture
Technology Horizon
Portfolio
Architecture
Unlike
EA
and
Portfolio
Architecture,
which
are
continuous activities, the activity
of
Solution
Architecture
is
typically tied to a project lifecycle
or delivery of some similar work
product.
Solution
Architecture
41
Technology Horizon
Enterprise Architecture
Portfolio
Architecture
Solution
Architecture
Project
Etc.
Project
Project Project
Project
Project
Business Information Application Technical Integration Data
Architect Architect
Architect Architect Architect Architect
42
The
actual
process
of
Architecture is continuous and
holistic
across
Tiers
and
Domains it is a continuousimprovement lifecycle.
Enterprise Architecture
Technology Horizon
If EA strategic roadmaps do
not
see
realization
in
operational solutions, then
EA is irrelevant, and SA is at
best an incremental valueadd.
Portfolio
Architecture
Solution
Architecture
43
44
Are we doing
the right things?
Deming
Cycle
Are we getting
the expected
results?
Are we doing
things right?
45
Integrating Architecture
into the Annual
Corporate Cycle
47
48
Strategy
Capture
/Review
Demand
Mgmt.
IT Roadmapping
Project
Portfolio
Mgmt.
i
IT
izat
n
a
Org
Help
Change
Desk n
o
Mgmt.
IT
olio
f
t
Technolo
r
gy Po
Land
Service
Strategy
Capture
Service
Support
Program
Mgmt.
Master
Data
Mgmt.
O pp o
rt
Iden unity
tif
catio in
Service
Roadmapping
IT
v ic e
r
e
S
Operations
49
Change
Mgmt.
Capability
Planning
Portfolio
Strategy
Capture
scape
Mgmt.
Project
Mgmt.
tfol
Demand
Mgmt.
IT Roadmapping
Strategy
Capture /
Review
Project
Portfolio
Mgmt.
Help
Desk
Change
Mgmt.
ol
f
t
r
Po
io
Capability
Planning
Portfolio
Strategy
Capture
Program
Mgmt.
Master
Data
Mgmt.
Service
Strategy
Opportunity
Identification Service
Roadmapping
Project
Mgmt.
Serv
ice
Ope
rati
ons
Or
g.
tf
Por
io
vi
Ser
ce
ic
v
r
Se
e
Architecture integrates into the basic Corporate cycles at each level of the
organization, and helps to provide a vertical backbone of integration
between levels. The next slide shows more explicitly exactly how
Architecture acts as an agent of integration across organization levels.
50
ol
Integrating Architecture
into Projects
51
.
Org
52
Business
Case
Tactical
Roadmap
Portfolio
application
roadmap(s)
Project
Charter
PA provides
complexity & tech
assessment
content, reads final
doc: this ensures
early visibility into
the approved
project
Solution
Architect
Legend
Architectural inputs
Architectural deliverable
Elaborat
ion
Construct
ion
Design
Analyze
& Build
Non-funct
Requirmts
Requires nonfunctional
requirements,
Conceptual and
high-level Logical
architecture to be
completed
RFx
Detailed
Logical
architectur
e and
physical
architectur
e; may be
done in
iterations
for agile
projects
Detailed Detailed
Non-funct Soln Arch
Requirmts
Test Chg
SA Mgmt
reviews
Test Deploymt
Plan Plan
Depending on SDLC,
may iterate as far as
development
milestones or all the
way to incremental
deploytments
deployments
Warranty
SA provides
technology
retirement,
resource
reclamation and
information
SA provides
disposition plans
cut-over
plan,
including
data
migration
Transition
Plan
Operational
Support
Model
Iterations
or Sprints
An Architect
53 creates
this
Deploy
development
team test
plans,
contributes
nonfunctionalSA
test plans
provides
backup,
technical
deployme
nt and
rollback
plans
Conceptual
System
& Logical
Selectn
Soln Arch
An Architect contributes to
this
Transiti
on
Support &
Retirement
Plan
This is the
Support
Sustainme
nt bible
Key Take-Aways
Architecture in practice is a holistic endeavour of continuous improvement that is both
broad and deep:
Architecture Domains (Business Architecture, Application Architecture, Information
Architecture, Technical Architecture) and Architecture Tiers (Enterprise Architecture,
Portfolio Architecture, Solution Architecture) are simply a way to overlay conceptual
columns and rows against this broad topic to allow us to artificially subdivide it and get
our heads around it. But we must NEVER actually practice Architecture in
deconstructed isolation like that.
Views are slices of the complete architectural description, oriented to a specific
stakeholder audience.
Views contain artefacts (models, diagrams, tables, etc.) and narrative text to address
specific Stakeholders architectural Concerns.
The models in a View may be Conceptual, Logical or Physical (or a controlled mix), depending on
how preliminary or high-level the architectural perspective is:
Models developed during Enterprise Architecture or Portfolio Architecture, or during the
earlier stages of Solution Architecture are likely to be Conceptual and non-detailed Logical
models
Models developed during later stages of Solution Architecture are likely to be detailed
Logical and Physical models.
You need multiple Views to create a complete architectural description (to cover all the
Concerns of all the Stakeholders)
Viewpoints are the schema that specify what a View that realizes that Viewpoint must
contain
You should structure your Viewpoints into a framework to minimize redundant overlap
between them while ensuring that the entire scope of stakeholder architectural
concerns are addressed.
54
55