Summary: | Cloud computing and Infrastructure-as-Code (IaC), supported by technologies such as Docker, have shaped how many software systems are built and deployed. Previous research has identified typical issues for some types of IaC specification but not why they come to be, or they have delved into collaboration aspects but not into technical ones. This work aims to characterize the <italic>activities</italic> around two particular kinds of IaC specification—Dockerfiles and <italic>docker-compose.yml</italic> files. We seek to know how they can be better supported and therefore study also what <italic>approaches</italic> and <italic>tools</italic> practitioners employ. We used an online questionnaire to gather data. The first part of the study reached 68 graduate students from a study program on informatics engineering, and the second one 120 professional software developers. The results show that most of the activities of the process of developing a <italic>Dockerfile</italic> are perceived as time-consuming, especially when the respondents are beginners with this technology. We also found that solving issues using trial-and-error approaches is very common and that many developers do not use ancillary tools to support the development of <italic>Dockerfiles</italic> and <italic>docker-compose.yml</italic> files.
|