04-results.tex
12.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
\section{Results}
\label{sec:results}
The SPB portal project had two phases according to the traceability of
project management activities. The first one, between January 2014 and March
2015, is non-traceable since only the universities managed the development
activities. The communication between government and academia was, generally, in
private channels, such as professional e-mails, personal meetings, and
telephone calls. Therefore, the quantitative data found for this period
are not conclusive or have little expressiveness, and we do not examine them.
The second phase, from April 2015 to the end of the project (June 2016), has
meaningful data. Much of the management and communication
activities were recorded and published on online channels and tools. During
this period, several FLOSS practices and agile values were applied to the
development process to harmonize the cultural and organizational divergences of
the institutions involved. At the end of the project, an empirical approach to
communication and management was built using the development leaders'
experiences in FLOSS and agile projects to meet the government bureaucracies.
\textit{\textbf{Use of the system under development to develop the system itself}}.
Due to the platform features for software development and
social network, the development coordinators decided to use the platform under
construction to develop the system itself. Gradually, in addition to development
activities, government and academia migrated the project management and the
communication between teams to the portal environment.
In short, the wiki feature was used for logging meetings, defining
goals, planning sprints, documenting deployment procedures and user guides. The
issue tracker was used for discussing requirements, monitoring features under
development, requesting and recording changes, and validating the delivered
functionalities. Finally, the mailing list was used by the entire team for
collaborative construction of requirements, defining schedules, and scheduling
meetings between institutions.
Our surveys report Mailing list (100\%) and Issue Tracker (62.5\%) as the main
means of interaction between senior developers and interns. Developers and MPOG
staff also interacted mostly via Mailing List (87.5\%) and Issue tracker
(50\%). According to one of the interviewees, this movement made the
\textbf{communication more transparent and efficient}. An MPOG analyst said
that \textit{``Communicating well goes far beyond the speed. It means enabling
someone to tell everyone about everything that is happening in the project. We
did not use emails, we use more mailing list and avoid emails. This usage
helped us a lot because everything was public and did not pollute our email
box. So, when you wanted to know something, you could access the SPB list to
see everything that was happening.''}.
Migrating to the SPB platform also \textbf{easied monitoring of activities and
increased interactions between developers and public servants}. The data
collected from the repository highlight the frequent use of the platform by the
academic and the government teams. In the last 15 months of the project, the
central repository issues were opened by 59 different authors, 8 of them MPOG
agents. These issues received comments from 64 distinct users, 9 of them from
MPOG. When we consider the issues with more interactions, those which had ten
comments or more, we notice that the government team also felt comfortable in
using the tool to interact directly with the development team. In a set of 102
issues with more interactions, MPOG staff created 43 of them (this represents
42\% of the most active issues). For the MPOG analysts, interaction via
repository improved communication. \textit{``There was a big evolution, we
increased our communication via Gitlab.''}. Migrating to the platform also led MPOG
staff to \textbf{trust the developed code}: \textit{``Everything was validated.
We tested the functionalities and developed the project on the SPB platform
itself. Consequently, the use of the system validated most of its features.
From the moment we began to use it for development, this validation was
constant. We felt confident in the code developed.''}.
The abovementioned decision also collaborated to meet the government's demand
for meticulous documentation of the software design and stages of development
without bureaucratizing or modifying the development process. The team started
to \textbf{produce documentation and records organically} on the platform
itself, as mentioned in one of the MPOG responses: \textit{``For me, it was a
great learning experience. There are a lot of things documented in emails as
well as in the portal itself. We can access the tools at any time and find
out how we develop a solution. Therefore, we can remember the project positive
points.''}.
\textit{\textbf{Brings together government staff and development team}}.
In the first phase of the project, the interviewed MPOG
analysts did not participate in any direct interaction with any university
representative, even though they were the ones in charge of the government in
ensuring the collaboration agreement and the delivery of the products. Because
of this, they relied on feedback from their superiors on inter-institutional
meetings. They reported that there was significant communication noise in the
internal dialogues with their superiors, as well as between their superiors and
the development team.
In the second phase of the project, these analysts came to represent the
government directly in the dialogues with the academia, and they started to
visit bi-weekly the university's laboratory. One of the analysts believed that
\textit{``at this point, the communication started to change.''}. The new
dynamic \textit{reduced communication misunderstandings and unified both
sides}, as reported by another interviewee: \textit{``It was very positive. We
liked to go there and to interact with the team. I think it brought more unity,
more integration into the project.''}. {73\%} of the interns considered positive
the direct participation of the MPOG staff, and {81\%} of them believed the
presence of government staff in sprint ceremonies was relevant for the project
development. For 76\% of the interns, writing the requirements together with the
MPOG staff was very important to \textbf{better meet expectations of both
sides}. According to one of them, \textit{``Joint planning and timely meetings
were very important for understanding the needs of MPOG.''}.
The closest dialogue between government and academia generated empathy, as
reported by one of the interviewees: \textit{``Knowing people in person makes a
big difference in the relationship because it causes empathy. You know who that
person is, it's not simply a name.''}. This point helped to \textbf{synchronize
the execution pace of activities}: \textit{``When we visited the lab and met
the team, we realized that this encouraged us to validate resources faster and
give faster feedback to the team. In return, they also quickly answered us any
question.''}.
The implementation of a Continuous Delivery pipeline also reinforced the teams'
synchronization \cite{siqueira2018cd} . For 81\% of the interns and 75\% of the senior
developers, deploying new versions of the SPB portal in production was a
motivator during the project. On the government side, this approach helped to
\textbf{overcome the government bias toward low productivity of
collaborative projects with academia}, as mentioned by themselves:
\textit{``Government staff has a bias that universities do not deliver
products. However, in this project, we made many deliveries with high quality.
Nowadays, I think if we had paid the same amount for a company, it would not
have done the amount of features we did with the technical quality we have.''}. Additionally, the
deployment of each new version also \textbf{share a common understanding of the
process from one side to the other}, as mentioned by a MPOG analyst: \textit{``We
had a strategic level view. When we went to the technical level, we had
difficulty to plan each four-month release. However, in the final stages of the
project, I realized that this was not a problem because the team made the
deliveries and the results were available in production. The team was
qualified, the code had quality, and the project was well executed. So in
practice, our difficulty interpreting the technical details did not impact
release planning.''}.
\textit{\textbf{Organized development team into priority fronts, and for each one, hire at least one specialist from the IT market}}.
The development team had four work areas divided by the main demands of the
project: User Experience, DevOps, Integration of Systems, and Social
Networking. For each segment, at least one professional in the IT market was
hired to raise the quality of the product. Senior developers have been selected
based on their vast experience in FLOSS systems and their knowledge on tools
used in the project.
The presence of senior developers in the project contributed to
\textbf{conciliate the development processes of each institution and make
better technical decisions}, as quoted in one of the answers to the senior
developer's questionnaire: \textit{``I think my main contribution was to
balance the relations between the MPOG staff and the university team.''}. {63\%} of
the senior developers believed they have collaborated to conciliate the management
and development process between the two institutions and also {63\%} of them
helped MPOG staff express their requests more clearly. Government
analysts were also more open to suggestions from these developers:
\textit{``They are developers of the upstream projects of the systems that
integrate the platform. They conveyed trust, and then we trust in the developed
code.''}. According to questionnaire responses, they largely agreed with the
project development process. For 63\%, this process has close similarity to
their previous experiences. In contrast, {62.5\%} of them did not understand
the MPOG's project management process and {50\%} believed this process could
affect their project productivity.
The senior developers were also responsible for \textbf{improving the management
and technical knowledge} of the interns about practices from industry and open
source projects. {91\%} of the interns believed that working with professionals
was essential for learning. Working with senior developers was important during
the project for all of them. {75\%} of the senior developers believed that ``Working
in pairs with a senior'' and 63\% that ``Participate in joint review tasks''
were the tasks with the involvement of them that most contributed to the
evolution of university interns in the project. {75\%} believed that the knowledge
shared by them to one intern was widespread among the others in the team.
Government analysts also pointed this knowledge sharing: \textit{``On
the side of the universities, what we noticed was a significant improvement in the platform
with the hiring of the original developers of the systems. They had a guide on
how to best develop each feature and were able to solve non-trivial problems
quickly.''}.
Organizing the development team and hiring senior developers allowed each team to
\textbf{self-organize and gain more autonomy in the management of their tasks}.
There was a development coach to lead each team, and a ``meta-coach'' supported
all of them in their internal management activities. The coaches (most advanced
university interns) were points of reference in the development process. {89\%} of the
interns said that the presence of the coach was essential to the sprint's
running, and for {88\%} of the senior developers coaches was essential for their
interaction with the team. MPOG analysts saw coaches as facilitators their
activities and communication with the development team. They said \textit{``I
interacted more with the project coordinator (professor) and team coaches''},
\textit{``Usually, we contact a coach to clarify some requirements or to
understand some feature. We interact more with coaches because they are more
accessible than senior developers. Sometimes the coach would take our question
to the senior developer.''}.
%TODO: talvez encaixar aqui a troca de papéis