SlideShare a Scribd company logo
1 of 25
Download to read offline
Firma convenzione
Politecnico di Milano e Veneranda Fabbrica
del Duomo di Milano
Aula Magna – Rettorato
Mercoledì 27 maggio 2015
Intelligent Code Generation for Model
Driven Web Development
Emanuele Falzone – Carlo Bernaschina
MATWEP 2018 | ICWE 2018 Workshop
Cáceres, June 5, 2018
Department of Electronics, Information and Bioengineering
Model Driven Development
General purpose and domain specific modelling language
Department of Electronics, Information and Bioengineering
Model Transformations (M2M)
Example: Place Chart Nets are used to describe the semantics of IFML
Department of Electronics, Information and Bioengineering
Model Transformations (M2T)
Example: source code is generated from IFML model
Department of Electronics, Information and Bioengineering
Model Transformations
What if the target meta-model has higher expressive power than
the source metamodel?
Exploitation Ambiguity
Department of Electronics, Information and Bioengineering
Exploitation
The transformation exploits the expressive power of the target meta-model to express in
higher detail the concepts defined in the source model. Non generatable models are not
useful to the purpose
Department of Electronics, Information and Bioengineering
Ambiguity
More then one valid target model is a possible
output candidate for the M2T transformation.
The model does not contain the information
required to generate fine grained styling details.
Department of Electronics, Information and Bioengineering
Forward Engineering
It requires unknown details to be solved by enhancing both meta-model and
transformations to remove uncertainties
Department of Electronics, Information and Bioengineering
Alternative approach
Relax the assumptions of Forward Engineering:
• enabling the manual introduction of details (e.g. styling) in
the generated code
• simplifying the resolution of conflicts between the
generated code and manual changes
Department of Electronics, Information and Bioengineering
Alternative approach
Department of Electronics, Information and Bioengineering
VCS
The evolution of the project must be trackable using preexisting VCSs.
Department of Electronics, Information and Bioengineering
Notation
Code-base:
Ci denotes the version of the code-base edited by developer i.
CC identifies the central code-base shared among developers.
Revisions:
Rk
i,j denotes the jth revision of code-base Ci; it is the full textual
artifact stored in Ci at a particular point in time. K denotes the
type of the revision (M, G, R).
Department of Electronics, Information and Bioengineering
Workflow
Single developer working on the project.
Department of Electronics, Information and Bioengineering
Workflow
Two developers working on the same project.
Department of Electronics, Information and Bioengineering
The Virtual Developer
«The code generator can be treated as yet another developer,
who applies changes on an outdated repository.»
Department of Electronics, Information and Bioengineering
Workflow
Human developer and Virtual delevoper working on the same project.
Department of Electronics, Information and Bioengineering
Workflow
Human developer and Virtual delevoper working on the same project.
Department of Electronics, Information and Bioengineering
Separation of Concerns
expectation vs realty
Department of Electronics, Information and Bioengineering
Bootstrap
Department of Electronics, Information and Bioengineering
Project Structure
Split the code both locically and physically to improve software maintainabilty.
Department of Electronics, Information and Bioengineering
Coding Styles
White-spaces and new-lines, identifiers names, order invariant statements can lead to
really different appearance, which retain the same semantics.
Department of Electronics, Information and Bioengineering
Coding Styles
White-spaces and new-lines, identifiers names, order invariant statements can lead to
really different appearance, which retain the same semantics.
Department of Electronics, Information and Bioengineering
Conclusion
Approach for model and text co-evolution relaxes
the assumptions of Forward Engineering:
• enabling the manual introduction of details
(e.g. styling) in the generated code
• simplifying the resolution of conflicts between
the generated code and manual changes
https://play.google.com/store/apps/details?id=com.eu.funergy
Department of Electronics, Information and Bioengineering
Future work
Assessment of the proposed approach in the industry, with two
scenarios:
• companies that do not yet use MDD in their practices
• companies already applying in-house domain specific models
and code generation techniques
Department of Electronics, Information and Bioengineering
Q&A
Thank you for your attention
Questions?
Intelligent Code Generation for Model
Driven Web Development
Emanuele Falzone – Carlo Bernaschina
emanuele.falzone@mail.polimi.it | carlo.bernaschina@polimi.it

More Related Content

What's hot

Call for papers - 7th International Conference on Signal Processing (SP 2021)
Call for papers -  7th International Conference on Signal Processing (SP 2021)Call for papers -  7th International Conference on Signal Processing (SP 2021)
Call for papers - 7th International Conference on Signal Processing (SP 2021)sipij
 
Call for Papers - 8th International Conference on Signal, Image Processing an...
Call for Papers - 8th International Conference on Signal, Image Processing an...Call for Papers - 8th International Conference on Signal, Image Processing an...
Call for Papers - 8th International Conference on Signal, Image Processing an...VLSICS Design
 
What do Practitioners Expect from the Meta-modeling Tools? A Survey
What do Practitioners Expect from the Meta-modeling Tools? A SurveyWhat do Practitioners Expect from the Meta-modeling Tools? A Survey
What do Practitioners Expect from the Meta-modeling Tools? A SurveyObeo
 
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/IT
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/ITINPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/IT
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/ITASHOKKUMAR RAMAR
 
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICAL
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICALIPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICAL
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICALASHOKKUMAR RAMAR
 
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECH
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECHINDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECH
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECHASHOKKUMAR RAMAR
 
6th International Conference on Image Processing and Pattern Recognition (IPP...
6th International Conference on Image Processing and Pattern Recognition (IPP...6th International Conference on Image Processing and Pattern Recognition (IPP...
6th International Conference on Image Processing and Pattern Recognition (IPP...VLSICS Design
 
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEE
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEEINPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEE
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEEASHOKKUMAR RAMAR
 
T L Singal's Optical_Fiber_Communications_leaflet
T L Singal's Optical_Fiber_Communications_leafletT L Singal's Optical_Fiber_Communications_leaflet
T L Singal's Optical_Fiber_Communications_leafletT. L. Singal
 
Location Based System For Mobile Devices Using Rfid
Location Based System For Mobile Devices Using RfidLocation Based System For Mobile Devices Using Rfid
Location Based System For Mobile Devices Using Rfidvein
 
Communication Thesis With Matlab
Communication Thesis With MatlabCommunication Thesis With Matlab
Communication Thesis With MatlabPhdtopiccom
 
Briefing Leo Borj
Briefing Leo BorjBriefing Leo Borj
Briefing Leo BorjLeo Borj
 
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECH
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECHINPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECH
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECHASHOKKUMAR RAMAR
 

What's hot (19)

Call for papers - 7th International Conference on Signal Processing (SP 2021)
Call for papers -  7th International Conference on Signal Processing (SP 2021)Call for papers -  7th International Conference on Signal Processing (SP 2021)
Call for papers - 7th International Conference on Signal Processing (SP 2021)
 
Call for Papers - 8th International Conference on Signal, Image Processing an...
Call for Papers - 8th International Conference on Signal, Image Processing an...Call for Papers - 8th International Conference on Signal, Image Processing an...
Call for Papers - 8th International Conference on Signal, Image Processing an...
 
Shridhar_Resume_Embedded
Shridhar_Resume_EmbeddedShridhar_Resume_Embedded
Shridhar_Resume_Embedded
 
Penglun_Li
Penglun_LiPenglun_Li
Penglun_Li
 
Professional History
Professional HistoryProfessional History
Professional History
 
What do Practitioners Expect from the Meta-modeling Tools? A Survey
What do Practitioners Expect from the Meta-modeling Tools? A SurveyWhat do Practitioners Expect from the Meta-modeling Tools? A Survey
What do Practitioners Expect from the Meta-modeling Tools? A Survey
 
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/IT
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/ITINPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/IT
INPLANT TRAINING IN CHENNAI-EMBEDDED/ROBOTICS TRAINING-ECE/EEE/CSE/IT
 
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICAL
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICALIPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICAL
IPT-INPLANT TRAINING IN CHENNAI FOR ECE/EEE/E&I/CSE/IT-BIOMEDICAL
 
Computer science
Computer scienceComputer science
Computer science
 
Serp4 iot20.ppt
Serp4 iot20.pptSerp4 iot20.ppt
Serp4 iot20.ppt
 
STEFFI.J
STEFFI.JSTEFFI.J
STEFFI.J
 
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECH
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECHINDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECH
INDUSTRIAL INPLANT TRAINING IN EMBEDDED SYSTEMS-EEE/ECE/E&I/ICE/CSE/IT-MAASTECH
 
6th International Conference on Image Processing and Pattern Recognition (IPP...
6th International Conference on Image Processing and Pattern Recognition (IPP...6th International Conference on Image Processing and Pattern Recognition (IPP...
6th International Conference on Image Processing and Pattern Recognition (IPP...
 
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEE
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEEINPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEE
INPLANT TRAINING-INTERNSHIP PRACTICAL TRAINING ECE/CSE/IT/EEE
 
T L Singal's Optical_Fiber_Communications_leaflet
T L Singal's Optical_Fiber_Communications_leafletT L Singal's Optical_Fiber_Communications_leaflet
T L Singal's Optical_Fiber_Communications_leaflet
 
Location Based System For Mobile Devices Using Rfid
Location Based System For Mobile Devices Using RfidLocation Based System For Mobile Devices Using Rfid
Location Based System For Mobile Devices Using Rfid
 
Communication Thesis With Matlab
Communication Thesis With MatlabCommunication Thesis With Matlab
Communication Thesis With Matlab
 
Briefing Leo Borj
Briefing Leo BorjBriefing Leo Borj
Briefing Leo Borj
 
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECH
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECHINPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECH
INPLANT TRAINING INFORMATION TECHNOLOGY(IT/CSE/IT/CSE)MAASTECH
 

Similar to Intelligent Code Generation for Model Driven Web Development

EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments
 EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments
EMMM: A Unified Meta-Model for Tracking Machine Learning ExperimentsSEAA 2022
 
wp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enwp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enThomas Gessner
 
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Hironori Washizaki
 
ece internship - ece internships - ece interns
ece internship - ece internships - ece internsece internship - ece internships - ece interns
ece internship - ece internships - ece internsvenkatsample01
 
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET Journal
 
Architecture & data acquisition by embedded systems in automobiles seminar re...
Architecture & data acquisition by embedded systems in automobiles seminar re...Architecture & data acquisition by embedded systems in automobiles seminar re...
Architecture & data acquisition by embedded systems in automobiles seminar re...Ankit Kaul
 
Parallel universe-issue-29
Parallel universe-issue-29Parallel universe-issue-29
Parallel universe-issue-29DESMOND YUEN
 
Can body write an essay for me on dream job in Computer Engineerin.pdf
Can body write an essay for me on dream job in Computer Engineerin.pdfCan body write an essay for me on dream job in Computer Engineerin.pdf
Can body write an essay for me on dream job in Computer Engineerin.pdfmanjan6
 
Profes'19 Software Knowledge Representation
Profes'19 Software Knowledge RepresentationProfes'19 Software Knowledge Representation
Profes'19 Software Knowledge RepresentationDecoder Project
 
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...cathyrowden01
 
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRAN
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRANComputer-Aided Design of Raft Foundation using Excel VBA and FORTRAN
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRANIRJET Journal
 
The Concurrency Challenge : Notes
The Concurrency Challenge : NotesThe Concurrency Challenge : Notes
The Concurrency Challenge : NotesSubhajit Sahu
 
Computer Science and Communication Engineering - A Comprehensive Guide.pdf
Computer Science and Communication Engineering - A Comprehensive Guide.pdfComputer Science and Communication Engineering - A Comprehensive Guide.pdf
Computer Science and Communication Engineering - A Comprehensive Guide.pdfNitte University
 
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITS
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITSSOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITS
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITSvivatechijri
 
Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Economic Strategy Institute
 
The future of software engineering: Visions of 2025 and beyond
The future of software engineering: Visions of 2025 and beyond The future of software engineering: Visions of 2025 and beyond
The future of software engineering: Visions of 2025 and beyond IJECEIAES
 
IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateHironori Washizaki
 

Similar to Intelligent Code Generation for Model Driven Web Development (20)

Origin proposal for on campus training
Origin proposal for on campus training Origin proposal for on campus training
Origin proposal for on campus training
 
EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments
 EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments
EMMM: A Unified Meta-Model for Tracking Machine Learning Experiments
 
wp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enwp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-en
 
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
Patterns for New Software Engineering: Machine Learning and IoT Engineering P...
 
ece internship - ece internships - ece interns
ece internship - ece internships - ece internsece internship - ece internships - ece interns
ece internship - ece internships - ece interns
 
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
IRJET- Generation of HTML Code using Machine Learning Techniques from Mock-Up...
 
Architecture & data acquisition by embedded systems in automobiles seminar re...
Architecture & data acquisition by embedded systems in automobiles seminar re...Architecture & data acquisition by embedded systems in automobiles seminar re...
Architecture & data acquisition by embedded systems in automobiles seminar re...
 
Parallel universe-issue-29
Parallel universe-issue-29Parallel universe-issue-29
Parallel universe-issue-29
 
Can body write an essay for me on dream job in Computer Engineerin.pdf
Can body write an essay for me on dream job in Computer Engineerin.pdfCan body write an essay for me on dream job in Computer Engineerin.pdf
Can body write an essay for me on dream job in Computer Engineerin.pdf
 
Profes'19 Software Knowledge Representation
Profes'19 Software Knowledge RepresentationProfes'19 Software Knowledge Representation
Profes'19 Software Knowledge Representation
 
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...
Software Engineering Thesis Topics In Cambridge AI-Driven Software Productivi...
 
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRAN
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRANComputer-Aided Design of Raft Foundation using Excel VBA and FORTRAN
Computer-Aided Design of Raft Foundation using Excel VBA and FORTRAN
 
ResumeLinkedIn
ResumeLinkedInResumeLinkedIn
ResumeLinkedIn
 
Career guide for B tech (Computerscience)
Career guide for B tech (Computerscience)Career guide for B tech (Computerscience)
Career guide for B tech (Computerscience)
 
The Concurrency Challenge : Notes
The Concurrency Challenge : NotesThe Concurrency Challenge : Notes
The Concurrency Challenge : Notes
 
Computer Science and Communication Engineering - A Comprehensive Guide.pdf
Computer Science and Communication Engineering - A Comprehensive Guide.pdfComputer Science and Communication Engineering - A Comprehensive Guide.pdf
Computer Science and Communication Engineering - A Comprehensive Guide.pdf
 
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITS
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITSSOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITS
SOFTWARE BASED CALCULATION OF CAPACITY OUTAGE OF GENERATING UNITS
 
Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618Future of jobs and digital economy citi conference 090618
Future of jobs and digital economy citi conference 090618
 
The future of software engineering: Visions of 2025 and beyond
The future of software engineering: Visions of 2025 and beyond The future of software engineering: Visions of 2025 and beyond
The future of software engineering: Visions of 2025 and beyond
 
IEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions UpdateIEEE Computer Society 2024 Technology Predictions Update
IEEE Computer Society 2024 Technology Predictions Update
 

More from encompassH2020

Data intelligence for consumer awareness
Data intelligence for consumer awarenessData intelligence for consumer awareness
Data intelligence for consumer awarenessencompassH2020
 
Digitalizing the energy sector: the 'greening by design' paradigm
Digitalizing the energy sector: the 'greening by design' paradigmDigitalizing the energy sector: the 'greening by design' paradigm
Digitalizing the energy sector: the 'greening by design' paradigmencompassH2020
 
Sustainable Energy Consumption in Public Buildings: The Significance of Occu...
Sustainable Energy Consumption in Public Buildings:  The Significance of Occu...Sustainable Energy Consumption in Public Buildings:  The Significance of Occu...
Sustainable Energy Consumption in Public Buildings: The Significance of Occu...encompassH2020
 
Determinants of sustainable energy consumption in schools
Determinants of sustainable energy consumption in schoolsDeterminants of sustainable energy consumption in schools
Determinants of sustainable energy consumption in schoolsencompassH2020
 
Determinants of sustainable energy consumption in public buildings
Determinants of sustainable energy consumption in public buildingsDeterminants of sustainable energy consumption in public buildings
Determinants of sustainable energy consumption in public buildingsencompassH2020
 
Energy consumption patterns of residential users –A Study in Greece.
Energy consumption patterns of residential users –A Study in Greece.Energy consumption patterns of residential users –A Study in Greece.
Energy consumption patterns of residential users –A Study in Greece.encompassH2020
 
A dynamic convergence algorithm for thermal comfort modelling
A dynamic convergence algorithm for thermal comfort modellingA dynamic convergence algorithm for thermal comfort modelling
A dynamic convergence algorithm for thermal comfort modellingencompassH2020
 
Visualizing and gamifying consumption data for resource saving
Visualizing and gamifying consumption data for resource savingVisualizing and gamifying consumption data for resource saving
Visualizing and gamifying consumption data for resource savingencompassH2020
 
An optimisation-based energy disaggregation algorithm for low frequency smart...
An optimisation-based energy disaggregation algorithm for low frequency smart...An optimisation-based energy disaggregation algorithm for low frequency smart...
An optimisation-based energy disaggregation algorithm for low frequency smart...encompassH2020
 
enCOMPASS: Pitch at Sustainable Places Conference 2019
enCOMPASS: Pitch at Sustainable Places Conference 2019enCOMPASS: Pitch at Sustainable Places Conference 2019
enCOMPASS: Pitch at Sustainable Places Conference 2019encompassH2020
 
Designing an integrated socio-technical behaviour change system for energy sa...
Designing an integrated socio-technical behaviour change system for energy sa...Designing an integrated socio-technical behaviour change system for energy sa...
Designing an integrated socio-technical behaviour change system for energy sa...encompassH2020
 
enCOMPASS poster: Less Energy, smarter living!
enCOMPASS poster: Less Energy, smarter living!enCOMPASS poster: Less Energy, smarter living!
enCOMPASS poster: Less Energy, smarter living!encompassH2020
 
enCompass and SmartH20: presentation at EUSEW 2018
enCompass and SmartH20: presentation at EUSEW 2018enCompass and SmartH20: presentation at EUSEW 2018
enCompass and SmartH20: presentation at EUSEW 2018encompassH2020
 
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...encompassH2020
 
enCOMPASS Nutzerworkshops
enCOMPASS NutzerworkshopsenCOMPASS Nutzerworkshops
enCOMPASS NutzerworkshopsencompassH2020
 
enCOMPASS auf einen Blick
enCOMPASS auf einen BlickenCOMPASS auf einen Blick
enCOMPASS auf einen BlickencompassH2020
 
enCOMPASS at GIoT 2017
enCOMPASS at GIoT 2017enCOMPASS at GIoT 2017
enCOMPASS at GIoT 2017encompassH2020
 

More from encompassH2020 (20)

Data intelligence for consumer awareness
Data intelligence for consumer awarenessData intelligence for consumer awareness
Data intelligence for consumer awareness
 
Digitalizing the energy sector: the 'greening by design' paradigm
Digitalizing the energy sector: the 'greening by design' paradigmDigitalizing the energy sector: the 'greening by design' paradigm
Digitalizing the energy sector: the 'greening by design' paradigm
 
Sustainable Energy Consumption in Public Buildings: The Significance of Occu...
Sustainable Energy Consumption in Public Buildings:  The Significance of Occu...Sustainable Energy Consumption in Public Buildings:  The Significance of Occu...
Sustainable Energy Consumption in Public Buildings: The Significance of Occu...
 
Determinants of sustainable energy consumption in schools
Determinants of sustainable energy consumption in schoolsDeterminants of sustainable energy consumption in schools
Determinants of sustainable energy consumption in schools
 
Determinants of sustainable energy consumption in public buildings
Determinants of sustainable energy consumption in public buildingsDeterminants of sustainable energy consumption in public buildings
Determinants of sustainable energy consumption in public buildings
 
Energy consumption patterns of residential users –A Study in Greece.
Energy consumption patterns of residential users –A Study in Greece.Energy consumption patterns of residential users –A Study in Greece.
Energy consumption patterns of residential users –A Study in Greece.
 
A dynamic convergence algorithm for thermal comfort modelling
A dynamic convergence algorithm for thermal comfort modellingA dynamic convergence algorithm for thermal comfort modelling
A dynamic convergence algorithm for thermal comfort modelling
 
Visualizing and gamifying consumption data for resource saving
Visualizing and gamifying consumption data for resource savingVisualizing and gamifying consumption data for resource saving
Visualizing and gamifying consumption data for resource saving
 
An optimisation-based energy disaggregation algorithm for low frequency smart...
An optimisation-based energy disaggregation algorithm for low frequency smart...An optimisation-based energy disaggregation algorithm for low frequency smart...
An optimisation-based energy disaggregation algorithm for low frequency smart...
 
enCOMPASS: Pitch at Sustainable Places Conference 2019
enCOMPASS: Pitch at Sustainable Places Conference 2019enCOMPASS: Pitch at Sustainable Places Conference 2019
enCOMPASS: Pitch at Sustainable Places Conference 2019
 
Designing an integrated socio-technical behaviour change system for energy sa...
Designing an integrated socio-technical behaviour change system for energy sa...Designing an integrated socio-technical behaviour change system for energy sa...
Designing an integrated socio-technical behaviour change system for energy sa...
 
enCOMPASS poster: Less Energy, smarter living!
enCOMPASS poster: Less Energy, smarter living!enCOMPASS poster: Less Energy, smarter living!
enCOMPASS poster: Less Energy, smarter living!
 
enCompass and SmartH20: presentation at EUSEW 2018
enCompass and SmartH20: presentation at EUSEW 2018enCompass and SmartH20: presentation at EUSEW 2018
enCompass and SmartH20: presentation at EUSEW 2018
 
Internet of Energy
Internet of EnergyInternet of Energy
Internet of Energy
 
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...
Collaborative Recommendations and Adaptive Control for Personalized Energy Sa...
 
enCOMPASS Nutzerworkshops
enCOMPASS NutzerworkshopsenCOMPASS Nutzerworkshops
enCOMPASS Nutzerworkshops
 
enCOMPASS auf einen Blick
enCOMPASS auf einen BlickenCOMPASS auf einen Blick
enCOMPASS auf einen Blick
 
enCOMPASS at GIoT 2017
enCOMPASS at GIoT 2017enCOMPASS at GIoT 2017
enCOMPASS at GIoT 2017
 
enCOMPASS Fact Sheet
enCOMPASS Fact SheetenCOMPASS Fact Sheet
enCOMPASS Fact Sheet
 
DROP and FUNERGY
DROP and FUNERGYDROP and FUNERGY
DROP and FUNERGY
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 

Recently uploaded (20)

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 

Intelligent Code Generation for Model Driven Web Development

  • 1. Firma convenzione Politecnico di Milano e Veneranda Fabbrica del Duomo di Milano Aula Magna – Rettorato Mercoledì 27 maggio 2015 Intelligent Code Generation for Model Driven Web Development Emanuele Falzone – Carlo Bernaschina MATWEP 2018 | ICWE 2018 Workshop Cáceres, June 5, 2018
  • 2. Department of Electronics, Information and Bioengineering Model Driven Development General purpose and domain specific modelling language
  • 3. Department of Electronics, Information and Bioengineering Model Transformations (M2M) Example: Place Chart Nets are used to describe the semantics of IFML
  • 4. Department of Electronics, Information and Bioengineering Model Transformations (M2T) Example: source code is generated from IFML model
  • 5. Department of Electronics, Information and Bioengineering Model Transformations What if the target meta-model has higher expressive power than the source metamodel? Exploitation Ambiguity
  • 6. Department of Electronics, Information and Bioengineering Exploitation The transformation exploits the expressive power of the target meta-model to express in higher detail the concepts defined in the source model. Non generatable models are not useful to the purpose
  • 7. Department of Electronics, Information and Bioengineering Ambiguity More then one valid target model is a possible output candidate for the M2T transformation. The model does not contain the information required to generate fine grained styling details.
  • 8. Department of Electronics, Information and Bioengineering Forward Engineering It requires unknown details to be solved by enhancing both meta-model and transformations to remove uncertainties
  • 9. Department of Electronics, Information and Bioengineering Alternative approach Relax the assumptions of Forward Engineering: • enabling the manual introduction of details (e.g. styling) in the generated code • simplifying the resolution of conflicts between the generated code and manual changes
  • 10. Department of Electronics, Information and Bioengineering Alternative approach
  • 11. Department of Electronics, Information and Bioengineering VCS The evolution of the project must be trackable using preexisting VCSs.
  • 12. Department of Electronics, Information and Bioengineering Notation Code-base: Ci denotes the version of the code-base edited by developer i. CC identifies the central code-base shared among developers. Revisions: Rk i,j denotes the jth revision of code-base Ci; it is the full textual artifact stored in Ci at a particular point in time. K denotes the type of the revision (M, G, R).
  • 13. Department of Electronics, Information and Bioengineering Workflow Single developer working on the project.
  • 14. Department of Electronics, Information and Bioengineering Workflow Two developers working on the same project.
  • 15. Department of Electronics, Information and Bioengineering The Virtual Developer «The code generator can be treated as yet another developer, who applies changes on an outdated repository.»
  • 16. Department of Electronics, Information and Bioengineering Workflow Human developer and Virtual delevoper working on the same project.
  • 17. Department of Electronics, Information and Bioengineering Workflow Human developer and Virtual delevoper working on the same project.
  • 18. Department of Electronics, Information and Bioengineering Separation of Concerns expectation vs realty
  • 19. Department of Electronics, Information and Bioengineering Bootstrap
  • 20. Department of Electronics, Information and Bioengineering Project Structure Split the code both locically and physically to improve software maintainabilty.
  • 21. Department of Electronics, Information and Bioengineering Coding Styles White-spaces and new-lines, identifiers names, order invariant statements can lead to really different appearance, which retain the same semantics.
  • 22. Department of Electronics, Information and Bioengineering Coding Styles White-spaces and new-lines, identifiers names, order invariant statements can lead to really different appearance, which retain the same semantics.
  • 23. Department of Electronics, Information and Bioengineering Conclusion Approach for model and text co-evolution relaxes the assumptions of Forward Engineering: • enabling the manual introduction of details (e.g. styling) in the generated code • simplifying the resolution of conflicts between the generated code and manual changes https://play.google.com/store/apps/details?id=com.eu.funergy
  • 24. Department of Electronics, Information and Bioengineering Future work Assessment of the proposed approach in the industry, with two scenarios: • companies that do not yet use MDD in their practices • companies already applying in-house domain specific models and code generation techniques
  • 25. Department of Electronics, Information and Bioengineering Q&A Thank you for your attention Questions? Intelligent Code Generation for Model Driven Web Development Emanuele Falzone – Carlo Bernaschina emanuele.falzone@mail.polimi.it | carlo.bernaschina@polimi.it