Slides of my presentation at the Research track of the 34th International Conference on Software Maintenance and Evolution (ICSME 2018).
The full paper is available here: http://www.ivanomalavolta.com/files/papers/ICSME_2018.pdf
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Collaborative Model-Driven Software Engineering: a Classification Framework a...Ivano Malavolta
Slides of my presentation at the Journal first track of the 40th International Conference on Software Engineering (ICSE 2018).
The accompanying extended abstract is available here: http://www.ivanomalavolta.com/files/papers/ICSE_2018_JournalFirst.pdf
The original TSE paper is available here: http://www.ivanomalavolta.com/files/papers/TSE_2017.pdf
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
A Preliminary Study on Architecting Cyber-Physical SystemsHenry Muccini
This presentation helps to understand our paper, presented at the 1st Workshop on Software Architectures for Cyber Physical Systems, presented at the SANCS2015 workshop (http://www.mrtc.mdh.se/SANCS15/).
ABSTRACT:
Cyber-physical systems (CPSs) are deemed as the key enablers of next generation applications. Needless to say, the design, verification and validation of cyber-physical systems reaches unprecedented levels of complexity, specially due to their sensibility to safety issues. Under this perspective, leveraging architectural descriptions to reason on a CPS seems to be the obvious way to manage its inherent complexity.
A body of knowledge on architecting CPSs has been proposed in the past years. Still, the trends of research on architecting CPS is unclear. In order to shade some light on the state-of-the art in architecting CPS, this paper presents a preliminary study on the challenges, goals, and solutions reported so far in architecting CPSs.
SiriusCon17 - A Graphical Approach to Modularization and Layering of MetamodelsObeo
Modularity is a key aspect in software engineering since it comes with several benefits like reusability, extensibility and maintainability. Although it is a well established concept, it has not received much attention when it comes to model-driven software development. Over time, metamodels tend to evolve and grow in complexity to encompass new aspects and features. If modularization steps are not taken and metamodels are extended intrusively, they can become difficult to maintain and to extend. With the increased complexity, the modularization can become even more challenging.
In this talk, we present a novel approach to assist the modeler in the task of modularization. Our approach addresses the problem from a graphical perspective. The proposed tool support displays a layered structure, where each layer has certain level of abstraction, and allows the modeler to organize metamodels inside the layers. In this layered structure, the metamodels should only depend on metamodels with the same or a higher abstraction level and should not take part in cyclical dependencies. The tool provides the modeler with full control over the modularization process and full knowledge about the relations between the metamodels, thus facilitating the modularization task greatly.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Collaborative Model-Driven Software Engineering: a Classification Framework a...Ivano Malavolta
Slides of my presentation at the Journal first track of the 40th International Conference on Software Engineering (ICSE 2018).
The accompanying extended abstract is available here: http://www.ivanomalavolta.com/files/papers/ICSE_2018_JournalFirst.pdf
The original TSE paper is available here: http://www.ivanomalavolta.com/files/papers/TSE_2017.pdf
[2017/2018] Introduction to Software ArchitectureIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
A Preliminary Study on Architecting Cyber-Physical SystemsHenry Muccini
This presentation helps to understand our paper, presented at the 1st Workshop on Software Architectures for Cyber Physical Systems, presented at the SANCS2015 workshop (http://www.mrtc.mdh.se/SANCS15/).
ABSTRACT:
Cyber-physical systems (CPSs) are deemed as the key enablers of next generation applications. Needless to say, the design, verification and validation of cyber-physical systems reaches unprecedented levels of complexity, specially due to their sensibility to safety issues. Under this perspective, leveraging architectural descriptions to reason on a CPS seems to be the obvious way to manage its inherent complexity.
A body of knowledge on architecting CPSs has been proposed in the past years. Still, the trends of research on architecting CPS is unclear. In order to shade some light on the state-of-the art in architecting CPS, this paper presents a preliminary study on the challenges, goals, and solutions reported so far in architecting CPSs.
SiriusCon17 - A Graphical Approach to Modularization and Layering of MetamodelsObeo
Modularity is a key aspect in software engineering since it comes with several benefits like reusability, extensibility and maintainability. Although it is a well established concept, it has not received much attention when it comes to model-driven software development. Over time, metamodels tend to evolve and grow in complexity to encompass new aspects and features. If modularization steps are not taken and metamodels are extended intrusively, they can become difficult to maintain and to extend. With the increased complexity, the modularization can become even more challenging.
In this talk, we present a novel approach to assist the modeler in the task of modularization. Our approach addresses the problem from a graphical perspective. The proposed tool support displays a layered structure, where each layer has certain level of abstraction, and allows the modeler to organize metamodels inside the layers. In this layered structure, the metamodels should only depend on metamodels with the same or a higher abstraction level and should not take part in cyclical dependencies. The tool provides the modeler with full control over the modularization process and full knowledge about the relations between the metamodels, thus facilitating the modularization task greatly.
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...Lili Wei
The slides are used in ASE 2016 for presentation of paper Taming Android Fragmentation: Characterizing and Detecting Compatibility Issues for Android Apps
Android-manifest extraction and labeling method for malware compilation and d...IJECEIAES
Malware is a nuisance for smartphone users. The impact is detrimental to smartphone users if the smartphone is infected by malware. Malware identification is not an easy process for ordinary users due to its deeply concealed dangers in application package kit (APK) files available in the Android Play Store. In this paper, the challenges of creating malware datasets are discussed. Long before a malware classification process and model can be built, the need for datasets with representative features for most types of malwares has to be addressed systematically. Only after a quality data set is available can a quality classification model be obtained using machine learning (ML) or deep learning (DL) algorithms. The entire malware classification process is a full pipeline process and sub processes. The authors purposefully focus on the process of building quality malware datasets, not on ML itself, because implementing ML requires another effort after the reliable dataset is fully built. The overall step in creating the malware dataset starts with the extraction of the Android Manifest from the APK file set and ends with the labeling method for all the extracted APK files. The key contribution of this paper is on how to generate datasets systematically from any APK file.
The state-of-the-art in Mobile apps (2013) including platform research, client architectures, decision for mobile strategy, design patterns and case studies.
Thorsignia - Custom software development services in indiacharan Teja
Thorsignia is a leading IT and Multimedia company that provides an integrated range of services. We render finest quality outputs to our clients through our domain expertise.
DevOps Indonesia "How Security with DevOps can Deliver more secure software"
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - Remediation) by Mr. Faisal Yahya
RAILWAY SAFETY PROTECTION WITH ANDROID MOBILE APPLICATION FOR 5G NEW RADIO NE...ijcsit
In every night of non-traffic hours, different jobs are conducting maintenance works in “Railway” trackside area. This project will explain a specific section of track under the sole control an Engineer’s Person-in-Charge as procedures. And how to provide protection methods by which a person or persons
on or near a track are safeguarded from potential train movements or a train is safeguarded from other train movements or obstructions, or persons or equipment are safeguarded from traction power.Consolidated past several investigation reports and according to related is rules, workflow or procedures etc. to summarize. There are protection tools left on trackside area incident caused by the workers are forgetting and poor management. Proposed are different project themes in the light of their expertise, experience and observation in their daily works. The proposed themes are compared, assessed
and prioritized under the criteria - “Manageable”, “Measurable”, “Result of Benefit”, “Standardization” and “Priority” in the Decision Matrix. Establish some solve problem methods for
comparing to find out which that lower-cost plan accordingly. I came up with a conclusion and the ideas as develop a mobile application and create a unique QR code label with equipment naming to facilitate each worker management of protection tools. This is also fulfilled in popular terms of Creativity and
Innovations. Used the MIT App Inventor (Massachusetts Institute of technology) an intuitive and visual programming preform for mobile application are development. Stage 1: program for individual mobile user application. Stage 2: build-up Network centralized storage with supervising console operation.
Stage 3: testing system under with 5G network compatibility, bandwidth and network speed is applicable people will be able to use more of the network dedicated to each mobile phone.Finally, successful to apply trial works a fruitful outcome after implementation of the project solution. There was no missing of protection tools on trackside area within the trial period. With the safety-first culture boosted by us, I believe we can achieve a common goal: Everyone Going Home Safe and Well Every day.
In every night of non-traffic hours, different jobs are conducting maintenance works in “Railway” trackside area. This project will explain a specific section of track under the sole control an Engineer’s Person-in-Charge as procedures. And how to provide protection methods by which a person or persons on or near a track are safeguarded from potential train movements or a train is safeguarded from other train movements or obstructions, or persons or equipment are safeguarded from traction power.Consolidated past several investigation reports and according to related is rules, workflow or procedures etc. to summarize. There are protection tools left on trackside area incident caused by the workers are forgetting and poor management. Proposed are different project themes in the light of their expertise, experience and observation in their daily works. The proposed themes are compared, assessed and prioritized under the criteria - “Manageable”, “Measurable”, “Result of Benefit”, “Standardization” and “Priority” in the Decision Matrix. Establish some solve problem methods for comparing to find out which that lower-cost plan accordingly. I came up with a conclusion and the ideas as develop a mobile application and create a unique QR code label with equipment naming to facilitate each worker management of protection tools. This is also fulfilled in popular terms of Creativity and Innovations. Used the MIT App Inventor (Massachusetts Institute of technology) an intuitive and visual programming preform for mobile application are development. Stage 1: program for individual mobile user application. Stage 2: build-up Network centralized storage with supervising console operation. Stage 3: testing system under with 5G network compatibility, bandwidth and network speed is applicable people will be able to use more of the network dedicated to each mobile phone.Finally, successful to apply trial works a fruitful outcome after implementation of the project solution. There was no missing of protection tools on trackside area within the trial period. With the safety-first culture boosted by us, I believe we can achieve a common goal: Everyone Going Home Safe and Well Every day.
A Control Mechanism of Multiple Visualization Applications on SAGE-enabled Ti...由来 藤原
Yuki Fujiwara, Susumu Date, Kohei Ichikawa and Haruo Takemura:
"A Multi-Application Controller for a Tiled Display Wall for Wide-area Distributed Computing,"
The 3rd International Conference on Human-centric Computing (HumanCom-10), Aug. 2010.
Abstract—SAGE is a graphics streaming middleware for sup- porting collaborative scientific visualization environments and allows scientists to easily build a tiled display wall (TDW) composed of multiple computers and monitors. Furthermore, it allows scientists to share scientific images and movies stored or generated on local or remote computers through the use of network streaming technique. However, the original SAGE does not have any functions and methods for letting applications know user input from its user interface, SAGE UI, although scientists as users can manipulate operations related to window management. Our built-in application control module for SAGE offers transparency and usability in operation to SAGE users wherever SAGE-enabled application nodes are.
Know Software Engineering very well and see the difference between the Software Programming & Software Engineering. Including other concepts as well as where you will know how this Software engineering is different for the building the software compared to do only the programming.
Helping QA organizations manage the challenges of a mobile-first world.
Join Rachel Obstler, Sr. Director of Product Management with Keynote Systems as she covers how organizations are rapidly deploying mobile versions of their customer-facing and internal applications.
With the prevalence of more agile-based approaches and the challenge of an ever-increasing diversity of devices and OS versions, testers are being asked to accomplish more testing in less time.
Rachel shares how leading enterprises are improving the efficiency of their mobile testing using automation, and how they identify the right processes and tools for the job. Sharing some fascinating statistics from their recent mobile quality survey of more than 69,000 mobile app developers and QA organizations in the top US enterprises, Rachel dives into the challenges identified in the survey and shares how to improve your testing process through optimizing your device testing strategy, and automating your mobile tests.
When it comes to ADCs, Perception is not Reality - Radwarealiciasyc
Based on a recent survey of 243 IT professionals, the research reveals that the role of ADCs has expanded well beyond the historical perception of hardware-based load balancers. What’s most interesting is that ADCs are becoming a critical component of a defense-in-depth security strategy as enterprises fine-tune security policy and enforcement to align with their sensitive business applications. There is a lesson to be learned here: enterprise organizations can get creative with ADC deployments for performance tuning, application-specific services, and critical system protection.
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
Slides of my invited talk at the 2nd workshop on Quality and Reliability Assessment of Robotic Software Architectures and Components (QRARSAC), co-located with the International Conference on Robotics and Automation (ICRA 2023).
Abstract of the talk. Today robotic systems are central to many industrial sectors, such as logistics, autonomous warehousing, and healthcare. If on one side ROS is helping roboticists by providing a standardized communication platform for robotic systems, on the other side ROSsystems are getting more and more large and complex, thus making it extremely difficult to ensure their level of quality, e.g., in terms of performance, security, energy efficiency, testability, maintainability. Improving the quality of robotic systems is not a new activity, but in this talk, we tackle it from a different perspective: we look at them from a software architecture perspective. In this talk, I will walk you through a series of experiments we conducted at the Vrije Universiteit Amsterdam targeting the architecture of ROS systems, we will discuss some architectural tactics for ROS systems, and will close with an overview of our open-source tool for automatically executing experiments on robotics software.
The slides of a short presentation I gave about my experience about working in the context of EU grants. It contains tips and tricks for the before/during/after phases of a EU project.
More Related Content
Similar to How Maintainability Issues of Android Apps Evolve [ICSME 2018]
ASE 2016 Taming Android Fragmentation: Characterizing and Detecting Compatibi...Lili Wei
The slides are used in ASE 2016 for presentation of paper Taming Android Fragmentation: Characterizing and Detecting Compatibility Issues for Android Apps
Android-manifest extraction and labeling method for malware compilation and d...IJECEIAES
Malware is a nuisance for smartphone users. The impact is detrimental to smartphone users if the smartphone is infected by malware. Malware identification is not an easy process for ordinary users due to its deeply concealed dangers in application package kit (APK) files available in the Android Play Store. In this paper, the challenges of creating malware datasets are discussed. Long before a malware classification process and model can be built, the need for datasets with representative features for most types of malwares has to be addressed systematically. Only after a quality data set is available can a quality classification model be obtained using machine learning (ML) or deep learning (DL) algorithms. The entire malware classification process is a full pipeline process and sub processes. The authors purposefully focus on the process of building quality malware datasets, not on ML itself, because implementing ML requires another effort after the reliable dataset is fully built. The overall step in creating the malware dataset starts with the extraction of the Android Manifest from the APK file set and ends with the labeling method for all the extracted APK files. The key contribution of this paper is on how to generate datasets systematically from any APK file.
The state-of-the-art in Mobile apps (2013) including platform research, client architectures, decision for mobile strategy, design patterns and case studies.
Thorsignia - Custom software development services in indiacharan Teja
Thorsignia is a leading IT and Multimedia company that provides an integrated range of services. We render finest quality outputs to our clients through our domain expertise.
DevOps Indonesia "How Security with DevOps can Deliver more secure software"
Leveraging Vulnerability Management Beyond DPR (Discovery - Prioritization - Remediation) by Mr. Faisal Yahya
RAILWAY SAFETY PROTECTION WITH ANDROID MOBILE APPLICATION FOR 5G NEW RADIO NE...ijcsit
In every night of non-traffic hours, different jobs are conducting maintenance works in “Railway” trackside area. This project will explain a specific section of track under the sole control an Engineer’s Person-in-Charge as procedures. And how to provide protection methods by which a person or persons
on or near a track are safeguarded from potential train movements or a train is safeguarded from other train movements or obstructions, or persons or equipment are safeguarded from traction power.Consolidated past several investigation reports and according to related is rules, workflow or procedures etc. to summarize. There are protection tools left on trackside area incident caused by the workers are forgetting and poor management. Proposed are different project themes in the light of their expertise, experience and observation in their daily works. The proposed themes are compared, assessed
and prioritized under the criteria - “Manageable”, “Measurable”, “Result of Benefit”, “Standardization” and “Priority” in the Decision Matrix. Establish some solve problem methods for
comparing to find out which that lower-cost plan accordingly. I came up with a conclusion and the ideas as develop a mobile application and create a unique QR code label with equipment naming to facilitate each worker management of protection tools. This is also fulfilled in popular terms of Creativity and
Innovations. Used the MIT App Inventor (Massachusetts Institute of technology) an intuitive and visual programming preform for mobile application are development. Stage 1: program for individual mobile user application. Stage 2: build-up Network centralized storage with supervising console operation.
Stage 3: testing system under with 5G network compatibility, bandwidth and network speed is applicable people will be able to use more of the network dedicated to each mobile phone.Finally, successful to apply trial works a fruitful outcome after implementation of the project solution. There was no missing of protection tools on trackside area within the trial period. With the safety-first culture boosted by us, I believe we can achieve a common goal: Everyone Going Home Safe and Well Every day.
In every night of non-traffic hours, different jobs are conducting maintenance works in “Railway” trackside area. This project will explain a specific section of track under the sole control an Engineer’s Person-in-Charge as procedures. And how to provide protection methods by which a person or persons on or near a track are safeguarded from potential train movements or a train is safeguarded from other train movements or obstructions, or persons or equipment are safeguarded from traction power.Consolidated past several investigation reports and according to related is rules, workflow or procedures etc. to summarize. There are protection tools left on trackside area incident caused by the workers are forgetting and poor management. Proposed are different project themes in the light of their expertise, experience and observation in their daily works. The proposed themes are compared, assessed and prioritized under the criteria - “Manageable”, “Measurable”, “Result of Benefit”, “Standardization” and “Priority” in the Decision Matrix. Establish some solve problem methods for comparing to find out which that lower-cost plan accordingly. I came up with a conclusion and the ideas as develop a mobile application and create a unique QR code label with equipment naming to facilitate each worker management of protection tools. This is also fulfilled in popular terms of Creativity and Innovations. Used the MIT App Inventor (Massachusetts Institute of technology) an intuitive and visual programming preform for mobile application are development. Stage 1: program for individual mobile user application. Stage 2: build-up Network centralized storage with supervising console operation. Stage 3: testing system under with 5G network compatibility, bandwidth and network speed is applicable people will be able to use more of the network dedicated to each mobile phone.Finally, successful to apply trial works a fruitful outcome after implementation of the project solution. There was no missing of protection tools on trackside area within the trial period. With the safety-first culture boosted by us, I believe we can achieve a common goal: Everyone Going Home Safe and Well Every day.
A Control Mechanism of Multiple Visualization Applications on SAGE-enabled Ti...由来 藤原
Yuki Fujiwara, Susumu Date, Kohei Ichikawa and Haruo Takemura:
"A Multi-Application Controller for a Tiled Display Wall for Wide-area Distributed Computing,"
The 3rd International Conference on Human-centric Computing (HumanCom-10), Aug. 2010.
Abstract—SAGE is a graphics streaming middleware for sup- porting collaborative scientific visualization environments and allows scientists to easily build a tiled display wall (TDW) composed of multiple computers and monitors. Furthermore, it allows scientists to share scientific images and movies stored or generated on local or remote computers through the use of network streaming technique. However, the original SAGE does not have any functions and methods for letting applications know user input from its user interface, SAGE UI, although scientists as users can manipulate operations related to window management. Our built-in application control module for SAGE offers transparency and usability in operation to SAGE users wherever SAGE-enabled application nodes are.
Know Software Engineering very well and see the difference between the Software Programming & Software Engineering. Including other concepts as well as where you will know how this Software engineering is different for the building the software compared to do only the programming.
Helping QA organizations manage the challenges of a mobile-first world.
Join Rachel Obstler, Sr. Director of Product Management with Keynote Systems as she covers how organizations are rapidly deploying mobile versions of their customer-facing and internal applications.
With the prevalence of more agile-based approaches and the challenge of an ever-increasing diversity of devices and OS versions, testers are being asked to accomplish more testing in less time.
Rachel shares how leading enterprises are improving the efficiency of their mobile testing using automation, and how they identify the right processes and tools for the job. Sharing some fascinating statistics from their recent mobile quality survey of more than 69,000 mobile app developers and QA organizations in the top US enterprises, Rachel dives into the challenges identified in the survey and shares how to improve your testing process through optimizing your device testing strategy, and automating your mobile tests.
When it comes to ADCs, Perception is not Reality - Radwarealiciasyc
Based on a recent survey of 243 IT professionals, the research reveals that the role of ADCs has expanded well beyond the historical perception of hardware-based load balancers. What’s most interesting is that ADCs are becoming a critical component of a defense-in-depth security strategy as enterprises fine-tune security policy and enforcement to align with their sensitive business applications. There is a lesson to be learned here: enterprise organizations can get creative with ADC deployments for performance tuning, application-specific services, and critical system protection.
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...Ivano Malavolta
Slides of my invited talk at the 2nd workshop on Quality and Reliability Assessment of Robotic Software Architectures and Components (QRARSAC), co-located with the International Conference on Robotics and Automation (ICRA 2023).
Abstract of the talk. Today robotic systems are central to many industrial sectors, such as logistics, autonomous warehousing, and healthcare. If on one side ROS is helping roboticists by providing a standardized communication platform for robotic systems, on the other side ROSsystems are getting more and more large and complex, thus making it extremely difficult to ensure their level of quality, e.g., in terms of performance, security, energy efficiency, testability, maintainability. Improving the quality of robotic systems is not a new activity, but in this talk, we tackle it from a different perspective: we look at them from a software architecture perspective. In this talk, I will walk you through a series of experiments we conducted at the Vrije Universiteit Amsterdam targeting the architecture of ROS systems, we will discuss some architectural tactics for ROS systems, and will close with an overview of our open-source tool for automatically executing experiments on robotics software.
The slides of a short presentation I gave about my experience about working in the context of EU grants. It contains tips and tricks for the before/during/after phases of a EU project.
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)Ivano Malavolta
The slides of my presentation about the Green Lab at the event called Research Cocktail (October 2020). The event is organized by the Computer Science Department of the Vrije Universiteit Amsterdam.
The source code of our tools and the replication package of our experiments performed in the Green Lab can be found here: https://github.com/S2-group
For further details about the Green Lab and all our activities around it, you can contact me at i.malavolta@vu.nl
Navigation-aware and Personalized Prefetching of Network Requests in Android ...Ivano Malavolta
Slides of my presentation at the NIER track of the 41th International Conference on Software Engineering (ICSE 2019).
The paper is available here: http://www.ivanomalavolta.com/files/papers/ICSE_2019_NAPPA.pdf
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Modeling behaviour via UML state machines [Software Design] [Computer Science...Ivano Malavolta
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...Ivano Malavolta
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Modeling and abstraction, software development process [Software Design] [Com...Ivano Malavolta
This presentation is about a lecture I gave within the "Software Design" course of the Computer Science bachelor program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
[2017/2018] AADL - Architecture Analysis and Design LanguageIvano Malavolta
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.it/.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
[07-A] Descriptive Statistics and data explorationIvano Malavolta
This presentation is about a lecture I gave within the "Green Lab" course of the Computer Science master program, of the Vrije Universiteit Amsterdam.
http://www.ivanomalavolta.com
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Let's dive deeper into the world of ODC! Ricardo Alves (OutSystems) will join us to tell all about the new Data Fabric. After that, Sezen de Bruijn (OutSystems) will get into the details on how to best design a sturdy architecture within ODC.
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
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.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
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.
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.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
4. VRIJE
UNIVERSITEIT
AMSTERDAM
Goal and research questions
4
To empirically characterize how maintainability issues of
Android apps evolve
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
5. VRIJE
UNIVERSITEIT
AMSTERDAM
Building the dataset
5
Union
App published in
Google Play?
9,400
Remove
duplicates
Has
manifest?
Has proper Android
source code?
Active
GitHub repo?
Remove
impurities
Enough commits
frequency?
8,049 6,619
6,454
4,756
2,238
1,410
GitHub repos
(434)
Commits metadata
(106,689)
Collect commits
metadata
• Kotlin code
• Missing Java code
• Android libraries
• #commits >= 6
• lifespan >= 8 weeks
• changed dates
• forks
• not analyzable
• Keep weeks with
at least 1 commit
• #weeks >= 8
7. VRIJE
UNIVERSITEIT
AMSTERDAM
Extracted maintainability issues
Software Analysis Toolkit
Developed by SIG
7
SAT tool
Maintainability issue Description
Unit size Methods exceeding 30 lines of code
Unit complexity Methods whose McCabe Cyclomatic Complexity exceeds 10
Unit interfacing Methods having more than 4 formal parameters
Module coupling Classes exceeding 20 incoming dependencies
Duplication Code clones of at least 6 lines of code
Maintainability The total count of the previous issue types
1. Fully automatic
2. No need to build the apps
3. Close contact with SAT developers
4. Its supported metrics are correlated with the
speed at which issues are solved by developers[1]
Why SAT
[1] Bijlsma, D., Ferreira, M. A., Luijten, B., & Visser, J. (2012). Faster issue resolution with
higher technical quality of software. Software quality journal, 20(2), 265-285.
8. VRIJE
UNIVERSITEIT
AMSTERDAM
Most recurrent maintainability issues (RQ1)
8
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
020406080100
MT US UC UI MC DP
Type of maintainability issue
Density
M
aintainability
(TO
TAL)
Unit size
Unit com
plexity
Unit interfacing
M
odule
coupling
Code
duplication
Density
of issues
#issues at commit c
NKLOC of the app after c
Average of 18 issues every 1k
LOCs
DUPLICATION and UNIT SIZE
are the most recurring issues
in Android apps
Is DUPLICATION really
an issue in Android?
9. VRIJE
UNIVERSITEIT
AMSTERDAM
How do maintainability issues evolve? (RQ2)
9
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
Does the density of maintainability issues actually change over time?
Weekly snapshots
1 time series for each pair <app, issue type>
Check stationarity
NON-stationarity for
93% of the apps
Android developers’ activities can impact the
maintainability of their apps over time
Weeks
Density
10. VRIJE
UNIVERSITEIT
AMSTERDAM
Evolution trends identification (RQ2)
10
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
Time series
Seasonal
Trend
Remainder
1,230 distinct trends
Open card
sorting
Taxonomy of 12
evolution trends
sampling
ADCPU−16Emu (I)
AttysScope (SI)
SGit (IP)
AndroidBootcampProject (PI)
BitcoinChecker (D)
Ursmu (SD)
BirdWalk (DP)
MLManager (PD)
CineTime (H)
RadyoMenemenPro (V)
PixelDungRemix (A)
android−simple−gameapi (C)
Increase
Stable
increase
Increasing
plateau
Plateau
increasing
Decrease
Stable
decrease
Decreasing
plateau
Plateau
decreasing
Hill
Valley
Anomalous
Constant
Growth ReductionMixed Constant
Weeks
Density
Weeks
11. VRIJE
UNIVERSITEIT
AMSTERDAM
The taxonomy of evolution trends (RQ2)
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
ADCPU−16Emu (I)
AttysScope (SI)
SGit (IP)
AndroidBootcampProject (PI)
BitcoinChecker (D)
Ursmu (SD)
BirdWalk (DP)
MLManager (PD)
CineTime (H)
RadyoMenemenPro (V)
PixelDungRemix (A)
android−simple−gameapi (C)
Increase
Stable
increase
Increasing
plateau
Plateau
increasing
Decrease
Stable
decrease
Decreasing
plateau
Plateau
decreasing
Hill
Valley
Anomalous
Constant
Growth MixedReduction Constant
12. VRIJE
UNIVERSITEIT
AMSTERDAM
Evolution trends by maintainability issue type
(RQ2)
12
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
DP
MC
UI
UC
US
MT
I SI IP PI D SD DP PD H V A C
10
20
30
40
Maintainability
Unit size
Unit complexity
Unit interfacing
Module coupling
Code duplication
Growth Reduction Mixed Constant
Increasing
plateau
Hill
Mainly a growth in time
• with recurrent plateau
Counts
Increase
Stable
increase
Plateau
increasing
Decreasing
plateau
Decrease
Stable
decrease
Plateau
decreasing
Valley
M
ix
Constant
Are developers resolving unit
interfacing and duplication issues?
SGit (IP)
CineTime (H)
13. VRIJE
UNIVERSITEIT
AMSTERDAM
Developers’ activities (RQ3)
13
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
0
10
20
30
40
Weeks
Maintainability(MT)Maintainabilityissuesdensity
Weeks
Maintainability hotspots
14. VRIJE
UNIVERSITEIT
AMSTERDAM
Developers’ activities (RQ3)
14
Which are the most recurrent types of maintainability issues in Android apps?
How does the density of Android maintainability issues evolve over time?
What are the development activities in which maintainability hotspots occur?
RQ1
RQ2
RQ3
0
10
20
30
40
Weeks
Maintainability(MT)
0
10
20
30
40
Weeks
Maintainability(MT)
App time series
Identify
hotspots
0
10
20
30
40
Weeks
Maintainability(MT)
Hotspots do not occur often in the app lifetime
(max: 8), average of ~1 hotspot per app
Content
analysis
sessions
Taxonomy of Android
developers activities [1]
Hotspots occur independently of the type of
developer’s activities
2,112 commits
sampling
[1] Pascarella, Geiger, Palomba, Di Nucci, Malavolta, Bacchelli.
Self-Reported Activities of Android Developers. MOBILESoft 2018
3,374
Counts
15. VRIJE
UNIVERSITEIT
AMSTERDAM
Conclusions
VRIJE
UNIVERSITEIT
AMSTERDAM
3
Why apps maintainability is important
High expectations
Continous feedback
Frequent updates
Continuous maintenance
VRIJE
UNIVERSITEIT
AMSTERDAM
Most recurrent maintainability issues (RQ1)
8
020406080100
MT US UC UI MC DP
Type of maintainability issue
Density
M
aintainability
(TO
TAL)
Unit size
Unit com
plexity
Unit interfacing
M
odule
coupling
Code
duplication
Density
of issues
#issues at commit c
NKLOC of the app after c
Average of 18 issues every 1k
LOCs
DUPLICATION and UNIT SIZE
are the most recurring issues
in Android apps
Is DUPLICATION really
an issue in Android?
VRIJE
UNIVERSITEIT
AMSTERDAM
Evolution trends by maintainability issue type
(RQ2)
12
DP
MC
UI
UC
US
MT
I SI IP PI D SD DP PD H V A C
10
20
30
40
Maintainability
Unit size
Unit complexity
Unit interfacing
Module coupling
Code duplication
Growth Reduction Mixed Constant
Increasing
plateau
Hill
Mainly a growth in time
• with recurrent plateau
Are developers resolving unit
interfacing and duplication issues?
Maintainability issues
rarely decrease!
VRIJE
UNIVERSITEIT
AMSTERDAM
Developers’ activities (RQ3)
14
0
10
20
30
40
Weeks
Maintainability(MT)
0
10
20
30
40
Weeks
Maintainability(MT)
App time series
Identify
hotspots
0
10
20
30
40
Weeks
Maintainability(MT)
Hotspots do not occur often in the app lifetime
(max: 8), average of >1 hotspot per app
Content
analysis
sessions
Taxonomy of Android
developers activities [1]
Hotspots occur independently of the type of
developer’s activities
2,112 commits
sampling
[1] Pascarella, Geiger, Palomba, Di Nucci, Malavolta, Bacchelli.
Self-Reported Activities of Android Developers. MOBILESoft 2018
Replication package
https://github.com/S2-group/ICSME2018ReplicationPackage
17. VRIJE
UNIVERSITEIT
AMSTERDAM
Demographics
17
10 20 50 100 200 500 1000 2000
Number of commits per app
1 2 5 10 20 50 100 200
Number of commits per snapshot
1 2 5 10 20 50 100
Number of unique contributors per app
10 20 50 100 200
Number of snapshots per app
2008 2009 2011 2012 2013 2014 2015 2016
Development start date per app
19. VRIJE
UNIVERSITEIT
AMSTERDAM
SAT processing time and resources
19
Average execution time = 8.73s per snapshot
Total processing time = ~12 days
LOCs processed = ~800 million
Checked-out resources = ~7 terabytes