Resolving Platform Specific Models at runtime using an MDE-based Trading approach
-
Upload
applied-computing-group -
Category
Business
-
view
65 -
download
0
Transcript of Resolving Platform Specific Models at runtime using an MDE-based Trading approach
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models at runtime using an MDE-based Trading approach
Javier Criado, Luis Iribarne, Nicolás Padilla Applied Computing Group (TIC-211), University of Almería, Spain
4th International Workshop on Information Systems in Distributed Environment (ISDE’2013)
Graz, Austria, 13th September 2013
TIN2010-15588 Project
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Outline
• Context
• Our goal
• Resolving Platform Specific Models
• Defining the Trading Process
• Case study: Implementation and validation
• Conclusions and future work
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Context
Software System
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Context
Software System Adaptation
Adapted Software System
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Context
Software System Adaptation
Adapted Software System
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Context
Adaptation
Initial Component-based Software System
Adapted Component-based Software System
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Context
Adaptation
Initial Component-based
User Interface
Adapted Component-based
User Interface
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Adaptation System
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Our goal
Transformation
Header
Map
Header
Map Social
Histogram
Regeneration
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Web
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Web Mobile devices, Tables
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Web Mobile devices, Tables TV
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models (PSM models)
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
PIM
PSM
CIM
MDE
Tasks and concepts
Code Final GUI1
Model-driven methodology for GUI adaptation at runtime
Abstract Arch. Model1
Concrete Arch. Model1
Semantic Trader
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
PIM
PSM
CIM
MDE
Tasks and concepts
Code Final GUI1
Model-driven methodology for GUI adaptation at runtime
Abstract Arch. Model1
Model Transformation
Abstract Arch. Model2
Concrete Arch. Model1
Semantic Trader
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
PIM
PSM
CIM
MDE
Tasks and concepts
Code Final GUI1
Concrete Arch. Model2
Final GUI2
Model-driven methodology for GUI adaptation at runtime
Abstract Arch. Model1
Model Transformation
Abstract Arch. Model2
Concrete Arch. Model1
Semantic Trader
Semantic Trader
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
PIM
PSM
CIM
MDE
Tasks and concepts
Code Final GUI1
Concrete Arch. Model2
Final GUI2
Model-driven methodology for GUI adaptation at runtime
Abstract Arch. Model1
Model Transformation
Abstract Arch. Model2
Concrete Arch. Model1
Semantic Trader
Semantic Trader
Concrete Arch. Model3
Final GUI3
Model Transformation
Abstract Arch. Model3
Semantic Trader
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
PIM
PSM
Concrete Architectural Model
Abstract Architectural Model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Resolving Platform Specific Models
COTS definition
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Transformation
Rege
nera
tion
(Rea
lizat
ion)
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process
Trader
Exporter Importer service usage
export service request service
service description
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process
SemanticTrader
Exporter Importer concrete
components usage
export concrete components
abstract architectural
model concrete architectural
model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process
SemanticTrader
Exporter Importer concrete
components usage
export concrete components
abstract architectural
model concrete architectural
model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates
1 Selection of candidates
Abstract Architectural
Model
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
Defining the Trading Process 1. Selection of candidates
time
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates configurations
1 Selection of candidates
2 Calculation of configurations
Abstract Architectural
Model
time
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
CA
Defining the Trading Process 2. Calculation of configurations
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process 2. Calculation of configurations
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates configurations closed
configurations
1 Selection of candidates
2 Calculation of configurations
3 Closure of
configurations
Abstract Architectural
Model
time
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
CA
CB
Defining the Trading Process 3. Closure of configurations
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process 3. Closure of configurations
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates configurations closed
configurations compliant
configurations
1 Selection of candidates
2 Calculation of configurations
3 Closure of
configurations
4 Calculation of
compliant conf.
Abstract Architectural
Model
time
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
CA
CB
CC
Defining the Trading Process 4. Calculation of compliant configurations
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process 4. Calculation of compliant configurations
abstract definition
configuration 1
configuration 2
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates configurations closed
configurations compliant
configurations scored
configurations
1 Selection of candidates
2 Calculation of configurations
3 Closure of
configurations
4 Calculation of
compliant conf.
5 Application of
heuristics
Abstract Architectural
Model
time
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
CA
CB
CC
CD
Defining the Trading Process 5. Application of heuristics
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Defining the Trading Process 5. Application of heuristics
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
concrete
component specifications
candidates configurations closed
configurations compliant
configurations scored
configurations
1 Selection of candidates
2 Calculation of configurations
3 Closure of
configurations
4 Calculation of
compliant conf.
5 Application of
heuristics
6 Building the
concrete model
Abstract Architectural
Model
time
Structure stacks
Repo
sitor
ies
Su
bser
vice
s
Mod
els
CCR
CC
CA
CB
CC
CD
Concrete Architectural
Model
Defining the Trading Process 6. Building the concrete model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study: Implementation and Validation
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
Abstract
Architectural Model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
Semantic Trader service
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
Semantic Trader service
REQUEST Abstract Architectural Model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
Semantic Trader service
REQUEST Abstract Architectural Model
RESPONSE Concrete Architectural Model
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Case study
Semantic Trader service
REQUEST Abstract Architectural Model
RESPONSE Concrete Architectural Model
WSDL SOAP
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Conclusions and Future Work
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
• Methodology for adapting component-based software systems at runtime
• Architectural models in two levels: – Abstract (PIM perspertive) – Concrete (PSM perspective)
• Resolve PSM models from PIM definition at runtime • Using a trading process for realizing the concrete architectural
models (PSM) in six stages: – Selection of candidate components – Calculation of configurations – Closure of configurations – Calculation of compliant configurations – Application of heuristics – Building the concrete architectural model
Conclusions
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
• Generates the configuration of concrete components that best meets the abstract definition
• Provides the possibility of generating different configurations of sofware architectures based on the same abstract definition
• Uses information about the meaning given by the functional and non-functional properties of the components: Semantic Trader
Conclusions
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013
Future Work
• We assume that at least one valid configuration will be resolved
• Alternative resolution mechanism if there is not resolved a valid configuration
• Resolution of mismatches (e.g. incompatibilies of components)
• Implement searching algorithms (calculation of configurations) based on heuristics to perform tree pruning
4th International Workshop on Information Systems in Distributed Environment Graz, Austria, 13th September 2013 50
Contraportada