Architecture Task Force Third Meeting 2 CeSC

advertisement
Architecture Task Force2
Third Meeting
CeSC
Cambridge
Centre for Mathematical Sciences
18th December 2003
1
Administration
Present
Malcolm Atkinson (chair & note taker)
Howard Chivers
John Darlington
Andrew Herbert
Dave De Roure
Tom Rodden
Joe Sventek
Notes of Last Meeting
Agreed as useful
Actions
Some people still haven’t supplied info for the Web Page!!!!
2
Agenda
Notes of Last Meeting
Actions
Presentations
Chivers
Sventek
Presentations
Visions & Showstoppers
Integration & Classification
The Next Steps
The Next Meeting
3
Note
The slides beyond this one were typed by me
(Malcolm Atkinson) as we went through the
meeting – they were slightly modified afterwards
by John Darlington and myself reading them
through quickly
They are an impression of the meeting in
chronological order, with some repetition
They do not necessarily represent the combined
views of the meeting or the eventual position of
the ATF2
4
Presentation 1: Howard Chivers
Architecture in Industry
Or what is an architecture?
What kind of things do we want to constrain?
Large scale data warehousing systems
Data cleaning _. Analysis
Large systems + high Tx rates + lots of users
Each component large
User requirement sets dictate division
Different developers
Enterprise view
Want to share infrastructure
Life cycle costs, etc.
Continuous business processes
5
HC: cont
Total system-wide properties (e.g. security)
Security, legal, etc.
Architecture
Good enough set of block diagrams and infrastructure
constraints
X
Can give guarantees at total business requirements
To constrain individual developments just enough
X
Leave the component development teams enough freedom
What is the enterprise
Building for the future ⇒ don’t know use cases
6
HC: cont
Design approaches
Top down – scales well
X
High initial cost, inflexible & bespoke subsystems results
Cyclic replacement
X
Flexible, maximises immediate,, COTS infrastructure
– Unspecific contracts, assumes infrastructure
– ignores whole life cost, difficult to scale
Alternatively, set of infrastructures around
X
X
X
Define a virtualisation layer
Does it exist already?
E.g. Java was a VM for HC’s example
Deployment issues
X
X
What is an application
What is the deployment life cycle
7
HC: cont
Process objectives
Early choice of the infrastructure
X
X
X
X
X
What set of services
Virtualisation layer?
What physical services buy & deploy
First set
Cycled development of infrastructure
Void early specification
X
X
X
Collect generic requirements initially
Not specific requirements ∴reqs change
Avoid collecting detail!
8
HC: cont
Three views
Application view
X
X
Business process view – data flows and workflows
Broad but shallow use cases
Functional model at a high-level early
X
X
Major interfaces aservices
Deployment into application subsystems
Quantitative model
X
X
Data requirements get missed unless you do this at a high-level
Pairwise agreements ignore
9
HC: cont
Infrastructure Model
Foundation layers: Network & Computing
Application Environments (EJB, web, DB, …)
Infrastructure services (security, directories/registries,
event logging, data storage, messaging, …)
Quantitative model
Application deployment
System management features
X
Event monitoring, system diagnosis & control)
10
HC:cont
Interfaces
Layered from infrastructure to application
X
X
Comms style, e.g. SOAP, opaque msg delivery
Generic standards, XSDs, protocols,
Generic interoperability << valuable place to look at this
X
X
X
Format and content or message
Environments, e.g. namespaces
Services required to interpret content
Application integration
X
X
Behaviour of application (high-level protocol)
May have deployment information
11
HC: cont
Frameworks, e.g.
Data access
X
X
X
Defines ‘n-tier’ access architecture between user & data
Ensure common approach between several systems
Prevent each application inventing their own
Security << care about this in larger system
X
X
X
Policy framework for whole system
– E.g. localise data requiring a particular sensitivity applies
– People’s names, etc. in only one place
– Then protect with a firewall
Required services
Required constraints on parts of the system
– Infrastructure & application model
12
HC: discussion
Never time to just do the circle/triangle
Do we have a clear idea of what the apps will be
Major changes to business practices
High rate of perturbation now
What was Grid specific?
Cross organisational aspects
Discussion about relationships between organisations
No one without core business survives
Projects & IPR
Business strategy
Microsoft is the “Big shark” needs fish in the ecosystem
13
Presentation 2: JS
Systems & Infrastructure Vision
Previous experience at DOE lab.
Most successful infrastructure mechanisms
IP → IP6
What should we do
IP at the Grid level
Build on distributed O/S
14
JS: cont
O-O architecture
Statically defined and assembled into apps
X
Inflexible and brittle
Didn’t scale at network level
ANSA/CORBA transparencies
Aspect-Oriented Computing
Statically defined separate views
Tools weave views together to produce applications
X
Again static result
Policy-Oriented Computing
Where we are going
15
JS: cont
Policy-oriented
Constraints/preferences that must be met
Dynamically use the policies to integrate components
Continue to adjust composition
Beware large monolithic applications
Two forms of dynamism
X
X
Every person / group uses it differently
– Business processes evolve
Changing technology
Control-plane is where we most need commonality
“Lesson” from telecoms partners of ANSA
X
But business model adapted to infrastructure – we carry flaky phones
16
JS:cont
Why did IP work
Sit at centre of hour glass
⇒ must adapt to changes above & below
Agreed that wouldn’t always be optimal
What does the hour glass mean for us at this
level
Big change – we have many kinds of resources
Job dispatching
What are the crucial activities above us?
What do we have beneath?
Dynamically changing sets of machines, …
17
JS: cont
Can view this as a distributed virtual operating system
Deal with scheduling and sharing of all kinds
of dynamically varying resources
Back to policy
Some work on policy based management
Does this this lead to (semi) autonomic computing
Much work needs doing here
Basis for understanding the hour glass
We then understand what we are trying to define
Key features: Virtual Organisations
Resources
Plug & Play only recent
Think about what they do as an input
18
JS:Cont
Where does policy take us?
How do we represent policy
What can we say / not say
What do policies apply to
What resolution systems can we build
How do we engage the human
How do policies compose
Internet routing policies are a microcosm
19
JS:cont
History of networks
We just add the number of features we can assume
Seamless access to all resources available in
the virtual organisation, at any scale.
This implies
Distributed O/S, with pre-emptive scheduling
X
Aggressive split between policy and mechanism split
21st Century security
20
JS:cont
Big question
What are we trying to architect
The policy space at the centre of the hour glass
Abstract patterns needed?
Expect that these will evolve
What tests our progress
What information do we want to get into policies
Follow the abstract patterns
Avoid the concrete framework, etc. traps
What are the dominant patterns we should capture
What vocab do we need?
21
JS: Discussion
Policy
Chance to link between formal models & systems
Opportunity for good tools
X
X
Can map to what you have today
With tool input for what we want tomorrow
Declarative things should play well here
Separate meaning from behaviour
X
Separation of concerns
How do we define our boundaries
How far above / below the waist of the hour glass
Need a temporal model
22
Presentation 3: Howard Chivers
Architecture – some requirements
Centre projects by type
Data centric (information grids) and
users/visualisation applications
39% of the projects developing infrastructure
Because it wasn’t there (MPA’s theory)
Indefinite behaviour of composing things
May always have the wrong emphasis in common
infrastructure
“The Grid” is too simple a deployment model
23
HC: cont
The Grid has missing structure
Support for groups of resources
Support for groups of people
Separate the VO of users
From the VO of resource suppliers
Get linked by policy and brokering
Virtualisation
Applies to provide & publish resources
Does the separation of supply and consumption win
us anything?
24
JS: cont
Resource provider states what policy operates
for use of the resources
25
Presentation 4: John Darlington
Deploying applications over Grids
Information Capture & Use
Keywords from e-Science
X
X
Easy, transparent, …
Use, development & execution
Keywords from Grid
X
Complex applications on complex machinery
Capture knowledge about build, composition, use
ICENI
Component architecture
X
Place to hang knowledge
Resources that will be used
X
Place knowledge about these with their proxy
Discover, interact, broker
X
Dynamically revise binding between Component & Resource
26
JD: cont
Component
Unit of composition in which all context dependencies are
explicit
Service
Component performing a task
Abstraction levels for components
Roles
X
Sources of information (in CXML)
Developer
X
Produces implementations
Scientist
X
Designs useful components
User
X
Composes and executes application
27
JD: cont
Separation of concerns
Meaning, behaviour & implementation
Composition must satisfy constraints
Tool help possible
Slides on steps from composition to execution
Component definition to Execution
On slides
28
JD: continued
What description
Not yet related to standards
Describes both resources and services
Structured language
X
X
High-level language
Set of information that needs to be collected
Tools to extract workload and performance
X
Magpie [HOTOS 2002]
Feedback loop into development and maintenance
X
Failure analysis
29
Oral Presentation: Andrew Herbert
Conversation last week
Used to be difficult to persuade company
interest
Hard to find believable business case
Even harder on standards
Trying to get focus
Steve Tuecke + Indigo project team
Debate went surprisingly well
Distinguish between services and resources
Recognition of the possibilities
30
AH: Cont
Where it ended up
WS-Context story carrying things around
Many major problems evaporated
Now seems to be dialogue
Person assigned person
X
Marvyn Theimer
Encouraging conversation
Frustrations between Globus
Harmony about where want to go with WS
31
AH: cont
We should look at composing WS & resources
Where do we see opportunities
Collaboration
Living rooms, consumers & wireless
32
Presentation 5: Dave De Roure
Semantic Grid workshop @ GGF8
Grid problem: interoperability
Scale driving the requirement
E-Research
Computation, data
People & VOs
Knowledge – digital artifacts
Extended enterprise
Need large scale heterogeneous, interoperability
Components, … bring them all together
33
DDR: cont
Architecture that describes frameworks for components
and their operation
Principles
Means of describing collections of infrastructure cmpnts
Meta-information architecture
Quote from Tom (coherence crucial)
Not just doing it
Make it easy to do
Shift of focus
X
X
X
From developer
Through experience builder
Towards participant
34
DDR: cont
Focus on user
Ease of assembly
Ease of design-build-test
Self configuration
Ease of ownership
Semantic Web – brings technology
Network effect
URI server/relationships
RDF bus – rules
Examples: comb-e-chem goes to lab and
publication – early provenance, etc. – smart tea
35
DDR: cont
Bootstrap problem
Incentives to create metadata not apparent to early
users
Standards for standards versus standards
Community-based standards
X
X
Gene-ontology vs Globus ontology
Can we every reach such a complete / extensive / coherent
knowledge integration
GGF provides some of the framework for this
Both sharing and interoperating have potential
problems
X
Lots of small things that interoperate
36
DDR: cont
Semantic web might not work
Distributed semantic web unproven
Still being researched
Live & real work underway
37
Digesting Meeting
Consistent points
Descriptions central
Not a common infrastructure
Minimal knowledge and tools to make architecture work
Agreed Document target for completion by May
Identification of scope, requirements and structure of
architecture
Constraints
Can’t assume static system
Avoid detail
But danger of nothing to get teeth into
Understand variants from practical systems
Pilots and IRCs at NeSC
38
Digestion 2
February’s meeting
How do we extract the high-level patterns
Are these classes of business practices
Or common patterns within applications
What is our idea about composition
Examples
Information used in build and deploy
Lists of terms / words
OMII harvest – look at this – find persistent principles
Describing architectures and tests
Agent-oriented architecture relevant?
39
Digestion 3
Very high cost of looking after components and
deployed code
Several lines of discussion here
Got involved and stopped taking notes
Timed out
40
DONMs
February UCL
Identification of Common Patterns to Support
General business
X
X
Outline of Report (Scope, Limits, Goals & Structure)
Commitment to write Parts for Review at next meeting
Invite 2 or 3 e-Science visionary scientists for 2 hours
X
Peter Coveney was agreed to be a good choice
Late March & early April
Imperial
May/June
Goal: A report / published matrix / draft road map
By end of June 04
41
Download