A multi-dimensional analysis of technical lag in Debian-based Docker images
A Multi-dimensional Analysis of Technical
Lag in Debian-based Docker Images
Ahmed Zerouali, Tom Mens, Alexandre Decan,
Jesus Gonzalez-Barahona and Gregorio Robles.
Groupe de Travail Vélocité Logicielle (LIP6)
Paris - France, 2 DECEMBER 2021
1
/background
Not update
Update
“If I go there will be trouble,
And if I stay it will be double,
So come on and let me know:
Should I Stay Or Should I Go?”
The Clash
3
/background
Technical lag*: the difference between deployed
software packages and the ideal available packages.
1.0.1 1.2.0 2.0.1
2.0.0 2.1.0
Technical lag
Deployed Ideal
Releases of a
used software
4
/technical lag
framework
● is a set of component releases
● is a set of possible lag values
● ideal : → is a function returning the “ideal” component release
● delta : x → is a function computing the difference between two
component releases
● agg : is a function aggregating the results of a set of lags
11
Zerouali et al. “A Formal Framework for Measuring Technical Lag in Component Repositories - and its Application to npm”. Journal on Software Evolution and Process. 2019
/technical lag
framework
Given a technical lag framework , we define:
Technical lag
Aggregated Technical lag
Let D C be a set of components, then:
12
Zerouali et al. “A Formal Framework for Measuring Technical Lag in Component Repositories - and its Application to npm”. Journal on Software Evolution and Process. 2019
About Docker container images
- “A Docker image is a read-only template that contains a set of instructions for
creating a container.” - Docker Inc
- A container is a lightweight, standalone, executable package of software.
15
Technical lag should be measured in different ways, offering
complementary information.
The technical lag could help Docker users to keep their images
and containers in a healthy shape.
Conclusion
29