Case history of an Industrial
Architecture
(or, what is in an architecture?)
Howard Chivers
Typical System
Business Processes Workflow
On-Line
Transaction
Processing
Operational
Data
Data
Transform
&
Cleansing
Imported
Reference
Data
Data
Warehouse
Data
Marts
System Issues
Individual (Sub-)systems have distinctive
Requirements, Users & Developers
But the enterprise needs:
Common Infrastructure, Deployment, Management
Effective overall Business Workflows
Some System Wide properties (e.g. Security)
Legacy integration
Problem: Good-enough-set-of-block-diagrams and
infrastructure constraints (=Architecture) to constrain
the implementation of individual systems
Design Approaches
9
9
Clear Contracts
Scales well
X
X
X
9
9
9
Flexible
Maximises
immediate value
COTs infrastructure
X
X
X
X
High Initial Cost
Inflexible
Can result in bespoke
sub-system design
Unspecific Contract
Assumes infrastructure
Ignores whole life-cost
Difficult to scale
Process objectives
Defer as much as possible to each delivery
phase:
Minimise constraints on sub-systems
Avoid early over-specification
Component based design
Address choice of infrastructure early
These process slides are not complete
– they just illustrate that process interacts
with architecture content.
Architecture Views
Application
Infrastructure
Frameworks
Application model
‘Architecturally significant’ use-cases
Functional model
Scope of major business services & interfaces
Deployment into (application) sub-systems
Quantitative model
Management & Support
Infrastructure Model
Foundation Layers: Network & Computing
Application Environments (EJB, web, database …)
Infrastructure Services (security, directories, event
logging, data storage, messaging …)
Quantitative model
Application Deployment Model
Product types (e.g. components, applications) & their
lifecycles
System management features
(e.g. event monitoring,
system control)
Interfaces
Layered from infrastructure to application
Transport
Generic interoperability
Generic infrastructure, protocols & services
Format & content or messages
Environment – e.g. namespaces
Services required to interpret content
Application integration
Behaviour of application (high level protocol)
May need to include deployment information
e.g. required data, services, environment properties
Frameworks, for example …
Data access
Defines ‘n-tier’ access architecture between user
and data.
Ensures common approach between several
systems.
Security
Policy framework for whole system.
Required services.
Required constraints on parts of the system
(infrastructure & application models).
End