View
37
Download
2
Category
Preview:
DESCRIPTION
Software Architecture: Past, Present, and Future of the ArchWare European Project Flavio Oquendo. Flavio.Oquendo@univ-ubs.fr UnB - IV Seminário DPP de Pesquisa e Inovação Brasília, 6 de outubro 2010. About me. Full Professor of Computer Science at the University of South Brittany, - PowerPoint PPT Presentation
Citation preview
Software Architecture: Past, Present, and Future of the
ArchWare European Project
Flavio Oquendo
Flavio.Oquendo@univ-ubs.fr
UnB - IV Seminário DPP de Pesquisa e InovaçãoBrasília, 6 de outubro 2010
2
About me
Vannes
European Univ. of Brittany
France
Paris
http://www.ueb.euhttp://www.univ-ubs.fr
Full Professor of Computer Science at the University of South Brittany,part of the European University of Brittany, France
72,000 students 3,000 PhD students 3,600 PhD academics
Flavio Oquendo, Université Européenne de Bretagne, France
3Flavio Oquendo, Université Européenne de Bretagne, France
About me
About me on European Projects
25 years of active participation in more than 10 European R&D Projects, funded by the European Commission, under Frameworks Programs I to VII: ALICE, PCTE, PCTE+, PACT, ALF, SCALE, PROMOTER
I, PROMOTER II, PIE I, PIE II, ARCHWARE, S-CUBE Scientific Director of European R&D Projects
for more than 10 yearsExpert for the European Commission for
Evaluating R&D Projects in different Framework Programs
4Flavio Oquendo, Université Européenne de Bretagne, France
Outline
The Past Before ArchWare – Some European Projects in
Software Engineering
The Present ArchWare and its Research Achievements
The Future After ArchWare – Sustainable Development and
Applications
5Flavio Oquendo, Université Européenne de Bretagne, France
The Past
6
Before ArchWare – Some European Projects in Software Engineering
Flavio Oquendo, Université Européenne de Bretagne, France
Before ArchWare – Some European Projects in Software Engineering
PCTE (A Basis for a Portable Common Tool Environment) BULL (France), GEC Software (UK), ICL (UK),
NIXDORF (Germany), OLIVETTI (Italy), SIEMENS (Germany)
PCTE+ (Portable Common Tool Environment: Tool Support Interface) BULL (France), GIE Emeraude (France),
Industrieanlagen Betriebsgesellschaft (Germany), SELENIA (Italy), Software Sciences Limited (UK), THOMSON-SYSECA (France), Univ. of Aberystwyth (UK), Univ. de Nancy (France)
7Flavio Oquendo, Université Européenne de Bretagne, France
Before ArchWare – Some European Projects in Software Engineering
PACT (PCTE Added Common Tools BULL (France), EUROSOFT (France), GEC Software
(UK), ICL (UK), OLIVETTI (Italy), SIEMENS (Germany), THOMSON-SYSECA (France), Systems and Management (Italy)
ALF (Advanced Software Engineering Environment Logistics Framework) GIE Emeraude (France), Cerilor (France), CIG-
INTERSYS (Belgium), Computer Technologies Co. (Greece), Grupo de Mecánica del Vuelo, S.A. (Spain), ICL (UK), Univ. Catholique de Louvain (Belgium), Univ. de Dijon (France), Univ. of Dortmund (Germany), Univ. de Nancy (France)
8Flavio Oquendo, Université Européenne de Bretagne, France
Before ArchWare – Some European Projects in Software Engineering
SCALE (System Composition and Large Grain Component Reuse Support INTECS (Italy), BULL (France), GIE Emeraude
(France), INRIA (France), Logica Cambridge (UK), SFGL/TRANSTAR (France), Univ. Grenoble (France)
PROMOTER I (Process Modelling and Technology – I) Univ. de Nancy (France), Univ. de Grenoble
(France), Imperial College (UK), Univ. of Pisa (Italy), Univ. of Manchester (UK), Univ. of Dortmund (Germany), Univ. of Leiden (The Netherlands), Politecnico di Milano (Italy), Politecnico di Torino (Italy), Technical Univ. of Norway, Norway
9Flavio Oquendo, Université Européenne de Bretagne, France
Before ArchWare – Some European Projects in Software Engineering
PROMOTER II (Basic Research Action on Process Modelling and Technology – II) University of Nancy-LORIA (France), IMAG-LSR
(France), Imperial College (UK), University of Pisa (Italy), University of Manchester (UK), University of Dortmund-Informatik 10 (Germany), University of Leiden (The Netherlands), University of Paderborn (Germany), Université de Savoie (France), London City University (UK), Politecnico di Milano (Italy), Politecnico di Torino (Italy), Technical University of Norway (Norway), Technical University of Vienna (Austria)
10Flavio Oquendo, Université Européenne de Bretagne, France
Before ArchWare – Some European Projects in Software Engineering
PIE (Process Instance Evolution) Cap Gemini (France), Xerox European Research
Centre (France), Dassault Systèmes (France), ICL (UK), IMAG-LSR (France), University of Manchester (UK), University of Dortmund (Germany), Université de Savoie (France), Politecnico de Milano (Italy), Teamware (UK)
ARCHWARE (Architecting Evolvable Software) INRIA (France), Thesame (France), InterUnec
(France), CPR – Consorzio Pisa Ricerche (Italy), Engineering – Ingegneria Informatica (Italy), Univ. of Manchester (UK), Univ. of St. Andrews (UK)
11Flavio Oquendo, Université Européenne de Bretagne, France
The Present
12
ArchWare and its Research Achievements
Flavio Oquendo, Université Européenne de Bretagne, France
13Flavio Oquendo, Université Européenne de Bretagne, France
ArchWare: Introducing the Concept of Software Architecture
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR SATISFYING REQUIREMENTS The architecture is conceived for meeting
requirements The architecture is designed to meet functional
requirements … as well as non-functional requirements (-ilities)
14
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Analogous to Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR SATISFYING REQUIREMENTS The architecture is conceived for meeting
requirements The architecture is designed to meet functional
requirements … as well as non-functional requirements (-ilities)
15
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Software
software
software
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR MASTERING CONSTRUCTION The architecture is refined towards detailed design The building is constructed based on the
architecture and their refinements There are different possible constructions for coping
with the same architecture
16
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR MASTERING CONSTRUCTION The architecture is refined towards detailed design The building is constructed based on the
architecture and their refinements There are different possible constructions for coping
with the same architecture
17
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Software
software
software
software
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR MASTERING DESIGN Architectures are often based on well-defined styles Architectural styles enforce main architectural
properties and imply common features Design is based on well-defined patterns
18
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: ARCHITECTURE HAS A CENTRAL ROLE FOR MASTERING DESIGN Architectures are often based on well-defined styles Architectural styles enforce main architectural
properties and imply common features Design is based on well-defined patterns
19
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Software
softwaresoftware
software
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: STRUCTURE IS A CENTRAL FOCUS OF ARCHITECTURE Structure is a central mechanism for providing
functionality Properties of structures are implied by the designed
architecture Structure is thereby a main concern
20
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Analogy with Architecture in Civil Engineering
ARCHITECTURE OF BUILDINGS: STRUCTURE IS A CENTRAL FOCUS OF ARCHITECTURE Structure is a central mechanism for providing
functionality Properties of structures are implied by the designed
architecture Structure is thereby a main concern
21
architecture• noun 1 the art or practice of designing and constructing buildings 2 the style in which a building is designed and constructed 3 the complex structure of something— DERIVATIVES architectural adjective[Oxford English Dictionary]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Software
software
software
software
Analogy with Architecture in Civil Engineering
Progress on technology New materials New tools
Progress on the ability to model architectures Analytic power of theories Power of automated analysis
22Flavio Oquendo, Université Européenne de Bretagne, France
W
hat
is A
rchit
ect
ure
ARCHITECTURE OF BUILDINGS: PROGRESS ON UNDERLYING THEORIES AND TECHNOLOGIES
architecture• others[Architecture Handbook]
Analogy with Architecture in Civil Engineering
Progress on technology New materials New tools
Progress on the ability to model architectures Analytic power of theories Power of automated analysis
23Flavio Oquendo, Université Européenne de Bretagne, France
W
hat
is A
rchit
ect
ure
ARCHITECTURE OF BUILDINGS: PROGRESS ON UNDERLYING THEORIES AND TECHNOLOGIES
architecture• others[Architecture Handbook]
hardware
Software
software
Analogy with Architecture in Civil Engineering
Every building has an architecture even if not explicitly designed
An architecture is an abstract concept It is described according to different viewpoints It is described for meeting different purposes
Architecture description is thereby the main concern from an engineering viewpoint
24
architecture• others[Architecture Handbook]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
ARCHITECTURE OF BUILDINGS: IT EXISTS BY ITSELF, BUT NEEDS TO BE REPRESENTED TO BE MANIPULATED
Analogy with Architecture in Civil Engineering
Every building has an architecture even if not explicitly designed
An architecture is an abstract concept It is described according to different viewpoints It is described for meeting different purposes
Architecture description is thereby the main concern from an engineering viewpoint
25
architecture• others[Architecture Handbook]
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
ARCHITECTURE OF BUILDINGS: IT EXISTS BY ITSELF, BUT NEEDS TO BE REPRESENTED TO BE MANIPULATED
software
software
Software
26Flavio Oquendo, Université Européenne de Bretagne, France
The need for describing the architecture increases with the complexity of the system in terms of its parts, their relationships and the properties to be enforced
W
hat
is A
rchit
ect
ure
Analogy with Architecture in Civil Engineering
TechnologiesStyles
27Flavio Oquendo, Université Européenne de Bretagne, France
The need for describing the architecture increases with the complexity of the system in terms of its parts, their relationships and the properties to be enforced
W
hat
is A
rchit
ect
ure
Analogy with Architecture in Civil Engineering
TechnologiesStyles
Software
Limitations of the Analogy with Architecture in Civil Engineering
28Flavio Oquendo, Université Européenne de Bretagne, France
CIVIL ARCHITECTURE Buildings are basically static entities
Constructed with hard material
That when constructed are put to use (deployed once)
And then evolves very, very little in its lifetime
What
is A
rchit
ect
ure
29
Limitations of the Analogy: The Meaning of Architecture in Civil Engineering is Too Narrow
Flavio Oquendo, Université Européenne de Bretagne, France
W
hat
is A
rchit
ect
ure
Software is by nature different of buildings –
it is dynamic and malleable
Software architecture goes much beyond
architecture in dynamicity and
evolution
Limitations of the Analogy with Architecture in Civil Engineering
30Flavio Oquendo, Université Européenne de Bretagne, France
CIVIL ARCHITECTURE Buildings are basically static entities
Constructed with hard material
That when constructed are put to use (deployed once)
And then evolves very, very little in its lifetime
SOFTWARE ARCHITECTURE Software are basically dynamic entities
Constructed with soft material
That when constructed is put to use (deployed many times)
And then evolves very, very much in its lifetime
Software
Software
W
hat
is A
rchit
ect
ure
Architecture in Software Engineering
Software architecture can be defined as : The fundamental
conception of a system in its environment embodied in elements, their relationships to each other and to the environment, and principles guiding system design and evolution [IEEE Std 1471-2000, ISO/IEC 42010:2007/2009]
31Flavio Oquendo, Université Européenne de Bretagne, France
ArchitectureDescription
Architecture
described by
W
hat
is A
rchit
ect
ure
32Flavio Oquendo, Université Européenne de Bretagne, France
W
hat
is A
rchit
ect
ure
Software architecture is at the core of software
engineering
Architecture pervades from requirements to
code and supports evolution of software
Limitations of the Analogy: The Meaning of Architecture in Civil Engineering is Too Narrow
Architecture-Driven Software Engineering:Architecture in Design Activity
Architectural Design abstract architecture
33
Requirements Code
Design
Software Architecture
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
CodeRequirementsSoftware
Architecture
Architecture-Driven Software Engineering:Architecture in Development Activity
From Architectural Design to Detailed Design architectural refinements
34Flavio Oquendo, Université Européenne de Bretagne, France
Software Architecture
Software Architecture
Software Architecture
Software Architecture
Software Architecture
W
hat
is A
rchit
ect
ure
Architecture-Driven Software Engineering:Architecture in Design Activity
Detailed Design concrete architecture
35
Requirements Code
Design
Software Architecture
W
hat
is A
rchit
ect
ure
Flavio Oquendo, Université Européenne de Bretagne, France
Architecture-Driven Software Engineering:Architecture in Run-time Activity
Architecture at run-time Architecture description provides
concrete models for reasoning about and evolving software systems under execution
36
Requirements
Execution
Refinement/Abstraction
Software Architecture
W
hat
is A
rchit
ect
ure
Requirements Code
Refinement
Software Architecture
Flavio Oquendo, Université Européenne de Bretagne, France
Architecture-Driven Software Engineering:Architecting Everywhere
37
Requirements
Execution
Refinement/Abstraction
Architecture
W
hat
is A
rchit
ect
ure
Requirements Code
Refinement
Architecture
Flavio Oquendo, Université Européenne de Bretagne, France
DescribingArchitectures
AnalyzingArchitectures Refining
Architectures
DefiningArchitectural Styles
Reusing andGeneratingCode
AdaptingArchitectures
EvolvingArchitectures
38Flavio Oquendo, Université Européenne de Bretagne, France
W
hat
is A
rchit
ect
ure
Architecture-Based Civil EngineeringDriven Software
Software architecture must driven initial development and subsequent evolutions
– description, analysis and refinement are in the heart of architecture-driven
software engineering
39Flavio Oquendo, Université Européenne de Bretagne, France
ArchWare: The Approach and Deliverables
ArchitectingEvolvable
Software
ArchWare: Architecting Evolvable
Software
France, Italy, UK
Outline
41
Goal of the ArchWare Project ArchWare Languages and Tools Architecture-centric Software Engineering
with ArchWare Wrap Up
Goal of the ArchWare Project
42
The broad scope of ArchWare is to respond to the ever-present demand for software systems that are capable of accommodating change over their lifetime, and therefore are evolvable
In order to achieve this goal, ArchWare develops an integrated set of architecture-centric languages and tools for the model-driven engineering of evolvable software systems based on a persistent run-time framework
ArchWare Languages
43
Architecture AnalysisArchWare AAL
Architecture-centric EvolutionArchWare Hyper-ADL
Architecture Refinementand Code GenerationArchWare ARL
Architecture DescriptionArchWare ADL
Requirements
ArchWare Hyper-ADL (Hyper-coded ADL): Aims to support architecture-centric evolution through structural
reflection Structural reflection is defined as the ability of a running
specification to generate new specification fragments and to integrate these into its own execution
It supports introspection of existing specifications and mixing of existing and new specification fragments on the fly
ArchWare ADL: Aims to describe dynamic and evolvable architectures It is a formal language based on the higher-order typed p-calculus It reconciles structure and behaviour in a Turing-complete ADL
ArchWare ARL: Aims to support the stepwise refinement of an abstract
architecture into a (relatively correct) concrete architecture that is intended to implement it
Code is generated from concrete architectures It is a formal language (integrated with ArchWare ADL) based on
a rewriting logic Rewritings are enforced to be refinements if preconditions of
refinement actions are satisfied and proof obligations discarded
ArchWare AAL: Aims to specify architectural properties that can be verified
throughout the software process It is a formal language (integrated with ArchWare ADL) based on
the modal m-calculus and the predicate calculus It provides a property specification language It supports for automated verification of property satisfaction by
theorem proving and model checking
ArchWare Tools
44
Requirements
Architecture DescriptionUML-to-ADL ToolADL Compiler and VMADL Graphical Animator
Architecture AnalysisAAL Model CheckerAAL Model Prover
Runtime Architecture-centric EvolutionHyper-coded ADLFeedback (Probes-Gauges)
Architecture Refinementand Code GenerationARL Refinement EngineADL-to-Java Generator
Architecture-centric Software Engineering with ArchWare
45
refinement of
Application Engineer
Refine
Architecture
Abstract Architecture
of a Data Acquisition
System (DAS)
Architecture Description
Architecture Analysis
Architecture Analyst
CompliantApplication
generation from/reuse
Application Architect
Define Architecture
instance of
Architecture Style Description
ClientServer Style
Analysis of correctness properties
DAS Architecture
in the ClientServer
Style
DAS Architecture in the EJB
Style DAS Code with EJB
Concrete Architecture of the Data Acquisition
System coping with
J2EE
architecture DAS in style ClientServer isabstraction() { component sensor in style Client is … component dataManager in style Server is … connector link in style Link is ……}
analysis allConnected is property {to DAS.instances apply forall {cs | to (to cs.components.ports apply union (cs.connectors.ports)) apply forall {p | to p.unifications apply
size>0}}
46
Simulate the behaviour
and analyze the properties
Architecture-centric Software Engineering with ArchWare
Refine the architecture
and generate the code
Running software
Manage the execution
and evolution
?
Descriptions conformity
Abstract architecture description
Concrete architecture description
Executable code
decomposition
refinement 1
Preservation of properties
refinement 2
refinement 3
implementation
...
Componentsbases
Architectural stylesbases
...
Describe the software
architecturecompose Simple {C:Client ||L:Link ||S:Server
whereattach C@p@request to L@c@cReply,attach C@p@reply to L@c@cRequest,attach S@p@reply to L@s@sRequest,attach S@p@request to L@s@sReply
}
Description conformity
Abstract architecture description
Concrete architecture description
Executable code
decomposition refinement 1
Property preservation
refinement 2
refinement 3
implementation
...
Component& connectorabstractions
Architectural styles
...?
architecture CS is abstraction() { …
behaviour is compose {
replicate client is ClientDef()
and link is LinkDef()
and server is ServerDef()
} where { client::outgoing unifies link::incoming
and link::outgoing unifies server::incoming
}
}
47
Active Architectures in ArchWare ADL
Evolve
DecomposeCompose
clientserver
state
Dynamic Architectu
re
StaticArchitectu
re
StaticArchitectu
re
Dynamic Architectu
re
Other Approache
s
Component
Connector Approach
Other Approache
s
Component
Connector Approach
Formal Semi-Formal
Language/
Method
Positioning ADL w.r.t. Other Approaches
Wright,Padl,Darwin/FSP
ArchWare (not only dynamic but also evolvable)Dyn-Wright
Acme, Aesop
Darwin, Rapide,Dyn-Acme,Plastik+Acme/Armani
B, Z,VDM
UML/UP
48
Business Cases ofArchWare
49
Business cases at Thésame (France) aims to architecting, developing, and evolving integrated business process systems
Business cases at Engineering Informatica (Italy) aims to architecting, developing, and evolving federated knowledge management systems
CriticalSystems
LargeSystems
Achievements as Open Source Software
All ArchWare language definitions are open and free, a.k.a. p-ADL, p-AAL, and p-ARL
All tools are partially or fully available as Open Source Software as part of the ArchWare IDEArchWare OSS: Open Source Software
ArchWare was partially funded by the European CommissionContract No. 200132360 in the R&D Framework
Program 50
Key Research Questions that were addressed by ArchWare
51
What are the suitable features for: modelling dynamic architecturessupporting architecture-centric evolution at design
and run-time What are the suitable features for:
(active) model-driven engineeringapplication generation
What the trade-offs in supporting an architecture-centric formal approach: formal description, analysis, refinement
The Future
52
After ArchWare – Sustainable Development and Applications
Flavio Oquendo, Université Européenne de Bretagne, France
Applications of ArchWare in Practice
p-ADL and associated technologies have been applied in several realistic case studies and pilot projects China France Italy Switzerland UK ...
53Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
53
Applications of ArchWare in Practice
54Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
p-ADL and associated technologies have been applied in the following application domains: Business process management Service-oriented architectures Enterprise application integration Grid computing Distributed Control systems Sensor-actuator networks Distributed simulation Mobile agents Robotics Software systems targeting J2EE platforms
54
Applications of ArchWare in Practice:Knowledge Management Systems (Italy)
55Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Who: Engineering Informatica (Roma, Italy) Large Software House
What: Development of federated knowledge management systems
How: A new specific architecture style was developed with p-
ADL and p-AAL▪ Dynamic software architecture▪ J2EE as target platform
After refinement, the application is generated▪ A new architecture is defined and an application generated for
each new customer▪ The architecture evolves according to the federation of KMS
55
Applications of ArchWare in Practice:Business Process Management (France)
56Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Who: Thésame Inc. (Annecy, France) SME specialized in technology transfer
What: Development of an integrated business process system for supply-chain management
How: The software architecture was described with p-ADL and
analysed with p-AAL▪ Dynamic software architecture▪ Service-oriented architecture
After refinement, the application was generated▪ Orchestrations in the XML-based Agilium process language▪ Service interfaces in WSDL▪ Service implementations in Java
56
Applications of ArchWare in Practice:Service-Oriented Architecture (UK)
57Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Who: UWE (Bristol, UK) Bridging the gap between BPM and Grid-based SOA
What: Development of business processes in terms of service-oriented architectures on Grid platforms
How: Business processes are described in terms of RAD (Role-
Activity Diagrams) Then transformed in terms of dynamic architectures in p-
ADL and analysed with p-AAL Then transformed into Grid services
▪ Dynamic software architecture▪ Service-oriented architecture
57
Applications of ArchWare in Practice:Distributed Simulation Systems (China)
58Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Who: BIT (Beijing, China) Distributed Simulation Systems based on HLA
What: Development of distributed simulation systems HLA (High Level Architecture) [IEEE Standard 1516-2000] General purpose architecture for distributed computer simulation
systems Using HLA, computer simulations can communicate to other
computer simulations regardless of the computing platforms Communication between simulations is managed by a Run-Time
Infrastructure middleware How:
A specific architecture style was developed with p-ADL and p-AAL▪ Description of the HLA middleware (RTI)▪ Description of the HLA components (federates)
After refinement, the “glue code” is generated▪ The architecture evolves according to the federation of simulation components
58
Applications of ArchWare in Practice:Distributed Control Systems (Switzerland)
59Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Who: CERN (European Organization for Nuclear Research (Geneva, Switzerland) Control systems for particle accelerators
What: Development of distributed control systems to restart particle accelerators
How: A new specific architecture style was developed
▪ Architectural abstractions described with p-ADL
▪ Architectural properties expressed with p-AAL▪ Parameterized architecture – variation at deployment time
When the experiments plugged in the particle accelerators evolve, a new architecture is defined and an application generated▪ Most components are data sources providing the information
concerning the monitored equipments
59
Applications of ArchWare in Practice:Robotics (France)
60Flavio Oquendo, Université Européenne de Bretagne, France
CriticalSystems
LargeSystems
Control software for controlling a robot with a glove The glove: the 18-sensor CyberGlove The robot: a Lego Mindstorm
▪ It comprises an autonomous programmable microcomputer to control actuators like sound generator, lights, and motors, and read input from various sensors like light sensors, pressure sensors, rotation sensors, and temperature sensors
▪ It has an infrared transceiver for downloading software components and communicating with other robots
Control software for controlling autonomous robots Robot software based on Microsoft Robotics technology Service-oriented architecture for robotics
▪ Decentralized Software Services – a lightweight .NET-based run-time environment that sits on top of the Concurrency and Coordination Run-time
Supported by Visual Simulation Environments60
Wrap Up
Summarizing
61Flavio Oquendo, Université Européenne de Bretagne, France
Summarizing
The architecture-centric solution we have developed in ArchWare and its follow-up initiative shows a high potential impact It is based on a holistic approach where
architecture deserves first-class status ▪ The ADL deserves first-class status too!
▪ It is more than just a high-level design language, it is in fact a wide-spectrum computer language, i.e. one coherent language frame covering the whole lifecycle spectrum
It provides well-defined languages and supporting tools for experimenting in practice in pilot projects
It provides a laboratory for experimenting new ideas!
62Flavio Oquendo, Université Européenne de Bretagne, France
For more information on ArchWare
ArchLog Web Page:http://www-valoria.univ-ubs.fr/ARCHLOG/
ArchWare Web Page:http://www-valoria.univ-ubs.fr/ARCHLOG/ ArchWare-IST/documents.htm
My Web Page:http://www-valoria.univ-ubs.fr/flavio.oquendo/
63Flavio Oquendo, Université Européenne de Bretagne, France
Beyond ArchWare: Conclusion on Submission of European Projects
You’re worth it!Having a submission accepted is very hard
Few submissions are successful! Preparing a submission requires a big
effortHowever, it is payoff!
Having a proposal accepted paves the road for outstanding research that may have a large impact
EC funding ranges from ca. 1.5M€ to 15M€64Flavio Oquendo, Université Européenne de Bretagne, France
Thank You
65
Questions?
Flavio Oquendo, Université Européenne de Bretagne, France
Software Architecture: Past, Present, and Future of the
ArchWare European Project
Flavio Oquendo
Flavio.Oquendo@univ-ubs.fr
UnB - IV Seminário DPP de Pesquisa e InovaçãoBrasília, 6 de outubro 2010
Recommended