Architect
roles as seen in BCS professional certificates for enterprise and solution
architecture
In an assignment for the British Computer
Society, 1,100 job adverts with "architect" in the job title were
analysed. The many titles included: technical architect, software architect,
J2EE architect, data architect, process architect, etc. Adverts for enterprise
architects featured terms like “strategy”, “engagement with senior executives”,
“standards” and “governance”. And there were roughly 4 solution architects for
every 1 enterprise architect.
Enterprise and solution architect roles do overlap,
but in practice they are distinguished, and sometimes report to different
managers. This article draws some distinctions that can be found in research of
both the literature and the job market.
“I just wanted to take a minute and let you know how
much I appreciate your contribution to this discussion. As you've so clearly
stated, EA and SA are two different and distinct roles. … many are trying
to answer a question long ago defined - what is an EA. I commend you on
[answering] the question in a manner that clearly and firmly states the role of
an EA. Brava!”
Contents
Business Architecture in an EA
context
Solution architecture outside an EA
context
Further contrasts between EA and SA
Architect:
[A role] that involves analysis of a context and requirements, analysing
and choosing between options, defining an architecture, using principles and
patterns, ensuring agreement of what is described, planning the move from the
baseline state to the target state, and governing that change.
Higher level roles abstract from detail and operate
more widely, with a broader scope. Higher level roles govern
lower roles to some extent.
Architect domain Architect level |
Business architect |
Data architect |
Applications architect |
Technology architect |
Enterprise architect |
|
|
|
|
Solution architect |
|
|
|
|
Software architect & other
technical specialist |
|
|
|
|
The
architecture work space
The graphic above is a simple way to view
architect roles. Different organisations divide the work differently, and
define other specialist architect roles. Any one architect may work at more
than level and in more than one domain.
Whereas enterprise-level architects often specialize
in one architecture domain, solution architects are expected to know enough
about all of the domains to have a coherent discussion with domain specialists.
(Note that design for non-functional requirements,
especially security architecture, can be relevant at every level and in every
domain!)
Enterprise and solution architect roles are
contrastable on several scales; both may act in any of
the four architecture domains, but their focus tends to differ in
other ways.
Enterprise
Architects tend to look to integrate systems across
the enterprise, standardise processes, data definitions and technologies, be
relatively strategic (typically, 2 to 10 years). and produce relatively
abstract models and road maps.
Solution
Architects may look to deliver a solution for a
local function or unit, use parochial process and data definitions, and
technologies, be relatively tactical (typically, 6 months to 2 years) and
produce relatively concrete models and migration paths (also called road maps).
[An architect] who takes a cross-organisational and
strategic view of business systems, looking to.
[An architect] who focuses on individual solutions
and systems.
[An architect] who
addresses the modularisation and integration of software components, usually at
a relatively fine-grained level.
Aside: Several principles and patterns of software
architecture (such as encapsulation behind interface definitions, hierarchical
composition, coupling v decoupling of components, orchestration v choreography
of components) are so general that they are useful at higher levels of
application and business architecture.
Enterprise-level architects describe the aims,
activities and actors of an enterprise, along with the resources they need at
an abstract level. A comprehensive enterprise architecture should cover:
Any architect seeking to change elements at one level
needs to understand the level above.
Business
directors are responsible for business planning
and defining A, B and C. Enterprise-level architects are responsible business
system planning and defining C, D E, F, G and H, at an abstract level.
Business
architects typically focus on C, D, E and sometimes
F. Some consultants use the term “business architecture” more widely (across,
for example, market research, product design, strategy setting, advice on
mergers and acquisitions, and the sociological aspects of an organisation).
Some distance business architecture from the IT support they need. However, EA
has always been about the effective integration of human and computer activity
systems. So, business architecture and EA may be thought of as overlapping
sets.
Solution
architects usually start with some business
architecture activity. First, there is some kind of business case - outlining
the benefits, costs and risks of a proposed change. Then, a target business
architecture for a particular solution may describe
both an external view of the system of interest (its inputs and outputs,
products or services) and an internal view (its processes, roles/components and
the information they create and use).
Today, one major global service provider studied has
no role called enterprise architect, because they consider that to be a role in
their customers’ organizations. Their architect roles include Solution Manager,
Solution Architect, Business Analyst and Technical Architect.
With or without any overarching EA, a solution to be
designed and deployed needs a solution architect. And to be honest, compliance
of a solution with EA standards and road maps can add to the time, cost or
resources needed. So even where EA standards and road maps are in place, some
SA may occur outside of, or even in conflict with, the EA.
Solutions designed and delivered with little or no
regard to EA may include:
Discussion of EA sometimes obscures the fact that
so-called “road maps” can cut across one another. An aim of enterprise level
thinking is to define long-term targets for an enterprise's business processes,
applications, and platform technologies. To reach these targets, the enterprise
needs strategic road maps showing where and when changes will be made. But
meanwhile, more tactical solutions and silo systems must be developed and
deployed. So, in practice, enterprise-level road maps can cut across
solution-delivery-oriented road maps, or migration plans.
The challenge is to progress the enterprise architecture while many
if not most solution architects are working to shape and steer
specific systems and projects.
A solution architect is a leader and enough of a
generalist to be able to coordinate all domain specialists. However
to call all solution architecture “EA”, however small-scale, tactical and
parochial, would be to put EA history into reverse gear. The risk is that
the meaning of EA is diluted to the point it has no meaning.
The comparison below represents reasonable consensus
about role differences.
A domain specialist architect may contribute to a
solution, but that doesn’t make them a solution architect. A domain specialist
or solution architect may contribute to EA aims, but that doesn’t make them an
enterprise architect.
This article is not
included in either of the two books written by me and recently published:
The first is written mainly for college teachers and
students. The second is written more for professional enterprise and solution
architects. For extracts from the second book, read some of the other articles
I have posted in Linkedin, notably Article 3 "The Architecture
Workspace".