The goal of this presentation is to help novice metadevelopers with development of domain specific languages (DSLs). To this end, a number of paradigms, techniques and guidelines are introduced.
This presentation was given during DSML Design Workshop at the PPL2010 conference that took place on November 17 & 18 at Océ R&D, Venlo, NL.
The goal of this presentation is to help novice metadevelopers with development of domain specific languages (DSLs). To this end, a number of paradigms, techniques and guidelines are introduced.
This presentation was given during DSML Design Workshop at the PPL2010 conference that took place on November 17 & 18 at Océ R&D, Venlo, NL.
Web based tool for domain specific modeling PG Scholar
Embed r emoting,
Fully source code generation.
Every body can find appropriate DSML anytime on the cloud,
It requires less effort fewer low-level details to specify a given system.
DSM is a higher level of CASE process, a way to model data structures and logic in domain concepts independent from programming languages and thus also include syntax details. The final source code in a desired programming language is derived automatically from these high concept models by using exact language generators.The whole process of Meta-modeling in the MetaEdit+ tool rotates around the Meta types represented together as GOPPRR
The user synchronization is normally made via sync_all_dns script that synchronize users information from LDAP to the EMPINST.EMPLOYEE table. If you synchronize a field such as “telephone number” when a user edits the value in IBM Connections at next run of sync_all_dns script the change is lost. To avoid this problem you must setup the synchronization from EMPLOYEE table to LDAP by using the script process_draft_updates.sh
In modern model-based development collaboration comes in two levels. First, developers want to create, edit and check the same shared specifications and avoid handling conflicts, run diff and merge activities etc. all taking time from the actual development work. Second, also language developers defining modeling languages, generators, notations, checks etc. want to collaborate similarly too. Slides describe how to work collaboratively in MetaEdit+ tool with models and metamodelsand as well as describe the benefits it provides.
These slides illustrate 20 different examples on using Domain-Specific Modeling: Models are expressed using directly the concepts of the problem domain and generate the code for a given target/programming language.
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...Obeo
>> These slides were presented (in french) at SiriusCon Paris 2016, on November 15th, by Ludovic LOUIS-SIDNEY 'EDF) and Ludovic CHAMPEAU (EDF)
EDF nuclear Engineering is involved in a PLM approach partly based on the implementation of a data centric process.
This approach requires to control an important volume of technical data during the whole lifecycle of the nuclear power plant.
Usage of a collaborative modeling platform, aiming at processes and technical data elucidation, is a performance lever for Business analyst and Developers (improve functional specifications consistency, facilitate information system configuration).
Have you already tried to work on the same model with your team members? Then, you probably faces the problem of accessing a coveted resource! And you rapidly came to the conclusion that one single file for a model is not scalable on active teams.
In this talk we will explain the two main solutions that you can adopt to collaborate on a model with Sirius: splitting your model into several resources or store your model into a shared repository.
Slides from the talk of the same name presented at SiriusCon 2015 (http://www.siriuscon.org/).
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...Jean Vanderdonckt
Model-based user interface (UI) development environments are aimed at generating one or many UIs from one or many models. Model-driven engineering (MDE) of UIs is assumed to be superior to those environments since they make the UI design knowledge visible, explicit, and external, for instance as model-to-model transformations and model-to-code compilation rules. These transformations and rules are often considered inflexible, complex to express, and hard to develop by UI designers and developers who are not necessarily experts in MDE. In order to overcome these shortcomings, this paper introduces "Transformation Templates", an approach that is adding flexibility to the MDE of UIs by externalizing the transformation logic of UI models, and making it editable, customizable, and reusable. It is also intended to make it easier for UI designers to specify the transformations. A Transformation Template specifies a series of parameters that enable designers to parameterize the model transformation process at the concept level that is of a higher level of abstraction than at the level of physical properties of UI widgets. This paper presents an editor for Transformation Templates and an example of Parameter Type. Transformation Templates can be effectively and efficiently used in any circumstances where the transformation knowledge needs to be modified by non-experts, such as in domain specific languages where flexibility is required.
Software development effort reduction with Co-oplbergmans
This talks explains the motivations for the Co-op technology: what are the challenges it addresses, in particular focusing on reducing accidental complexity, where it comes from, and a general vision on how to resolve it. Then we continue to show practical application of Co-op, including experience figures from large-scale application of a previous generation of this technology. Show a little bit about its realization, and conclude with an evaluation of the technology.
Web based tool for domain specific modeling PG Scholar
Embed r emoting,
Fully source code generation.
Every body can find appropriate DSML anytime on the cloud,
It requires less effort fewer low-level details to specify a given system.
DSM is a higher level of CASE process, a way to model data structures and logic in domain concepts independent from programming languages and thus also include syntax details. The final source code in a desired programming language is derived automatically from these high concept models by using exact language generators.The whole process of Meta-modeling in the MetaEdit+ tool rotates around the Meta types represented together as GOPPRR
The user synchronization is normally made via sync_all_dns script that synchronize users information from LDAP to the EMPINST.EMPLOYEE table. If you synchronize a field such as “telephone number” when a user edits the value in IBM Connections at next run of sync_all_dns script the change is lost. To avoid this problem you must setup the synchronization from EMPLOYEE table to LDAP by using the script process_draft_updates.sh
In modern model-based development collaboration comes in two levels. First, developers want to create, edit and check the same shared specifications and avoid handling conflicts, run diff and merge activities etc. all taking time from the actual development work. Second, also language developers defining modeling languages, generators, notations, checks etc. want to collaborate similarly too. Slides describe how to work collaboratively in MetaEdit+ tool with models and metamodelsand as well as describe the benefits it provides.
These slides illustrate 20 different examples on using Domain-Specific Modeling: Models are expressed using directly the concepts of the problem domain and generate the code for a given target/programming language.
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...Obeo
>> These slides were presented (in french) at SiriusCon Paris 2016, on November 15th, by Ludovic LOUIS-SIDNEY 'EDF) and Ludovic CHAMPEAU (EDF)
EDF nuclear Engineering is involved in a PLM approach partly based on the implementation of a data centric process.
This approach requires to control an important volume of technical data during the whole lifecycle of the nuclear power plant.
Usage of a collaborative modeling platform, aiming at processes and technical data elucidation, is a performance lever for Business analyst and Developers (improve functional specifications consistency, facilitate information system configuration).
Have you already tried to work on the same model with your team members? Then, you probably faces the problem of accessing a coveted resource! And you rapidly came to the conclusion that one single file for a model is not scalable on active teams.
In this talk we will explain the two main solutions that you can adopt to collaborate on a model with Sirius: splitting your model into several resources or store your model into a shared repository.
Slides from the talk of the same name presented at SiriusCon 2015 (http://www.siriuscon.org/).
Transformation Templates: Adding Flexibilityto Model-Driven Engineering of Us...Jean Vanderdonckt
Model-based user interface (UI) development environments are aimed at generating one or many UIs from one or many models. Model-driven engineering (MDE) of UIs is assumed to be superior to those environments since they make the UI design knowledge visible, explicit, and external, for instance as model-to-model transformations and model-to-code compilation rules. These transformations and rules are often considered inflexible, complex to express, and hard to develop by UI designers and developers who are not necessarily experts in MDE. In order to overcome these shortcomings, this paper introduces "Transformation Templates", an approach that is adding flexibility to the MDE of UIs by externalizing the transformation logic of UI models, and making it editable, customizable, and reusable. It is also intended to make it easier for UI designers to specify the transformations. A Transformation Template specifies a series of parameters that enable designers to parameterize the model transformation process at the concept level that is of a higher level of abstraction than at the level of physical properties of UI widgets. This paper presents an editor for Transformation Templates and an example of Parameter Type. Transformation Templates can be effectively and efficiently used in any circumstances where the transformation knowledge needs to be modified by non-experts, such as in domain specific languages where flexibility is required.
Software development effort reduction with Co-oplbergmans
This talks explains the motivations for the Co-op technology: what are the challenges it addresses, in particular focusing on reducing accidental complexity, where it comes from, and a general vision on how to resolve it. Then we continue to show practical application of Co-op, including experience figures from large-scale application of a previous generation of this technology. Show a little bit about its realization, and conclude with an evaluation of the technology.
Keynote at COMMitMDE'18 showing the basic concepts behind Hawk, our past case studies, and some of our experience in designing the Hawk Thrift APIs for remote model querying.
Advanced Software Engineering course - Guest Lecture
Weaving Models
This presentation has been developed in the context of the Advanced Software Engineering course at the DISIM Department of the University of L’Aquila (Italy).
http://www.di.univaq.it/malavolta
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Collaborative editing of emf ecore meta models and models conflict detection, reconciliation, and merging in di-comef
1. Collaborative Editing of EMF/Ecore Meta-models
and Models: Conflict
Detection, Reconciliation, and Merging in DiCoMEF
Amanuel Koshima , Vincent Englebert
MODELSWARD 2014 : 2nd International Conference on
Model-Driven Engineering and Software Development
07 January 2014, Lisbon, Portugal
07 January, 2014, Lisbon , Portugal
4. Introduction
Model Driven Engineering
mitigates complexities of software
development by
raising the level of
abstraction from code to
model
DSML: describes solutions using
Metametamodel
http://www.ibm.com/de
veloperworks/library/
« UML Class » Metamodel
« DSL GUI »
Metamodel
domain concepts
better support of variability
reduce the cost of conception
& development: up to 10
[Kelly et. al]
Transformation
www.unamur.be
7. Introduction
Ecore meta-model element mapping:
Classes:
Associations:
EClass EC
EDataType ED
EReference ER
EAttribute EA
EObject EOB
…
Inheritance relationship is modeled :
– using set inclusion constraints or
e.g.
– equality if the super-type is an abstract class
e.g.
www.unamur.be
8. Introduction
• A model M compliant with a meta-model MM
• A class is modeled as a set of instance Eobjects
• An attribute associates an EObject with a data value (s)
• A reference associates two EObjects
• A mapping function that maps an EObject to its Eclass
• The owner of a structural feature: owner(sf)
• Containment relationship:
www.unamur.be
13. Collaborative Modeling
Collaborative Modeling
– a software system is required to facilitate collaboration (i.e.
communication , reconciliation) among software engineers
((meta)modelers)
Requirements for Collaboration Modeling
1. Engineers need to share meta-models and models
2. Concurrently edited (meta)models need to be integrated
3. Communication among members need to be managed
4. Inconsistency (merge conflicts) needs to be identified
and resolved
www.unamur.be
14. Collaborative Modeling
Source code management systems
makes possible to share efficiently code
source files in such teams (cvs, svn, git,
…), but not suitable for models which
have a graph nature
•creates a new Class named Node
•Moves transition from a State to
Node
•deletes a State Class
•rename transition to edge
•rename Transition to Edge
www.unamur.be
rename State,
transition, and
Transition
15. State of the art
Centralized approach
there is one central repository
mode of collaboration: pessimistic VS optimistic [3,4]
pessimistic approach: uses locks
optimistic approach: copy-modify-merge
Limitations :
locking technique is not scalable
it restricts user to be dependent on one repository
it introduces administrative access rights (cumbersome and
creates dissatisfaction)
modification management role is not flexible
Advantage:
handles conflicts better as compared to distributed approach
Example: EMFStore, MetaEdit+
www.unamur.be
16. State of the art
Distributed approach:
each member has his/her local copy
managing change propagation
• with change management
• without change management
Advantage :
gives members a better control over data
solves a problem of being dependent on one repository
modification management role is flexible
Limitations
keeping all local copies consistent is challenging
• Example: Git, D-Praxis
www.unamur.be
17. State of the art
Most of state-of-the-art tools used a line based approach to compare
models and detect conflicts, but models have graph-based nature
(Mens , 2002) (Altmanninger et al., 2009).CVS, SVN, Git
EMFStore is a collaborative model editing framework based on copymodify-edit premise (Koegel et al., 2010)
A theoretical reconciliation framework for DSML proposed by
(Englebert et al., 2009), without giving a solution
D-Praxis - a peer-to-peer based collaborative model editing framework
(Mougenot et al., 2009) (uses delete semantics and Lamport time
as a means for reconciliation)
www.unamur.be
18. DiCoMEF
DiCoMEF concepts
Hypothesis:
A controller is a senior staff
A controller has given a
mandate to accept or reject
modification requests
every (meta)model element
has a unique id, UUID
www.unamur.be
controller: write/read master (meta)model
editor: writes/reads copy (meta)model
observer: reads copy (meta)model
21. DiCoMEF
• An operation based distributed model editing framework
• An editor communicates his/her modification as a change
request
• A controller supervises modifications of (meta)models
Meta-model Controller meta-model adaptation
Model Controller model adaptation
• Propagated changes are always applied first in case of
conflicts
• Editor can send his/her conflicting local changes as
change request later
www.unamur.be
29. Conclusion
To fully benefit from DSM tools:
It is important to ensure collaboration among DSM tools.
Strength of DiCoMEF:
–
–
–
–
–
It manages collaboration of models and meta-models
It lets each member to work in isolation
Modifications are managed by human supervisor
Modification management role is flexible
It can be used extend to handle a community of modelers
Drawbacks:
– Using a central controller could be a bottleneck
www.unamur.be
30. Future work
The proposed framework will be validated
More advanced collaborative workflows should also be
investigated and defined on top of DiCoMEF.
www.unamur.be
31. Thank You !
University of Namur
PReCISE Research Center
amanuel.koshima@unamur.be
sites.google.com/site/dicomef
www.unamur.be