Workshop program
Tuesday, 13th September. Room HS VIII
Time is in the Central European Summer Time CEST (UTC +2)
14:00 to 18:00 with a 30 minutes Coffee break at 15:00
14:00 - 14:15
Opening and welcome note from organizers
Presentation
14:15 – 14:45
Ipek Ozkaya
Title: Variability and Technical Debt Ownership
Abstract: Variability is defined as the ability of a software system or artifact to be efficiently extended, changed, customized, or configured for use in a particular context.
Variability implies two distinct characteristics – one that the software will change in the future along the lines of the variability defined today, and two that variability may result in different teams to own the future configurations.
Both dimensions, future changes and future teams are highly relevant to understanding and managing technical debt.
In this talk, I will review how a clear understanding of variability scenarios can lead to improved understanding of technical debt ownership and management.
Ipek Ozkaya is the technical director of Engineering Intelligent Software Systems group at Carnegie Mellon University Software Engineering Institute (SEI).
Ozkaya has over 20 years of software engineering experience in research, government, and industry environments.
Her main areas of expertise include software architecture, software design automation, and managing technical debt in software-reliant and AI-enabled systems.
At the SEI she has worked with several government and industry organizations in domains including avionics, power and automation, IoT, healthcare, and IT, helping them improve their software systems through software architecture practices.
Ozkaya is the co-author of a practitioner book titled Managing Technical Debt: Reducing Friction in Software Development and is the Editor-in-Chief of IEEE Software Magazine. She holds a PhD in Computational Design from Carnegie Mellon University.
Presentation
14:45 – 15:15
Jan Bosch
Title: Superset Platforms: Commodity Functionality as Technical Debt
Abstract: As companies are increasingly adopting DevOps, traditional software product line approaches are becoming increasingly expensive to use. Instead we need to adopt superset platforms where each product in the portfolio is automatically derived through configuration of variation points and selection of variants. The challenge is that the number of variation points easily becomes unwieldy and needs to be managed. The primary source of variation points is commodity functionality that has not been managed properly. In this keynote, I first outline the contemporary trends in industry leading to the use of superset platforms. Subsequently, I discuss the challenge of variation points in commodity functionality and how the technical debt metaphor can be used to address this. The talk will use examples from industry and the research conducted in Software Center
Prof. Jan Bosch is the director of Software Center organization. Software Centre collaborates with such software development companies as Ericsson AB, Volvo Cars, AB Volvo, Saab AB, etcetera, with the aim to develop methods and tools for enhancing the productivity of collaborating organizations in various development phases.
Presentation
15:15 – 15:40
Coffee break
15:40 – 15:55
Lightning talks (7.5 min each)
Technical Debt in Start-ups / Scale-Ups
Serge Demeyer and Mercy Njima
Most start-ups aspire to become scale-ups someday. However, the constant pressure to add new features to a digital product sooner or later leads to technical debt. In this lightning talk we will present the preliminary results of a systematic literature survey on the phenomenon of technical debt in start-ups / scale-ups. The result is a taxonomy specifying how start-ups find a viable trade-off between customer demands and long term goals.
Presentation
Variability Debt in Opportunistic Reuse of Existing Products: Literature analysis and a field study
Wesley Klewerton, Jabier Martinez, Daniele Wolfart
We consider that clone-and-own opportunistic reuse is a type of variability debt as it complicates the maintenance and evolution of a family of systems as a whole. We analyzed 52 industrial cases of clone-and-own from the literature, looking at them from a technical debt perspective, to summarize the causes, impacted assets, consequences, and to identify a catalog of variability debt items. We also report on a field study we conducted.
Presentation
15:55 – 16:03
Lightning talk (7.5 min)
On Variability Debt in Object-Oriented Implementations
Johann Mortara, Philippe Collet, Anne-Marie Pinna-Dery
Variability implementations in software systems are prone to introduce variability debt, being formally defined as "technical debt caused by defects and sub-optimal solutions in the implementation of variability management in software systems". In this lightning talk, we will discuss how this concept can be interpreted in object-oriented variability-rich systems that make simultaneous use of several techniques (i.e., inheritance, overloading, and design patterns such as factory, strategy and decorator) to implement their variability. We will also report on how coupling standard quality metrics with a visualization exhibiting variability-intense zones can reveal areas where code is indebted.
Presentation
16:03 – 16:13
Paper presentation (10 min)
Variability-aware data migration tool
David Romero, Jose A Galindo, José Miguel Horcas and David Benavides
Relational databases are widely present in the development of software applications. A typical implementation can be seen in content management systems found on most websites. However, the migration of database structure and content between different management systems is not trivial, and the manual creation of scripts makes it difficult to reuse them in other scenarios. This paper presents a tool for database migration by modeling what we call a migration product line. This tool allows to obtain different configurations resulting in final products in a semi-automatic way, i.e., products according to software requirements, considering the variability between any two relational databases. To study the feasibility of our proposal, we have implemented a proof of concept that performs the migration between two databases.
Publication
Presentation
16:13 – 18:00
Working session on definition, characterization, and catalogue of variability debt examples