ArchiXL visie op architectuur

advertisement
Architecture Principles
The Cornerstones of Enterprise Architecture
Danny Greefhorst (dgreefhorst@archixl.nl)
Erik Proper (erik.proper@tudor.lu)
1
Agenda
• Some definitions on architecture and principles
• Conceptual model
– Scientific versus normative principles
– Credos versus norms
– Architecture versus design
• Generic process
–
–
–
–
Determining drivers
Determining principles
Specifying principles
…
• Example
2
Problem statement
• Enterprises evolve continuously and need some means of deliberate
control in order to focus on their key drivers (agility, cost, …)
• Enterprise architecture as a whole enables such controls, but is
overloaded with viewpoints and does not focus on the essence
• Architecture principles focus on the essence of architecture and
provide an anchor in a sea of change
• The foundations for architecture principles, as well as their practical
application have received little attention and is still ill-defined
3
Architecture
“The fundamental organization of a system embodied in its
components, their relationships to each other, and to the environment,
and the principles guiding its design and evolution”
IEEE 1471
“Theoretically, architecture is the normative restriction of design
freedom. Practically, architecture is a consistent and coherent set of
design principles.”
J. Dietz
“Those properties of a mission, its solution and their environment that
are necessary and sufficient for a solution to be fit for purpose for its
mission in that environment”
L. Fehskens
4
Architecture Principles
“Principles are general rules and guidelines, intended to be enduring
and seldom amended, that inform and support the way in which an
organization sets about fulfilling its mission.”
TOGAF
“A statement of the organization’s philosophy of information systems
expressed in terms of objectives and goals in each domain area.”
PRISM
5
6
7
8
9
Principles
“1a: a comprehensive and fundamental law, doctrine, or assumption b
(1): a rule or code of conduct (2): habitual devotion to right principles <a
man of principle> c: the laws or facts of nature underlying the working
of an artificial device,
2: a primary source: origin,
3a: an underlying faculty or endowment <such principles of human
nature as greed and curiosity> b: an ingredient (as a chemical) that
exhibits or imparts a characteristic quality,
4: Christian Science: a divine principle: god”
Webster
10
Scientific principles versus normative principles
• Scientific principle – A law or fact of nature underlying the working
of an artifact.
• Normative principle – A declarative statement that normatively
prescribes a property of something.
11
Examples of scientific principles
• Exposure effect: “repeated exposure to stimuli for which people
have neutral feelings will increase the likeability of the stimuli”
K. Lidwell
• Performance load: “the greater the effort to accomplish a task, the
less likely the task will be accomplished successfully”
K. Lidwell
• Archimedes principle: “any object, wholly or partially immersed in a
fluid, is buoyed up by a force equivalent to the weight of the fluid
displaced by the object”
Archimedes
12
Normative principles: credos and norms
•
Credo – A normative principle expressing a fundamental belief.
•
Norm – A normative principle in the form of a specific and measurable
statement.
•
We should follow citizen logic.
•
•
Applications should be decoupled.
•
Credo
The status of customer requests is
readily available inside and
outside the organization.
Communication between
application services will take place
via an enterprise-wide application
service bus.
Norm
13
Desired design properties
• Requirement – A required property of an artifact.
• Design principle – A normative principle on the design of an
artifact. As such, it is a declarative statement that normatively
restricts design freedom.
• Design instruction – An instructive statement that describes the
design of an artifact.
• Architecture principle – A design principle included in an
architecture. As such, it is a declarative statement that normatively
prescribes a property of the design of an artifact, which is necessary
to ensure that the artifact meets its essential requirements.
14
Architecture versus design
Architecture
Design
Essentials dictated by the mission (problem,
need or opportunity) and its environment
Decisions compatible with the architecture
A different architecture implies a different
mission
Different designs may address the same
mission
Defines a class of acceptable solutions
Defines a single specific solution
About suitability or fitness for purpose, as
defined by the mission
About engineering optimization, within
architectural constraints
Role of the architect is mostly to make correct
inferences about the mission, solution and
environment
Role of the designer is mostly to make correct
decisions about the solution
Architecture is done by architects
Design is done by developers
Primary audience is mission and solution
stakeholders, which usually includes designers
and implementers
Primary audience is solution implementers
About the mission and solution in their
environmental context, i.e., outward looking
About components and subsystems of the
solution, i.e., inward looking
Source: L. Fehskens
15
Conceptual model
Proposition
Scientific
principle
underpins
Desired
property
Desired design
property
Principle
leads to
Design directive
Requirement
motivates
Credo
Normative
principle
Design principle
Norm
Architecture
principle
Design
instruction
16
Generic process for architecture principles
Assess
Determine
drivers
Determine
principles
Manage
compliance
Specify
principles
Apply
principles
Aim
Act
Handle
changes
Classify
principles
Validate
and accept
principles
17
Drivers for architecture principles
• Goals & objectives – targets that stakeholders seek to meet,
• Values – fundamental beliefs shared between people in an
enterprise,
• Issues – problems that the organization faces in reaching the goals,
• Risks – problems that may occur in the future and that hinder the
enterprise in reaching its goals,
• Potential rewards – chances and their potential reward for
enterprises, and
• Constraints – restrictions that are posed by others inside or outside
the enterprise, including existing normative principles.
18
Architecture principle “generating” questions
• For goals and objectives – What is needed to attain the goal or
objective?
• For issues – What is needed to solve the issue?
• For values – What is needed to realize this value?
• For risks – What is needed to minimize the probability or the impact
of the risk?
• For potential rewards – What is needed to attain the potential
reward?
• For constraints – What is needed to enforce the constraint?
19
Filtering out things that are not architecture principles
• Does it describe a functionality that is needed? In that case it is
probably a (functional) requirement.
• Does it describe something that needs to be done? If it does, then it
is probably an action.
• Are there objective arguments that support it? If it does not, then it is
probably a (potential) strategic decision or business principle?
• Does it have impact on the design of the organization and/or the IT
environment? If if does not, then it is probably a business principle (if
it influences the daily business operations) or an IT principle (if it
influences the daily IT operations).
• Does it have impact on the design of multiple systems? If it does
not, then it is probably a design principle or design decision.
20
Quality criteria for architecture principles: SMART
•
Specific
– Is it specific enough for people to understand its intention and its effect?
– Are all words unambiguous and clear, or definitions provided otherwise?
– Are all important consequences identified?
•
Measurable
– Is it possible to determine whether a behavior is in line?
•
Achievable
– Can the implications be performed by or adhered to without prerequisites?
– Is it acceptable to all stakeholders?
– Is it properly and sufficiently motivated?
•
Relevant
–
–
–
–
•
Does it describe a fundamental and essential choice?
Does it provide limitations on the design of the organization?
Does it clearly distinguish itself from other principles?
Will following it lead to a significant improvement?
Time framed
– Is it stable in context and time?
21
Quality criteria for sets of principles
• Representative
– Is the set representative for the problem domain?
– Are all important aspects of the problem domain covered?
• Accessible
–
–
–
–
Is the easily accessible to readers?
Can the set be found and retrieved by everyone in the organization?
Are they limited in number?
Do they have a common structure (template) and similar level of detail
and abstraction?
• Consistent
– Are there no obvious conflicts between principles in the set?
22
Example: insurance company
Goal: To be the provider of the
cheapest insurances.
Value: Operational excellence
Issue: There is a lot of redundancy
in the processes and IT systems.
Principle: Systems are designed
to be customer-facing
Risk: It is getting increasingly
difficult to find the right IT specialist
for maintaining certain legacy IT
systems.
Potential reward: Migrating to
new and more agile technology.
Principle: Business processes are
automated and standardized
Constraint: Current IT staff does
not have any knowledge on new
technology.
23
Other key messages
• Architecture principle development is an iterative and collaborative
process, which should include validation and formal acceptance
• Architecture principles should be used to:
– determine downstream artifacts
– determine compliance
– stimulate discussion!
• Architecture principle development depends on contextual factors:
– Type of architecture (enterprise, reference, solution)
– Maturity of the architecture function
– The environment, the required change, the stakeholders and the person
leading the change
24
Upcoming book
25
Questions?
26
Download