@article{HippKonrad2022, author = {Hipp, Lena and Konrad, Markus}, title = {Has Covid-19 increased gender inequalities in professional advancement?}, series = {Journal of family research}, volume = {34}, journal = {Journal of family research}, number = {1}, publisher = {University of Bamberg Press}, address = {Bamberg}, issn = {2699-2337}, doi = {10.20377/jfr-697}, pages = {134 -- 160}, year = {2022}, abstract = {Objective: This article analyzed gender differences in professional advancement following the outbreak of the Covid-19 pandemic based on data from open-source software developers in 37 countries. Background: Men and women may have been affected differently from the social distancing measures implemented to contain the Covid-19 pandemic. Given that men and women tend to work in different jobs and that they have been unequally involved in childcare duties, school and workplace closings may have impacted men's and women's professional lives unequally. Method: We analyzed original data from the world's largest social coding community, GitHub. We first estimated a Holt-Winters forecast model to compare the predicted and the observed average weekly productivity of a random sample of male and female developers (N=177,480) during the first lockdown period in 2020. To explain the crosscountry variation in the gendered effects of the Covid-19 pandemic on software developers' productivity, we estimated two-way fixed effects models with different lockdown measures as predictors - school and workplace closures, in particular. Results: In most countries, both male and female developers were, on average, more productive than predicted, and productivity increased for both genders with increasing lockdown stringency. When examining the effects of the most relevant types of lockdown measures separately, we found that stay-at-home restrictions increased both men's and women's productivity and that workplace closures also increased the number of weekly contributions on average - but for women, only when schools were open. Conclusion: Having found gender differences in the effect of workplace closures contingent on school and daycare closures within a population that is relatively young and unlikely to have children (software developers), we conclude that the Covid-19 pandemic may indeed have contributed to increased gender inequalities in professional advancement.}, language = {en} } @book{DuerschReinMattisetal.2022, author = {D{\"u}rsch, Falco and Rein, Patrick and Mattis, Toni and Hirschfeld, Robert}, title = {Learning from failure}, number = {145}, publisher = {Universit{\"a}tsverlag Potsdam}, address = {Potsdam}, isbn = {978-3-86956-528-6}, issn = {1613-5652}, doi = {10.25932/publishup-53755}, url = {http://nbn-resolving.de/urn:nbn:de:kobv:517-opus4-537554}, publisher = {Universit{\"a}t Potsdam}, pages = {87}, year = {2022}, abstract = {Regression testing is a widespread practice in today's software industry to ensure software product quality. Developers derive a set of test cases, and execute them frequently to ensure that their change did not adversely affect existing functionality. As the software product and its test suite grow, the time to feedback during regression test sessions increases, and impedes programmer productivity: developers wait longer for tests to complete, and delays in fault detection render fault removal increasingly difficult. Test case prioritization addresses the problem of long feedback loops by reordering test cases, such that test cases of high failure probability run first, and test case failures become actionable early in the testing process. We ask, given test execution schedules reconstructed from publicly available data, to which extent can their fault detection efficiency improved, and which technique yields the most efficient test schedules with respect to APFD? To this end, we recover regression 6200 test sessions from the build log files of Travis CI, a popular continuous integration service, and gather 62000 accompanying changelists. We evaluate the efficiency of current test schedules, and examine the prioritization results of state-of-the-art lightweight, history-based heuristics. We propose and evaluate a novel set of prioritization algorithms, which connect software changes and test failures in a matrix-like data structure. Our studies indicate that the optimization potential is substantial, because the existing test plans score only 30\% APFD. The predictive power of past test failures proves to be outstanding: simple heuristics, such as repeating tests with failures in recent sessions, result in efficiency scores of 95\% APFD. The best-performing matrix-based heuristic achieves a similar score of 92.5\% APFD. In contrast to prior approaches, we argue that matrix-based techniques are useful beyond the scope of effective prioritization, and enable a number of use cases involving software maintenance. We validate our findings from continuous integration processes by extending a continuous testing tool within development environments with means of test prioritization, and pose further research questions. We think that our findings are suited to propel adoption of (continuous) testing practices, and that programmers' toolboxes should contain test prioritization as an existential productivity tool.}, language = {en} }