What operations correlate with defective configuration scripts? We identify three operations: filesystem, infrastructure provisioning, and user accounts. If you want to find defects, find scripts that do these operations. Details: https://akondrahman.github.io/papers/icst2018_tm.pdf
7. Motivation: Defects in IaC scripts
• Defects in IaC scripts can have serious consequences
7https://wikitech.wikimedia.org/wiki/Incident_documentation/20170118-Labs
Wikimedia
Commons
8. Goal
To help software practitioners to prioritize validation
and verification efforts for infrastructure as code (IaC)
scripts by identifying the operations that characterize
defective IaC scripts
8
9. Research Questions
• RQ-1: Which are the operations that characterize
defective infrastructure as code (IaC) scripts? How
frequently do the identified operations appear in IaC
scripts?
• RQ-2: How can we build prediction models for defective
infrastructure as code scripts using text features?
9
15. Dataset
Mozilla Openstack Wikimedia
Time Period Aug, 2011- Sep,
2016
Mar, 2011- Sep,
2016
Apr, 2005 – Sep,
2016
IaC Code Size
(LOC)
30,272 122,083 17,439
Defect-related
Commits
558 of 3074,
18.1%
1987 of 7808,
25.4%
298 of 972,
30.6%
Defective IaC
Scripts
259 of 580
(44.6%)
810 of 1383
(58.5%)
161 of 296
(54.4%)
15
16. Answer to RQ1: Which are the operations that
characterize of defective infrastructure as
code (IaC) scripts?
• Filesystem operations
• Infrastructure provisioning
– Build systems
– Data analytics systems
– Database systems
– Web server systems
• Managing user accounts
16
26. Implications
• Raise awareness amongst practitioners when doing
certain operations
• Prioritizing verification and validation efforts based on
identified operations
26
27. Summary
Answer to RQ1: Frequency
21.7
14.5
23.4
6.9
18.9 17.9
2.5 1.1 1.6
0
5
10
15
20
25
Mozilla Openstack Wikimedia
PercentageofIaCScripts
Filesystem Infrastructure provision User account
aarahman@ncsu.edu
akondrahman
https://akondrahman.github.io/
Contact
Answer to RQ2: How can we build prediction
models for defective infrastructure as code
scripts using text features?
0.76
0.59
0.68
0.75
0.55 0.56
0
0.2
0.4
0.6
0.8
Mozilla Openstack Wikimedia
MedianAUC
Bag-of-words TF-IDF
0.74
0.71
0.73
0.72
0.74
0.7
0.65
0.7
0.75
Mozilla Openstack Wikimedia
MedianF-Measure
Bag-of-words TF-IDF
27
Motivation: Defects in IaC scripts
• Defects in IaC scripts can have serious consequences
6https://wikitech.wikimedia.org/wiki/Incident_documentation/20170118-Labs
Wikimedia
Commons
Notas do Editor
Keynote today
17 companies
17 companies
Say post mortem analysis report
Creates: creates => # A file to look for before running the command...