Commit 29eee8b87c770e56afd61b3517da771634e9761f

Authored by Paulo Meireles
2 parents 3493f7a1 d9c5b447

Merge branch 'oss_2018' of softwarepublico.gov.br:softwarepublico/articles into oss_2018

icse2018/content/03-relatedwork.tex
@@ -16,8 +16,8 @@ are correlated to the implementation of agile methods. @@ -16,8 +16,8 @@ are correlated to the implementation of agile methods.
16 Some works also discuss how academia can collaborate with the industry in the 16 Some works also discuss how academia can collaborate with the industry in the
17 management of software projects. Chookittikul et al. evaluates the increasing 17 management of software projects. Chookittikul et al. evaluates the increasing
18 use of the agile methods by software development organizations in Thailand and 18 use of the agile methods by software development organizations in Thailand and
19 -suggests universities create a curricula which develops in their undergraduate  
20 -students practical skills required by industry (mainly agile practices) to 19 +suggests universities create curricula which develop in their undergraduate
  20 +students' practical skills required by industry (mainly agile practices) to
21 encourage the software industry growth in the region \cite{cho2011gap}. 21 encourage the software industry growth in the region \cite{cho2011gap}.
22 Sandberg et al. report the implementation of Scrum in a collaborative research 22 Sandberg et al. report the implementation of Scrum in a collaborative research
23 consortium between industry and academia (involving ten industry partners and 23 consortium between industry and academia (involving ten industry partners and
@@ -26,9 +26,9 @@ five universities in Sweden) \cite{sandberg2017iacollaboration}. @@ -26,9 +26,9 @@ five universities in Sweden) \cite{sandberg2017iacollaboration}.
26 New variables arise when a different approach to project management is 26 New variables arise when a different approach to project management is
27 introduced to complex and large-scale organizations, such as the public 27 introduced to complex and large-scale organizations, such as the public
28 administration. Alleman et al. describe a production deployment for the US 28 administration. Alleman et al. describe a production deployment for the US
29 -government, focus on describing the methodology applied to address long term 29 +government, focus on describing the methodology applied to address long-term
30 planning and value estimation \cite{alleman2003making}. Agile methods 30 planning and value estimation \cite{alleman2003making}. Agile methods
31 -application on the Brazilian public sector are approached by Melo et al. \cite{melo2013agileBr} and De 31 +application in the Brazilian public sector are approached by Melo et al. \cite{melo2013agileBr} and De
32 Sousa et al. \cite{de2016using}, both are experiences limited 32 Sousa et al. \cite{de2016using}, both are experiences limited
33 to pilot projects. Not production-ready one that will provide more accurate 33 to pilot projects. Not production-ready one that will provide more accurate
34 data with the real world. 34 data with the real world.
icse2018/content/04-methods.tex
1 \section{Research Design} 1 \section{Research Design}
2 \label{sec:researchdesign} 2 \label{sec:researchdesign}
3 3
4 -The focus on this paper is investigating practical ways to reconcile cultural 4 +The focus of this paper is investigating practical ways to reconcile cultural
5 differences in software development process between government and academia, 5 differences in software development process between government and academia,
6 without modifying their internal processes. Our analysis was guided by the 6 without modifying their internal processes. Our analysis was guided by the
7 following research questions: 7 following research questions:
@@ -38,11 +38,11 @@ integrated using a system-of-systems software (Colab) \cite{meirelles2017spb}. @@ -38,11 +38,11 @@ integrated using a system-of-systems software (Colab) \cite{meirelles2017spb}.
38 38
39 The academic team carried out development activities in the Advanced Laboratory 39 The academic team carried out development activities in the Advanced Laboratory
40 of Production, Research and Innovation in Software Engineering (LAPPIS) at UnB. 40 of Production, Research and Innovation in Software Engineering (LAPPIS) at UnB.
41 -The project management and development process in this laboratory is usually 41 +The project management and development process in this laboratory are usually
42 executed adopting empirical practices from open source communities and agile 42 executed adopting empirical practices from open source communities and agile
43 methodologies. For this project, a total of 42 undergraduate students and two 43 methodologies. For this project, a total of 42 undergraduate students and two
44 professors participated in the development team. Six IT professionals were also 44 professors participated in the development team. Six IT professionals were also
45 -hired as senior developers due their experiences in open source projects and 45 +hired as senior developers due to their experiences in open source projects and
46 two designers specialized in User eXperience. 46 two designers specialized in User eXperience.
47 47
48 The government team was composed of one director, one coordinator, and two IT 48 The government team was composed of one director, one coordinator, and two IT
@@ -63,7 +63,7 @@ the project, this workflow proved to be inefficient. Conflicts between the @@ -63,7 +63,7 @@ the project, this workflow proved to be inefficient. Conflicts between the
63 internal management processes and differences in pace and goals of each 63 internal management processes and differences in pace and goals of each
64 institution were compromising the platform development. To improve the project 64 institution were compromising the platform development. To improve the project
65 management process we have adopted and evolute a set of empirical practices 65 management process we have adopted and evolute a set of empirical practices
66 -based on open source ecossystems and agile methodologies, establishing an empirical 66 +based on open source ecosystems and agile methodologies, establishing an empirical
67 management model. 67 management model.
68 68
69 \subsection{Survey and data collection} 69 \subsection{Survey and data collection}
@@ -72,7 +72,7 @@ We divided the UnB development team into two groups of target participants @@ -72,7 +72,7 @@ We divided the UnB development team into two groups of target participants
72 according to their roles during the project: \textit{UnB Interns} and 72 according to their roles during the project: \textit{UnB Interns} and
73 \textit{Senior Developers}. For each group, we designed an online survey with 73 \textit{Senior Developers}. For each group, we designed an online survey with
74 topics related to project organization, development process, communication and 74 topics related to project organization, development process, communication and
75 -relationship between members, acquired knowledge and experience with open 75 +relationship between members, acquired knowledge, and experience with open
76 source projects. We interviewed also two \textit{MPOG analysts} who directly 76 source projects. We interviewed also two \textit{MPOG analysts} who directly
77 interacted with the development team and project development process. The 77 interacted with the development team and project development process. The
78 interview questions could be classified into four parts: Professional profile; 78 interview questions could be classified into four parts: Professional profile;
@@ -80,20 +80,20 @@ Organization, communication and development methodologies in the context of @@ -80,20 +80,20 @@ Organization, communication and development methodologies in the context of
80 government and project; Satisfaction with the developed platform; Lessons 80 government and project; Satisfaction with the developed platform; Lessons
81 learned. 81 learned.
82 82
83 -We sent the link of the online survey through emails to 42 UnB interns 83 +We sent the link to the online survey through emails to 42 UnB interns
84 (undergraduate students), who participated in any time of the project as 84 (undergraduate students), who participated in any time of the project as
85 -developer receiving scholarship. We received a total of 37 responses. Their 85 +developer receiving a scholarship. We received a total of 37 responses. Their
86 average age is 25 years old and 91.9\% of them are male. Currently, 35.1\% 86 average age is 25 years old and 91.9\% of them are male. Currently, 35.1\%
87 -continue at university as undergraduate or graduate students, 18.9\% work as  
88 -developer in a small company and 18.9\% in medium or large companies, 10.8\% 87 +continue at the university as undergraduate or graduate students, 18.9\% work as
  88 +a developer in a small company and 18.9\% in medium or large companies, 10.8\%
89 are entrepreneurs, 8.1\% are unemployed and the others work as teachers or 89 are entrepreneurs, 8.1\% are unemployed and the others work as teachers or
90 civil servants. 43.2\% said the SPB project was their first experience with 90 civil servants. 43.2\% said the SPB project was their first experience with
91 open source software. 91 open source software.
92 92
93 -We also sent the link of the online survey through emails to eight senior 93 +We also sent the link to the online survey through emails to eight senior
94 developers (IT professionals). All of them answered the questionnaire. 94 developers (IT professionals). All of them answered the questionnaire.
95 Their average age is 32 years old and 87.5\% are male. They have an average of 95 Their average age is 32 years old and 87.5\% are male. They have an average of
96 -11 years of experience in the IT market, and currently 62.5\% of respondents 96 +11 years of experience in the IT market, and currently, 62.5\% of respondents
97 are company employees, 37.5\% are freelance developers, 25\% are master's 97 are company employees, 37.5\% are freelance developers, 25\% are master's
98 degree students and 25\% entrepreneurs. They have worked on average in 5 98 degree students and 25\% entrepreneurs. They have worked on average in 5
99 companies and participated in 4 to 80 projects. They participated in this 99 companies and participated in 4 to 80 projects. They participated in this
@@ -111,11 +111,11 @@ publicly available on the SPB platform. We collected from the repository @@ -111,11 +111,11 @@ publicly available on the SPB platform. We collected from the repository
111 manager tool of the platform all open issues and commits related to the main 111 manager tool of the platform all open issues and commits related to the main
112 repository of the platform, that is, the development repositories of the 112 repository of the platform, that is, the development repositories of the
113 integrated software were not considered. For issues, we collected project 113 integrated software were not considered. For issues, we collected project
114 -name, author of the issue, opening date, issue title, and number of comments.  
115 -We also collected informations about total open issues, total commits,  
116 -different authors of issues, total of different authors of issues, total of  
117 -comments, authors of comments, total of authors other than comments. During  
118 -the period from April 2015 to June 2016, 879 issues was opened by 59 distinct 114 +name, author of the issue, opening date, issue title, and the number of comments.
  115 +We also collected information about total open issues, the total commits,
  116 +different authors of issues, the number of different authors of issues, the number of
  117 +comments, authors of comments, the number of authors other than comments. During
  118 +the period from April 2015 to June 2016, 879 issues were opened by 59 distinct
119 authors with a total of 4,658 comments and 64 distinct commentators. The 119 authors with a total of 4,658 comments and 64 distinct commentators. The
120 development team made 3,256 commits in the repository provided by SPB platform. 120 development team made 3,256 commits in the repository provided by SPB platform.
121 121
icse2018/content/05-results.tex
@@ -20,14 +20,14 @@ feature was used for meeting logging, defining goals, sprint planning, and @@ -20,14 +20,14 @@ feature was used for meeting logging, defining goals, sprint planning, and
20 documentation of deployment processes and administration resources guide. Issue 20 documentation of deployment processes and administration resources guide. Issue
21 tracker was used for discussing requirements, monitoring the features under 21 tracker was used for discussing requirements, monitoring the features under
22 development, registering changes, and validating functionalities delivered. 22 development, registering changes, and validating functionalities delivered.
23 -Finally, the whole team used Mailing list to defining schedules of meetings and  
24 -deliveries and also to collaborative definition of requirements. 23 +Finally, the whole team used the Mailing list to defining schedules of meetings and
  24 +deliveries and also to the collaborative definition of requirements.
25 25
26 -Our surveys reports Mailing list (100\%) and Issue Tracker (62.5\%) as the main 26 +Our surveys report Mailing list (100\%) and Issue Tracker (62.5\%) as the main
27 means of interaction between senior developers and undergraduates. Developers 27 means of interaction between senior developers and undergraduates. Developers
28 and MPOG staff also interacted mostly via Mailing List (87.5\%) and Issue 28 and MPOG staff also interacted mostly via Mailing List (87.5\%) and Issue
29 tracker (50\%). According to research findings, this movement made 29 tracker (50\%). According to research findings, this movement made
30 -\textbf{communication more transparent and efficient}. A MPOG IT analyst said 30 +\textbf{communication more transparent and efficient}. An MPOG IT analyst said
31 that the \textit{``Communicating well goes far beyond the speed, it is someone 31 that the \textit{``Communicating well goes far beyond the speed, it is someone
32 being able to communicate to everyone everything that is happening in the 32 being able to communicate to everyone everything that is happening in the
33 project. We did not use emails. We use more mailing list and avoid e-mails. It 33 project. We did not use emails. We use more mailing list and avoid e-mails. It
@@ -35,21 +35,21 @@ helped a lot because everything was public and did not pollute our mailbox. You @@ -35,21 +35,21 @@ helped a lot because everything was public and did not pollute our mailbox. You
35 wanted to know something, could go there and look at what was happening''}. 35 wanted to know something, could go there and look at what was happening''}.
36 36
37 Migrating to SPB platform also provided an \textbf{easier monitoring and 37 Migrating to SPB platform also provided an \textbf{easier monitoring and
38 -increase interactions between development team and public servants by 38 +increase interactions between the development team and public servants by
39 coordinators}. As shown by collected data, in the last 15 months of the 39 coordinators}. As shown by collected data, in the last 15 months of the
40 -project, the issues have 59 different authors (8 from MPOG staff), and 40 +project, the issues have 59 different authors (8 from MPOG staff) and
41 commented by 64 different users (9 from MPOG staff and users). Considering 41 commented by 64 different users (9 from MPOG staff and users). Considering
42 -issues with higher level of interaction those that have 10 or more comments, in 42 +issues with a higher level of interaction those that have 10 or more comments, in
43 a set of 102 issues, MPOG staff authored 43 issues (which represents 42\% of 43 a set of 102 issues, MPOG staff authored 43 issues (which represents 42\% of
44 -these most active issues). A MPOG analyst highlighted that \textit{``there was 44 +these most active issues). An MPOG analyst highlighted that \textit{``there was
45 a lot of evolution, a lot of communication via Gitlab''}. This interaction 45 a lot of evolution, a lot of communication via Gitlab''}. This interaction
46 also led MPOG staff to \textbf{trust developed code}: \textit{``Everything was 46 also led MPOG staff to \textbf{trust developed code}: \textit{``Everything was
47 -validated, we tested the features and the project was developed inside the  
48 -platform, so that the feature was validated in the development of the software  
49 -itself. From the moment we installed it, and began to use it for development, 47 +validated, we tested the features and we developed the project inside the
  48 +platform so that the feature was validated in the development of the software
  49 +itself. From the moment we installed it and began to use it for development,
50 this validation was constant. We felt confident in the features''}. 50 this validation was constant. We felt confident in the features''}.
51 51
52 -One of the main concerns of traditional approach is meticulous documentation of 52 +One of the main concerns of traditional approaches is meticulous documentation of
53 the software designed and the development steps. With this aforementioned 53 the software designed and the development steps. With this aforementioned
54 decision, we could meet this government demand without bureaucracies and 54 decision, we could meet this government demand without bureaucracies and
55 changes in our development process, \textbf{producting organically 55 changes in our development process, \textbf{producting organically
@@ -62,7 +62,7 @@ good points''}. @@ -62,7 +62,7 @@ good points''}.
62 \subsection{Bringing together government staff and development team} 62 \subsection{Bringing together government staff and development team}
63 63
64 The MPOG analysts observed communication noise in the dialogue between them and 64 The MPOG analysts observed communication noise in the dialogue between them and
65 -their superiors and in the dialogues with the development team that were 65 +their superiors and in dialogues with the development team,
66 intermediated by the superiors. They said that direct dialogue with the 66 intermediated by the superiors. They said that direct dialogue with the
67 development team and biweekly visits to the university's lab \textbf{reduce 67 development team and biweekly visits to the university's lab \textbf{reduce
68 communication misunderstood}: \textit{``At this point, the communication 68 communication misunderstood}: \textit{``At this point, the communication
@@ -70,7 +70,7 @@ started to change.. started to improve''}. According to another interviewee, @@ -70,7 +70,7 @@ started to change.. started to improve''}. According to another interviewee,
70 this new dynamic unified the two sides: \textit{``I believe it was very 70 this new dynamic unified the two sides: \textit{``I believe it was very
71 positive, we also liked to go there, to interact with the team. I think it 71 positive, we also liked to go there, to interact with the team. I think it
72 brought more unity, more integration into the project''}. The participation of 72 brought more unity, more integration into the project''}. The participation of
73 -the MPOG staff was also considered positive by {72.9\%} of the undegraduates 73 +the MPOG staff was also considered positive by {72.9\%} of the undergraduates
74 and to {81.1\%} of them think the presence of MPOG staff in sprint ceremonies 74 and to {81.1\%} of them think the presence of MPOG staff in sprint ceremonies
75 was important for the development. In addition, to \textbf{better meet 75 was important for the development. In addition, to \textbf{better meet
76 expectations of both sides} regarding the requirements developed, {75.6\%} of 76 expectations of both sides} regarding the requirements developed, {75.6\%} of
@@ -78,7 +78,7 @@ students believe that writing the requirements together with the MPOG staff was @@ -78,7 +78,7 @@ students believe that writing the requirements together with the MPOG staff was
78 very important. According to one of them \textit{``Joint planning and timely 78 very important. According to one of them \textit{``Joint planning and timely
79 meetings were very important for understanding the needs of MPOG''}. 79 meetings were very important for understanding the needs of MPOG''}.
80 80
81 -An imported consequence of this direct government-academia interaction in 81 +An imported consequence of this direct government-academia interaction in the
82 laboratory was empathy, as reported by one of the interviewees \textit{``You 82 laboratory was empathy, as reported by one of the interviewees \textit{``You
83 know people in person and it makes such a big difference because it causes 83 know people in person and it makes such a big difference because it causes
84 empathy. You already know who that person is, it's not just a name''}. This 84 empathy. You already know who that person is, it's not just a name''}. This
@@ -94,7 +94,7 @@ deploying new versions of the SPB portal in production was a motivator during @@ -94,7 +94,7 @@ deploying new versions of the SPB portal in production was a motivator during
94 the project. 94 the project.
95 95
96 One of the MPOG analyst interviewed also noted these releases also helped to 96 One of the MPOG analyst interviewed also noted these releases also helped to
97 -\textbf{overcome the government bias regarding low productivity of 97 +\textbf{overcome the government bias regarding the low productivity of
98 collaborative projects with academia}: \textit{``At first, the government staff 98 collaborative projects with academia}: \textit{``At first, the government staff
99 had a bias that universities do not deliver. We overcame that bias in the 99 had a bias that universities do not deliver. We overcame that bias in the
100 course of the project. We deliver a lot and with quality. Today, I think if we 100 course of the project. We deliver a lot and with quality. Today, I think if we