Engaging Tech Students Past Traditional Hands OnFiras Obeid
Techniques I used in my classes to engage working professionals with real life hands on applications to showcase what they learned in direct deployments and create interactive lectures for them to push further and explore out of the box trends.
Case Study: Increasing Produban's Critical Systems Availability and PerformanceCA Technologies
The Santander Group is a Spanish banking group and the largest bank in the Eurozone by market value. It is also one of the largest banks in the world in terms of market capitalization. Produban is Santander’s group company responsible for Santander's entire IT infrastructure. The Produban challenge was to monitor - proactively and in real time - all transactions running in critical systems and being able to take action before major problems happen. Considering this scenario, Produban adopted CA Core APM (CA Introscope) in order to count with alerts that permit to the technical team to detect problems before they impact business.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
Engaging Tech Students Past Traditional Hands OnFiras Obeid
Techniques I used in my classes to engage working professionals with real life hands on applications to showcase what they learned in direct deployments and create interactive lectures for them to push further and explore out of the box trends.
Case Study: Increasing Produban's Critical Systems Availability and PerformanceCA Technologies
The Santander Group is a Spanish banking group and the largest bank in the Eurozone by market value. It is also one of the largest banks in the world in terms of market capitalization. Produban is Santander’s group company responsible for Santander's entire IT infrastructure. The Produban challenge was to monitor - proactively and in real time - all transactions running in critical systems and being able to take action before major problems happen. Considering this scenario, Produban adopted CA Core APM (CA Introscope) in order to count with alerts that permit to the technical team to detect problems before they impact business.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
Simpda 2014 - A living story: measuring quality of developments in a large in...SpagoWorld
The presentation supported the speech by Gabriele Ruffatti (founder of the SpagoWorld initiative) at SIMPDA 2014 (Milan, Italy - November 19-21, 2015). The presentation focuses on the innovative approach named Productivity Intelligence supported by Spago4Q - the open source analytic of SpagoBI suite for Quality and Performance Improvement- that allows companies and organizations to effectively monitor performances, improve quality practices and achieve higher capability levels. www.spagoworld.org
Varied encounters with data science (slide share)gilbert.peffer
How does data science relate to traditional scientific and computational approaches? What can we learn about data science pitfalls from these approaches? Is there a role for the social sciences and humanities?
Slides of the project definition workshop at disummit June 26, 2019 .
We're all caught in the AI hype - and I daily meet AI enthousiasts who focus heavily on technology, cool algorithms on a modern infrastructure. And business leaders who dream AI will solve our problems automagically. While dreaming and innovating is cool, modern and exciting, such focus typically increases business impact only marginally. The best way to increase impact, is having the project definition right. In this workshop, you'll walk away with a "Project definition checklist " - an exhausitive list of issues you want to understand before you start building your algorithms. Throughout the years this has proved to be a useful asset for junior data scientists, (aspiring) data science managers and (project) management.
ATMOSPHERE was invited to be a speaker at Think Milano event, on 6th June from 14.30 to 17.30, to join a panel discussion called “L’infrastruttura cloud ready protagonista del future” on how cloud infrastructures are important for different market sectors.
DIH Emilia-Romagna supports companies (and related supply chains) to assess and exploit their digital potential through digital maturity analyses and definition of action plans for management of innovation and digital transformation, including provision of technological partners, funding and training opportunities, technological macro-trends and connection with Enterprise Europe Network and other relevant European stakeholders (e.g. Digital Innovation Hubs, Competence Centers, Laboratories and Research Centers).
Industrial Case: Motion Solution Industry
SME company, founded in 1957, active in motion solutions industry
The company would exploit their digital potential (also including the entire value chain) in order to increase the value added provided to customers and to become more efficient and flexible. Thus, the company needs a managerial support from DIH-ER.
Through the Digital Maturity Assessment, DIH-ER created a digital transformation roadmap comprising 8 priorities (mainly connected to vertical and horizontal integration, evolution of offerings from products to ecosystems), provision of technological partners, funding opportunities, training opportunities, technological macro-trends and connection with Enterprise Europe Network and other relevant European stakeholders.
In addition, the company benefited of coaching and mentoring support provided through direct connection with outer managers (under temporary management approach).
Decision Making Framework in e-Business Cloud Environment Using Software Metr...ijitjournal
Cloud computing technology is most important one in IT industry by enabling them to offer access to their
system and application services on payment type. As a result, more than a few enterprises with Facebook,
Microsoft, Google, and amazon have started offer to their clients. Quality software is most important one in
market competition in this paper presents a hybrid framework based on the goal/question/metric paradigm
to evaluate the quality and effectiveness of previous software goods in project, product and organizations
in a cloud computing environment. In our approach it support decision making in the area of project,
product and organization levels using Neural networks and three angular metrics i.e., project metrics,
product metrics, and organization metrics
Drupal content management system (cms) based e commerce portalSandeep Kumbhar
A content management system is computer software used to manage the creation and modification of digital content. CMSs are typically used for enterprise content management and web content management. Here we will see the Drupal content management system (cms) based e commerce portal.
DataOps: An Agile Method for Data-Driven OrganizationsEllen Friedman
DataOps expands DevOps philosophy to include data-heavy roles (data engineering & data science). DataOps uses better cross-functional collaboration for flexibility, fast time to value and an agile workflow for data-intensive applications including machine learning pipelines. (Strata Data San Jose March 2018)
Mars Presentation at the Supply Chain Insights Global Summit 2018Lora Cecere
Mars Franklin committed in 2017 to build a program to improve customer service and become demand driven. In this presentation, John Wisniewski, program manager for digital transformation, share candid insights on the implementation.
Developing recommendation systems to support open source software developers ...Davide Ruscio
Open-source software (OSS) forges contain rich data sources useful for supporting development activities. Several techniques and tools have been promoted to provide open source developers with innovative features, aiming to obtain improvements in development effort, cost savings, and developer productivity. In the context of the EU H2020 CROSSMINER project, different recommendation systems have been conceived to assist software programmers in different phases of the development process by providing them with various artifacts, such as third-party libraries, or documentation about how to use the APIs being adopted, or relevant API function calls. To develop such recommendations, various technical choices have been made to overcome issues related to several aspects, including the lack of baselines, limited data availability, decisions about the performance measures, and evaluation approaches. This lecture provides an introduction to Recommendation Systems in Software Engineering (RSSE) and describes the challenges that have been encountered in the context of the CROSSMINER project. Specific attention is devoted to present the intricacies related to the development and evaluation techniques that have been employed to conceive and evaluate the CROSSMINER recommendation systems. The lessons that have been learned while working on the project are also discussed.
https://sites.google.com/gssi.it/csgssi/ph-d-program/se-ai-course-2021
Simpda 2014 - A living story: measuring quality of developments in a large in...SpagoWorld
The presentation supported the speech by Gabriele Ruffatti (founder of the SpagoWorld initiative) at SIMPDA 2014 (Milan, Italy - November 19-21, 2015). The presentation focuses on the innovative approach named Productivity Intelligence supported by Spago4Q - the open source analytic of SpagoBI suite for Quality and Performance Improvement- that allows companies and organizations to effectively monitor performances, improve quality practices and achieve higher capability levels. www.spagoworld.org
Varied encounters with data science (slide share)gilbert.peffer
How does data science relate to traditional scientific and computational approaches? What can we learn about data science pitfalls from these approaches? Is there a role for the social sciences and humanities?
Slides of the project definition workshop at disummit June 26, 2019 .
We're all caught in the AI hype - and I daily meet AI enthousiasts who focus heavily on technology, cool algorithms on a modern infrastructure. And business leaders who dream AI will solve our problems automagically. While dreaming and innovating is cool, modern and exciting, such focus typically increases business impact only marginally. The best way to increase impact, is having the project definition right. In this workshop, you'll walk away with a "Project definition checklist " - an exhausitive list of issues you want to understand before you start building your algorithms. Throughout the years this has proved to be a useful asset for junior data scientists, (aspiring) data science managers and (project) management.
ATMOSPHERE was invited to be a speaker at Think Milano event, on 6th June from 14.30 to 17.30, to join a panel discussion called “L’infrastruttura cloud ready protagonista del future” on how cloud infrastructures are important for different market sectors.
DIH Emilia-Romagna supports companies (and related supply chains) to assess and exploit their digital potential through digital maturity analyses and definition of action plans for management of innovation and digital transformation, including provision of technological partners, funding and training opportunities, technological macro-trends and connection with Enterprise Europe Network and other relevant European stakeholders (e.g. Digital Innovation Hubs, Competence Centers, Laboratories and Research Centers).
Industrial Case: Motion Solution Industry
SME company, founded in 1957, active in motion solutions industry
The company would exploit their digital potential (also including the entire value chain) in order to increase the value added provided to customers and to become more efficient and flexible. Thus, the company needs a managerial support from DIH-ER.
Through the Digital Maturity Assessment, DIH-ER created a digital transformation roadmap comprising 8 priorities (mainly connected to vertical and horizontal integration, evolution of offerings from products to ecosystems), provision of technological partners, funding opportunities, training opportunities, technological macro-trends and connection with Enterprise Europe Network and other relevant European stakeholders.
In addition, the company benefited of coaching and mentoring support provided through direct connection with outer managers (under temporary management approach).
Decision Making Framework in e-Business Cloud Environment Using Software Metr...ijitjournal
Cloud computing technology is most important one in IT industry by enabling them to offer access to their
system and application services on payment type. As a result, more than a few enterprises with Facebook,
Microsoft, Google, and amazon have started offer to their clients. Quality software is most important one in
market competition in this paper presents a hybrid framework based on the goal/question/metric paradigm
to evaluate the quality and effectiveness of previous software goods in project, product and organizations
in a cloud computing environment. In our approach it support decision making in the area of project,
product and organization levels using Neural networks and three angular metrics i.e., project metrics,
product metrics, and organization metrics
Drupal content management system (cms) based e commerce portalSandeep Kumbhar
A content management system is computer software used to manage the creation and modification of digital content. CMSs are typically used for enterprise content management and web content management. Here we will see the Drupal content management system (cms) based e commerce portal.
DataOps: An Agile Method for Data-Driven OrganizationsEllen Friedman
DataOps expands DevOps philosophy to include data-heavy roles (data engineering & data science). DataOps uses better cross-functional collaboration for flexibility, fast time to value and an agile workflow for data-intensive applications including machine learning pipelines. (Strata Data San Jose March 2018)
Mars Presentation at the Supply Chain Insights Global Summit 2018Lora Cecere
Mars Franklin committed in 2017 to build a program to improve customer service and become demand driven. In this presentation, John Wisniewski, program manager for digital transformation, share candid insights on the implementation.
Similar to Use of MDE to Analyse Open Source Software (20)
Developing recommendation systems to support open source software developers ...Davide Ruscio
Open-source software (OSS) forges contain rich data sources useful for supporting development activities. Several techniques and tools have been promoted to provide open source developers with innovative features, aiming to obtain improvements in development effort, cost savings, and developer productivity. In the context of the EU H2020 CROSSMINER project, different recommendation systems have been conceived to assist software programmers in different phases of the development process by providing them with various artifacts, such as third-party libraries, or documentation about how to use the APIs being adopted, or relevant API function calls. To develop such recommendations, various technical choices have been made to overcome issues related to several aspects, including the lack of baselines, limited data availability, decisions about the performance measures, and evaluation approaches. This lecture provides an introduction to Recommendation Systems in Software Engineering (RSSE) and describes the challenges that have been encountered in the context of the CROSSMINER project. Specific attention is devoted to present the intricacies related to the development and evaluation techniques that have been employed to conceive and evaluate the CROSSMINER recommendation systems. The lessons that have been learned while working on the project are also discussed.
https://sites.google.com/gssi.it/csgssi/ph-d-program/se-ai-course-2021
FOCUS: A Recommender System for Mining API Function Calls and Usage PatternsDavide Ruscio
Software developers interact with APIs on a daily basis and, therefore, often face the need to learn how to use new APIs suitable for their purposes. Previous work has shown that recommending usage patterns to developers facilitates the learning process. Current approaches to usage pattern recommendation, however, still suffer from high redundancy and poor run-time performance. In this paper, we reformulate the problem of usage pattern recommendation in terms of a collaborative filtering recommender system. We present a new tool, FOCUS, which mines open-source project repositories to recommend API method invocations and usage patterns by analyzing how APIs are used in projects similar to the current project. We evaluate FOCUS on a large number of Java projects extracted from GitHub and Maven Central and find that it outperforms the state-of-the-art approach PAM with regards to success rate, accuracy, and execution time. Results indicate the suitability of context-aware collaborative-filtering recommender systems to provide API usage patterns.
CrossSim: exploiting mutual relationships to detect similar OSS projectsDavide Ruscio
Slides presented at SEAA 2018 http://dsd-seaa2018.fit.cvut.cz/seaa/ related to the paper http://reposto.di.univaq.it/aigon2/index.php/attachments/single/211
Software development is a knowledge-intensive activity, which requires mastering several languages, frameworks, technology trends (among other aspects) under the pressure of ever-increasing arrays of external libraries and resources.
Recommender systems are gaining high relevance in software
engineering since they aim at providing developers with real-time recommendations, which can reduce the time spent on discovering and understanding reusable artifacts from software repositories, and thus inducing productivity and quality gains.
In this presentation, we focus on the problem of mining open source software repositories to identify similar projects, which can be evaluated and eventually reused by developers. To this end, CROSSSIM is proposed as a novel approach to model open source software projects and related artifacts and to compute similarities among them. An evaluation on a dataset containing 580 GitHub projects shows that CROSSSIM outperforms an existing technique, which has been proven to have a good performance in detecting similar GitHub repositories.
Consistency Recovery in Interactive ModelingDavide Ruscio
MDE projects contain different kinds of artifacts such as models, metamodels, model transformations, and deltas. These artifacts are related in terms of relationships such as transformation or conformance. In this presentation, we capture the types of artifacts and the relevant relationships in a megamodeling-based manner for the purpose of monitoring and recovering project consistency in response to changes that users may apply to the project within an interactive modeling platform. The approach supports users in experimenting with MDE projects and receiving feedback upon changes on the grounds of a specific execution semantics for megamodels. The approach is validated within the web-based modeling platform MDEFORGE.
Edelta: an approach for defining and applying reusable metamodel refactoringsDavide Ruscio
Metamodels can be considered one of the key artifacts of any model-based project. Similarly to other software artifacts, metamodels are expected to evolve during their life-cycle and consequently it is crucial to develop approaches and tools supporting the definition and re-use of metamodel refactorings in a disciplined way.
This paper proposes Edelta, a domain specific language for specifying reusable libraries of metamodel refactorings. The language allows both atomic and complex changes and it is supported by an Eclipse-based IDE. The developed supporting environment allows the developer to apply refactorings both in a batch manner and in a step-by-step fashion, which provides developers with an immediate view of the evolving Ecore model before actually changing it.
Semantic based model matching with emf compareDavide Ruscio
In MDE resolving pragmatic issues related to the management of models is key to success. Model comparison is one of the most challenging operations playing a central role in a wide range of modelling activities including model versioning, evolution and even collaborative and distributed specification of models. Over the last decade, several syntactic methods have been proposed to compare models even though they struggle in achieving higher levels of accuracy especially when the semantics of the application domain has to be considered. Existing methods improve comparison precision at the price of high performance costs.
In this talk I presented a lightweight semantic comparison method, which relies on a new matching algorithm that considers ontological information encoded in the WordNet lexical database further than ordinary syntactical and structural correlations. The approach has been implemented as extension of EMFCompare and evaluated to measure its precision and performances when compared to existing approaches.
Collaborative model driven software engineering: a Systematic Mapping StudyDavide Ruscio
Collaborative software engineering (CoSE) deals with methods, processes and tools for enhancing collaboration, communication, and co-ordination (3C) among team members. CoSE can be employed to conceive different kinds of artifacts during the development and evolution of software systems. For instance, when focusing on software design, multiple stakeholders with different expertise and responsibility collaborate on the system design.
Model-Driven Software Engineering (MDSE) provides suitable techniques and tools for specifying, manipulating, and analyzing modeling artifacts including metamodels, models, and transformations. A collaborative MDSE approach can be defined as a method or technique allowing multiple stakeholders to work on a set of shared modeling artifacts, and to be aware of each others’ work. Even though Collaborative MDSE is gaining a growing interest in both academia and practice, a holistic view on what Collaborative MDSE is, its components, the related opportunities and challenges is still missing.
In this talk, I outlined the main insights of the systematic mapping study we have done to identify and classify approaches, methods, and techniques that support collaborative. We present three complementary dimensions that we have identified during the study as the peculiar aspects building up a collaborative MDSE: a model management infrastructure for managing the life cycle of the models, a set of collaboration means for allowing involved stakeholders to work on the modelling artifacts collaboratively, and a set of communication means for allowing involved stakeholders to be aware of the activities of the other stakeholders. The identification of limitations and challenges of currently available collaborative MDE approaches is also given by discussing the implications for future investigation.
Mining Correlations of ATL Transformation and Metamodel MetricsDavide Ruscio
Model transformations are considered to be the “heart” and “soul” of Model Driven Engineering, and as a such, advanced techniques and tools are needed for supporting the development, quality assurance, maintenance, and evolution of model transformations. Even though model transformation developers are gaining the availability of powerful languages and tools for developing, and testing model transformations, very few techniques are available to support the understanding of transformation characteristics. In this talk, a process to analyze model transformations is discussed with the aim of identifying to what extent their characteristics depend on the corresponding input and target metamodels. The process relies on a number of transformation and metamodel metrics that are calculated and properly correlated. The talk discusses the application of the approach on a corpus consisting of more than 90 ATL transformations and 70 corresponding metamodels.
The slides have been used to present the paper "Mining Correlations of ATL Transformation and Metamodel Metrics" at MISE2015 workshop at ICSE2015 (http://goo.gl/UJ9nWC)
MDEForge: an extensible Web-based modeling platformDavide Ruscio
Model-Driven Engineering (MDE) refers to the systematic use of models as first class entities throughout the software development life cycle. Over the last few years, many MDE technologies have been conceived for developing domain specific modeling languages, and for supporting a wide range of model management activities. However, existing modeling platforms neglect a number of important features that if missed reduce the acceptance and the relevance of MDE in industrial contexts, e.g., the possibility to search and reuse already developed modeling artifacts, and to adopt model management tools as a service.
In this presentation we propose MDEForge a novel extensible Web-based modeling platform specifically conceived to foster a community-based modeling repository, which underpins the development, analysis and reuse of modeling artifacts.~Moreover, it enables the adoption of model management tools as software-as-a-service that can be remotely used without overwhelming the users with intricate and error-prone installation and configuration procedures.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesChristina Lin
Traditionally, dealing with real-time data pipelines has involved significant overhead, even for straightforward tasks like data transformation or masking. However, in this talk, we’ll venture into the dynamic realm of WebAssembly (WASM) and discover how it can revolutionize the creation of stateless streaming pipelines within a Kafka (Redpanda) broker. These pipelines are adept at managing low-latency, high-data-volume scenarios.
HEAP SORT ILLUSTRATED WITH HEAPIFY, BUILD HEAP FOR DYNAMIC ARRAYS.
Heap sort is a comparison-based sorting technique based on Binary Heap data structure. It is similar to the selection sort where we first find the minimum element and place the minimum element at the beginning. Repeat the same process for the remaining elements.
Understanding Inductive Bias in Machine LearningSUTEJAS
This presentation explores the concept of inductive bias in machine learning. It explains how algorithms come with built-in assumptions and preferences that guide the learning process. You'll learn about the different types of inductive bias and how they can impact the performance and generalizability of machine learning models.
The presentation also covers the positive and negative aspects of inductive bias, along with strategies for mitigating potential drawbacks. We'll explore examples of how bias manifests in algorithms like neural networks and decision trees.
By understanding inductive bias, you can gain valuable insights into how machine learning models work and make informed decisions when building and deploying them.
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSveerababupersonal22
It consists of cw radar and fmcw radar ,range measurement,if amplifier and fmcw altimeterThe CW radar operates using continuous wave transmission, while the FMCW radar employs frequency-modulated continuous wave technology. Range measurement is a crucial aspect of radar systems, providing information about the distance to a target. The IF amplifier plays a key role in signal processing, amplifying intermediate frequency signals for further analysis. The FMCW altimeter utilizes frequency-modulated continuous wave technology to accurately measure altitude above a reference point.
Forklift Classes Overview by Intella PartsIntella Parts
Discover the different forklift classes and their specific applications. Learn how to choose the right forklift for your needs to ensure safety, efficiency, and compliance in your operations.
For more technical information, visit our website https://intellaparts.com
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
2. 2
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
Outline
3. 3
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
Outline
4. 4
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
https://www.merriam-webster.com/dictionary/analysis
5. 5
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
http://www.dictionary.com/browse/analytics
6. 6
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Understanding complex problems
7. 7
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Understanding complex problems
8. 8
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Software Analytics
"Software analytics aims to obtain insightful and actionable
information from software artifacts that help practitioners
accomplish tasks related to software development, systems, and
users."
D. Zhang, S. han, Y. Dan, J.-G. Lou, H Zhang: Software Analytics in Practice. IEEE Software, Sept./Oct. 2013, pp. 30-35.
9. 9
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Software Analytics
"Software analytics (SA) represents a branch of big data analytics. SA is
concerned with the analysis of all software artifacts, not only source code.
[...] These tiers vary from the higher level of the management board and
setting the enterprise vision and portfolio management, going through
project management planning and implementation by software
developers."
T. M. Abdellatif, L. F. Capretz, D. Ho. Software Analytics to Software Practice: A Systematic Literature Review. 1. Int'l Workshop on
Big Data Engineering, 2015, pp. 30-36.
10. 10
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Software Analytics
"Software analytics is analytics on software data for managers
and software engineers with the aim of empowering software
development individuals and teams to gain and share insight
form their data to make better decisions."
R. Buse, T. Zimmermann. Information Needs for Software Development Analytics. Proc. Int'l Conf. Software Engineering (ICSE), IEEE CS,
2012
11. 11
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
Outline
12. 12
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Open Source Software
“The term open source refers to something people can modify and share
because its design is publicly accessible.”
“Open source software is software with source code that anyone can
inspect, modify, and enhance.”
Main benefits:
- Control
- Training
- Security
- Stability https://opensource.com/resources/what-open-source
https://opensource.org/
13. 13
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Mining Software Repositories field
The Mining Software Repositories (MSR)
field analyzes the rich data available in
software repositories to uncover
interesting and actionable information
about software systems and projects.
http://www.msrconf.org/
Q&A systems
Bug Reports
API
Documentation
14. 14
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Mining Software Repositories field
Source code
Q&A systems
Bug Reports
API
Documentation
Tutorials
Configuration
Management Systems
15. 15
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
Outline
16. 16
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model-Driven Engineering
A software discipline that shifts the focus of software development
from coding to modeling
Models
– are abstractions representing knowledge and activities that govern a particular
application domain
– use domain concepts rather than computing concepts, ie they can be
defined/used by non computer scientists
– have first-class status
17. 17
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model-Driven Engineering
Over the last decades many MDE technologies have been conceived to
support a wide range of modeling and model management activities
19. 19
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
20. 20
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
21. 21
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
22. 22
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Free and Open Source Software
– More than 29,000
interdependent
packages
→ Linux distributions are
among the most complex
software ecosystems
23. 23
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Before distributions
In the beginning it was the tarball
Before the advent of distributions, the peculiar way to install free
software on client machine was:
user
installations
server
side
client
side
proj 1
proj 2
proj n
bazaar
24. 24
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
GNU/Linux distributions
To answer these problems, GNU/Linux distributions have born as
intermediaries between FOSS projects and their users
user
installations
server
side
client
side
proj 1
proj 2
proj n
FOSS
bazaar
package repository
meta-
installer
distribution
editors
package
management
25. 25
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
GNU/Linux distributions
Central notion in distributions (to abstract over the complex underlying
infrastructure):
– package, together with package management software
package repository
distribution
editors
package
management
26. 26
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
GNU/Linux distributions
Central notion in distributions (to abstract over the complex underlying
infrastructure):
– package, together with package management software
package repository
distribution
editors
package
management
And yet, doing things right can be
extremely difficult!
28. 28
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
An upgrade problem example
– each phase can fail
– it actually happens
quite often!
– efforts should be
made to identify
errors as early as
possible, if not
predict
29. 29
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
> apt-get install libapache-mod-ssl
Configuration 1
Configuration 2
Installing package
libapache-mod-ssl
+
30. 30
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
31. 31
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
32. 32
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
33. 33
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
once mod_ssl is
installed, it is enabled in
apache
34. 34
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
> apt-get remove libapache-mod-ssl
Configuration n+1
Configuration n
removing package
libapache-mod-ssl
-
35. 35
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
36. 36
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
It disables mod_ssl in apache.
What happens if the maintainer
does not write this statement ?
37. 37
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Sample Scenario
An “inconsistent” configuration is
reached and it is detected only at
run-time:
the package dependency
metadata are not enough !
38. 38
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Problem: Upgrade failures
Current tools are able to predict a limited set of upgrade failures
before deployment
When trying to predict upgrade failures, existing tools only consider
static package metadata and the behaviour of the maintainer scripts is
completely ignored
– This leaves a wide range of failures unpredicted
40. 40
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Idea
Extracting relevant information from a linux box («snapshot») at a given
moment of time
Analysis and upgrade
simulation on the
«snapshot»
injectors
Linux box
«snapshot»
41. 41
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Ingredients 1/3
Modeling languages for describing the several aspects of a linux distribution
– Packages
• including maintainer scripts
– System Configuration
• Installed packages
• Configuration files
• MIME-type handlers
• Alternatives
• etc
Injectors for harvesting the system and building the models
– collection of injectors
42. 42
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Ingredients 2/3
Modeling language for the maintainer scripts
– scripts are written in POSIX languages whose semantics is far from being
simple, although
– maintainer scripts does not harness the full expressivity of such languages
(template-based “macro-language”)
Maintainer scripts as
models
– which semantics ?
43. 43
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Ingredients 3/3
Transformational semantics for simulating the behavior of the
maintainer scripts on the system «snapshot»
– M2M transformations obtained by «compiling» the maintainer scripts into ATL
(ATLAS Transformation Language)
Fault detector, a general mechanism for performing queries over the
«snapshot» for digging the model and search for inconsistencies
44. 44
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Configuration 1
«snapshot» 1
Configuration 2
?
«snapshot» 2
system injection
package injection
M2M
transformationM2M transformation
Enhancing meta-installer through MDE
45. 45
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Overall architecture
– the simulator is used to
predict the effect of
maintainer script
executions (deploy-time
failures)
– the fault detector is used
to deal with undetected
failures
R. Di Cosmo, D. Di Ruscio, P. Pelliccione, A. Pierantonio, S. Zacchiroli. Supporting Software Evolution in Component-Based FOSS Systems (2011), in Science of Computer Programming
76:12(1144-1160)
Davide Di Ruscio and Patrizio Pelliccione, Simulating upgrades of complex systems: the case of Free and Open Source Software (2014), in: Information and Software Technology, 56:4(438-
462)
DEMO
46. 46
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Fault detector architecture
-Libraries (.jar files) and OCL queries
-Catalogue of faults
-Catalogue of solutions
Web Portal
FD-Server
EVOSS Server
User machine
FD-Client
User
Davide Di Ruscio and Patrizio Pelliccione, A model-driven approach to detect faults in FOSS systems (2015), in: Journal of Software: Evolution and Process - John
Wiley & Sons, Ltd, 27:4(294-318)
DEMO
47. 47
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
48. 48
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Context
Related activities
- Searching for candidate components
- Evaluating a set of retrieved candidate components to find the most suitable one
- Understanding how to use the selected components
- Monitoring the selected components
Development of new software systems
by reusing existing open source components
49. 49
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Context
Related activities
- Searching for candidate components
- Evaluating a set of retrieved candidate components to find the most suitable one
- Understanding how to use the selected components
- Monitoring the selected components
Development of new software systems
by reusing existing open source components
50. 50
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Selecting and Using OSS components
Challenging tasks
- assessing quality, maturity, activity
of development and user support
is not a straightforward process
Different and heterogeneous
source of information
- e.g., code repositories,
communication channels, bug
tracking systems
Source code
Q&A systems
Bug Reports
API
Documentation
Tutorials
Configuration
Management Systems
51. 51
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Analysis of OSS projects in OSSMETER
OSS
Project
Communication channel
(Newsgroup/forum/
mailing list)
Source Code
Repository
Bug Tracking
System
OSS Forge
Metadata
52. 52
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Analysis of OSS projects in OSSMETER
Dealing with heterogeneous sources
54. 54
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Analysis of OSS projects in OSSMETER
55. 55
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Presentation
Wealth of data to present
– Needs to be user-friendly / digestible
Presentation driven by the quality model
56. 56
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
The default OSSMETER quality model
57. 57
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
The OSSMETER quality metamodel
Francesco Basciani, Juri Di Rocco, Davide Di Ruscio, Ludovico Iovino and Alfonso Pierantonio, A Customizable Approach for the Automated Quality
Assessment of Modelling Artefacts, in: 10th International Conference on the Quality of Information and Communications Technology (QUATIC 2016),
Lisbon, Portugal, IEEE CPS, 2016
61. 61
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Context
Related activities
- Searching for candidate components
- Evaluating a set of retrieved candidate components to find the most suitable one
- Understanding how to use the selected components
- Monitoring the selected components
Development of new software systems
by reusing existing open source components
62. 62
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Source code
Q&A systems
Bug Reports
API
Documentation
Tutorials
Configuration
Management Systems
63. 63
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
CROSSMINER: high-level view
Data Preprocessing Capturing Context
Producing
Recommendations
Presenting
Recommendations
64. 64
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Mining and Analysis Tools
CROSSMINER: high-level view
Data Preprocessing Capturing Context
Producing
Recommendations
Presenting
Recommendations
Knowledge Base
Source Code
Miner
NLP
Miner
Configuration
Miner
Cross project
Analysis
OSS forges
Source Code
Natural
language
channels
Configuration
Scripts
lookup/store
mine
65. 65
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
CROSSMINER: high-level view
Data Preprocessing Capturing Context
Producing
Recommendations
Presenting
Recommendations
Developer
IDE
Knowledge Base
query
recommendations
Data
Storage
Real-time recommendations that serve productivity and quality increase
66. 66
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
CROSSMINER: high-level view
Use of machine learning algorithms to produce recommendations
during development
Example of recommendations:
- Similar projects
- API documentations
- Q&A posts that can help developer to use selected libraries
- Additional libraries that should be included
- …
67. 67
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Example: recommending similar projects
1. Represent project
dependencies on
graphs
2. Calculate graph
similarity, which
helps consider also
indirect connections
3. Similarity can be
computed for
different artifacts
68. 68
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE for analysing open source software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
- Assessing the quality of modelling artefacts
69. 69
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model repositories in MDE
The benefits related to the adoption of model repositories have been
acknowledged in the MDE community
• In the past decade several model repositories have been introduced
70. 70
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model repositories classification
Flat repositories
- No categorization
- Searching and browsing not available
- Manual inspection
Manually classified repositories without searching and browsing functionalities
- Attributes include short description
- List of domains
Manually classified repositories with searching and browsing functionalities
- Manually classified (predefined set of labels)
- Searching and browsing available
71. 71
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model repositories classification
Flat repositories
- No categorization
- Searching and browsing not available
- Manual inspection
Manually classified repositories without searching and browsing functionalities
- Attributes include short description
- List of domains
Manually classified repositories with searching and browsing functionalities
- Manually classified (predefined set of labels)
- Searching and browsing available
72. 72
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Models in GitHub
73. 73
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model repositories classification
Flat repositories
- No categorization
- Searching and browsing not available
- Manual inspection
Manually classified repositories without searching and browsing functionalities
- Attributes include short description
- List of domains
Manually classified repositories with searching and browsing functionalities
- Manually classified (predefined set of labels)
- Searching and browsing available
74. 74
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
EMF Zoo
75. 75
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Model repositories classification
Flat repositories
- No categorization
- Searching and browsing not available
- Manual inspection
Manually classified repositories without searching and browsing functionalities
- Attributes include short description
- List of domains
Manually classified repositories with searching and browsing functionalities
- Manually classified (predefined set of labels)
- Searching and browsing available
76. 76
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
ReMoDD
77. 77
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
MDEForge
• Community-based repository of modeling artifacts
• It enables the adoption of model management tools as software as
a service
• It is modular and extensible
• It supports advanced mechanisms to query the repository and find
the required modeling artifacts
http://www.mdeforge.org/
Juri Di Rocco, Davide Di Ruscio, Ludovico Iovino and Alfonso Pierantonio, Collaborative Repositories in Model-Driven Engineering (2015), in: IEEE Software,
32:3(28-34)
78. 78
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
MDEForge architecture
Core
Repository
WEB
Access
REST API
ModelTransformation Metamodel
Extensions
Metrics
Calculator
Transformation
chain
Users
Clustering
Visualizer
Proximity
Calculator
Clustering
Creator
…
79. 79
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
MDEForge collected artifacts
We imported hundreds of metamodels from various sources
How can we group and classify
the collected artifacts?
80. 80
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Overview of Clustering Techniques
• Process of organizing objects into groups of similar objects
• Unsupervised classification
• Serveral clustering methods:
• Hierarchical clustering
• Partitional clustering
• …
81. 81
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Hierarchical clustering
It produces nested set of groups based on a criterion for merging or
splitting clusters based on similarity
• Calculated on proximity distance
• Represented by dendrograms
• Hierarchical cluster methods: agglomerative, divisive, etc
82. 82
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Clusterization of metamodels
• Proximity calculator
• Clustering creator
• Clustering visualizer
Core
Repository
WEB
Access
REST API
ModelTransformation Metamodel
Extensions
Metrics
Calculator
Transformation
chain
Users
Clustering
Visualizer
Proximity
Calculator
Clustering
Creator
…
83. 83
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Visualization of the identified clusters
Francesco Basciani, Juri Di Rocco, Davide Di Ruscio, Ludovico Iovino and Alfonso Pierantonio, Automated Clustering of Metamodel Repositories, in: 28th International
Conference on Advanced Information Systems Engineering (CAiSE'16), 2016
84. 84
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
85. 85
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Concluding remarks
It is possible to use models and model management operations to deal with the
problem of analysing open source software
Identifying the right abstraction layer to work on is one of the most critical task
- both in MANCOOSI and OSSMETER such a task took about 6 months
- it is an iterative process, which has to involve also domain experts
- E.g., in MANCOOSI the elements to be represented in models depend on the kind of faults
to be detected
Maintenance of the developed artifacts (metamodels, transformations,
etc) can be an issue: interdependencies, ripple effects, …
Heterogeneity and scalability are relevant issues to be solved
86. 86
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Take away message
MDE experts have the forma mentis to approach the problem of
analysing open source software in terms of abstractions
It’s an interdisciplinary problem that bring
together several fields including statistical data
analysis, machine learning, information
retrieval, etc.
87. 87
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Use of MDE to Analyse Open Source Software
- Upgrade simulation
- Fault detection
- Open source project comparison
- Development of new software systems by
relying on existing open source components
- Unmanned classification of available artifacts
88. 88
Model Management And Analytics - MOMA3N 2018 - January 23, 2018, Madeira, Portugal
Additional links
http://www.mancoosi.org
http://evoss.di.univaq.it
http://www.ossmeter.org
http://www.crossminer.org
http://www.mdeforge.org