2 Variability-Aware design of Database Technology

Download Report

Transcript 2 Variability-Aware design of Database Technology

Laboratoire d’Informatique et d’Automatique pour les Systèmes
A Roadmap To Variability-Aware
Design of Database Technology
Phd Student
Selma BOUARAR
[email protected]
Advisors
Ladjel BELLATRECHE
[email protected]
Stéphane JEAN
[email protected]
PLAN
Context:
Software reuse
Database design
Objective
Database as a Software Product Line
Contributions
A SPL-based framework for designing DB
Evaluation of the proposal
Future work
Variability-Aware design of Database Technology
2
Context: Software engineering
and reuse strategies
 Context
 Objective
 Contributions
 Future work
Most organizations produce families of similar systems,
differentiated by features.
A strategic reuse makes sense.
Reuse History
SPL
Focus on Mass customization and domain knowledge
Domain-driven approaches: Generative programming,
Software Factories and Software Product Lines (SPL)
Variability-Aware design of Database Technology
3
Context: Software engineering
and reuse strategies
 Context
 Objective
 Contributions
 Future work
“SPLE is a paradigm to develop software applications
using a set of common assets and mass customization”
[Pohl et al. 05]
From Ad hoc to Systematic reuse
Widespread Use of Software Product Lines
Variability-Aware design of Database Technology
4
 Context
Context: Software engineering
vs Database systems
 Objective
 Contributions
 Future work
 The data flowing through all the organizations is managed by
database systems
E.g. Static Data, scientific, agregated, etc.
Storage/Management
Requirements
Design
Conceptual
Design
Analysis
Logical
Design
DM
Evaluation
Physical
Design
…
Statistic DB
Scientific DB
Testing
DW
Deployment
Centralized
Flash
Cloud
Design
Impleme
-ntation
Development cycle
(Software)
Tuning
Variability-Aware design of Database Technology
5
 Context
Motivation and objectives
 Objective
 Contributions
 Future work
 Variety of choices
SPL to manage variability all along the cycle
Enjoy benefits: Reduced time to market/cost, Quality, maintanability, etc.
 From an ad hoc DB design to a systematic one
 Deal with database design as a whole
BD
Requirements
Sources
 Assist DB users during design process
Conceptual Design
E/A, UML, Semantic, etc.
Relational, Object, Multidimensional, etc.
Logical Design
Physical Design
Vertical, horizontal, binary, etc.
DB
Variability-Aware design of Database Technology
6
 Context
 Objective
Issues and Contributions
 Contributions
 Future work
Question 1: How to adapt SPL for Database design
BD
Sources
Requirements
Answer: Identification of the artefacts
Issue: An evolving lifeCycle
A generic framework
Conceptual Design
Formal definition of
database lifecycle
Logical Design
Dependencies between variants
Physical Design
Contribution 1 : A SPL-based framework for designing
highly customizable database products
Variability-Aware design of Database Technology
BD
7
Issues and Contributions:
1-A SPL-based framework for designing DB
 Context
 Objective
 Contributions
 Future work
 Identification of the artefacts making up a SPL
pertain to
AnyMarket
organisating
Strategy
having
/
data
Application
to store/manage
Domain
is satisfied by
share an
Products
Precedence of phases
Architecture
+
Constraints
used to structure
are built from
Concrete instance of a DB
ready-to-be-implemented
Variability of the design
Components
life cycle
Variability-Aware design of Database Technology
8
Issues and Contributions:
1-A SPL-based framework for designing DB
 Context
 Objective
 Contributions
 Future work
 An in-depth study of the life cycle
 Generic Formal definition
 Moving from formal definition to feature models
 Variability across DB design life-cycle
Variability-Aware design of Database Technology
9
Issues and Contributions:
1-A SPL-based framework for designing DB
 Context
 Objective
 Contributions
 Future work
 Constraints, dependencies
 Reason on feature models
 Decrease possible configurations number
 When to bind to a variant (Compilation,
Runtime, etc.)
 Specification of dependencies between variants
-
DeploymentArchitecture requires semantic
Logical design requires a conceptual design
Variability-Aware design of Database Technology
10
Issues and Contributions:
1- A SPL-based framework for designing DB
 Context
 Objective
 Contributions
 Future work
 Implement features
 A set of Java classes
 Configuration
 Binding variation points to variants
 Feature-oriented programming with Jak files
 Eclipse Plugin
 FeatureIDE [1,2 ]
 Maintenance
 Populate variant features
 Prune old variants
 Adapt to new requirements
Variability-Aware design of Database Technology
11
 Context
Issues and Contributions
 Objective
 Contributions
 Future work
Question 2: How to assist DB designer, during the
configuration process, against the panoply of choices?
Answer: Evaluate variants and compare
A specific type of testing
Issue: Large number of variants
Contribution 2: Evaluation of the proposal: Use case on
testing DB design
Variability-Aware design of Database Technology
12
Issues and Contributions:
 Context
 Objective
2- Use case on testing databases
ER
 Contributions
 Future work
Relational
MV
NF1
NF2
Index
Horizontal
Vertical
HDD
Parallel
Centralized
 Testing concern only leaf features
Performance
0,N
0,1
Design
Configuration
Feature
Functionality
Process
Usability
Variability-Aware design of Database Technology
13
Issues and Contributions:
2- Use case on testing databases
 Logical Design:




 Context
 Objective
 Contributions
 Future work
Embedded Variants
First Level: Tied to DBMS choice.
Variation point: Relational
Variants: NF1, NF2, …, BCNF
 Input: CMi = ᵠ(CM, Fi)
 Output: LM1, LM2, …, LMn / Variability implementation
 Test:
 Performance, Functional, Usability, etc.
 Result: Choose the most suitable LMi
Variability-Aware design of Database Technology
User+ hint
Correlation+
Workload
14
Issues and Contributions:
2- Use case on testing databases
 Context
 Objective
 Contributions
 Future work
RDB
..
XML
ETL
Conceptual
Phase
Logical
Phase
Physical
Phase
Tuning
Phase
ODB
Variability-Aware design of Database Technology
15
Issues and Contributions:
 Context
 Objective
2- Use case on testing databases
 Contributions
 Future work
Correlation+
Workload+ Statistics
Workload+
Statistics+ Hints
Hints +
Constraints
Deployment Layout [Jean et al., 13]
Optimization structures:
 [Boukorça et al., 13]
 Choice of the algorithm
Variability-Aware design of Database Technology
16
 Context
Issues and Contributions
 Objective
 Contributions
 Future work
Question 3: From Ad hoc to systematic design, how can
this help in the predictability of DB schema evolution
Future work
Contribution 3 : Application of SPL-based database design
on Schema evolution
Variability-Aware design of Database Technology
17
 Context
Publications
 Objective
 Contributions
 Publications
 Conférences Internationales
•
Selma BOUARAR, Ladjel BELLATRECHE, Stephane JEAN, Mickael BARON, Do
Rule-based Approaches Still Make Sense in Logical Data Warehouse
Design?, Proceedings of the 18th East-European Conference on Advances in
Databases and Information Systems (ADBIS’ 2014)
•
Selma KHOURI, Ladjel BELLATRECHE, Ilyes BOUKHARI, Selma BOUARAR,
More Investment in Conceptual Designers: Think about it!, 15th IEEE
International Conference on Computational Science and Engineering (CSE’2012)
• Conférences Nationales
•
Selma BOUARAR, Ladjel BELLATRECHE, Stéphane JEAN, Mickael BARON,
Leveraging Ontology-based Methodologies for Designing Semantic
Data Warehouses, 29 èmes journées Bases de Données Avancées(BDA’2013)
 En cours, Revue internationale
 Selma BOUARAR, Ladjel BELLATRECHE, Stéphane JEAN, A Roadmap To
Variability-Aware Design of Database Technology, Software and System
Modeling (SOSYM). 30/11/2014
Variability-Aware design of Database Technology
18
References
[Jean et al., 13]: S. Jean, L. Bellatreche, O. Carlos, G. Fokou, and M.
Baron. Ontodbench: Interactively benchmarking ontology storage in a
database (demo paper). 32nd International Conference on Conceptual
Modeling, nov 2013.
[Boukorça et al., 13]: Ahcene BOUKORCA, Ladjel BELLATRECHE, SidAhmed Benali Senouci, Zoe FAGET, SONIC: Scalable multi-query
OptimizatioN through Integrated Circuit, (DEXA), 2013
[Pohl et al. 05]: Pohl, K., Böckle, G., and van der Linden, F. Software
Product Line Engineering - Foundations, Principles, and Techniques.
Springer. (2005)
Variability-Aware Testing in Database Technology
19
Des questions... ?