06-results.tex
14.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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
\section{Results}
\label{sec:results}
%TODO: Talvez esse paragráfo tem que está no Research Design
%%
The case study was analyzed and divided into two phases according to the project
management model. In the second phase (after one year of execution), several
practices have been applied to harmonize the cultural and organizational
divergences of the institutions involved.
%%
At the end of the project, an empirical
model of management and development process was created by aligning experiences
from the FLOSS universe, academic research and bureaucracies needed by the
government. In this section, we present by context the practices adopted in this
second phase and show the benefits generated by its deployment, as summarized
in the Table \ref{practices-table}.
%% TODO: explicar a estrutura e cada campo da tabela
\begin{table}[]
\centering
\resizebox{\textwidth}{!}{%
\begin{tabular}{ | m{4cm} m{10cm} m{10cm} | }
\hline
\textbf{Decision} & \textbf{Practice Explanation} & \textbf{Benefits} \\ \hline
\textbf{Project management and communication on the developing platform itself}
&
\begin{itemize}
\item Migration of project management and communication into
the platform under development using its integrated software components Gitlab
and Mailman
\end{itemize} &
\begin{itemize}
\item Confidence in developed code;
\item Transparency and efficiency in communication;
\item Easier monitoring and
increase interactions between development team and public servants;
\item Organically documentation and records generation; \end{itemize} \\ \hline
\textbf{Bring together government staff and development team} &
\begin{itemize}
\item Biweekly gov staff, senior developers and coaches met to planning and
review sprint at the UnB headquarters. \item Most of features under development
were discussed on Gitlab Issue Tracker. \item Only strategic decisions or
bureaucratic issues involve board directors. \item Continuous Delivery \end{itemize} &
\begin{itemize}
\item Reduce communication misunderstood and better meet expectations of both sides;
\item Improve understanding of collaborative development by MPOG staff and increase their confidence for collaborative projects with the university;
\item Aligning both side pace to execute project-related activities (Empathy between gov and academia side)
\item Improving translation from one development process to the other;
\end{itemize} \\ \hline
\textbf{Divide development team in "component" fronts} &
\begin{itemize}
\item The development was divided into four fronts with a certain self-organization of tasks.
\item IT market professionals with recognized experience on each front were hired to work in person or remotely.
\item For each front, there was at least one senior developer and the role of coach.
\item The meta-coach role was also defined to coordinate tasks between teams. \end{itemize} &
\begin{itemize}
\item Helping conciliation of development processes and decision-making;
\item Creating support-points for students, senior developers, and gov staff;
\item Transfering of knowledge from industry and FLOSS community to both academia and government; \end{itemize}\\ \hline
\end{tabular}%
}
\caption{Empirical SPB management method and its benefits}
\label{practices-table}
\end{table}
\subsection{Project management and communication on the developing platform
itself}
After nine months of project activities, the first version of new SPB Portal was
released. From this point, we started to migrate the management and
communication interactions to the platform under development. In short, Wiki
feature was used for meeting logging, defining goals, sprint planning, and
documentation of deployment processes and administration resources guide. Issue
tracker was used for discussing requirements, monitoring the features under
development, registering changes, and validating functionalities delivered. The
whole team used Mailing list to defining schedules of meetings and deliveries
and also to collaborative definition of requirements.
Our surveys report a \textbf{transparency and efficiency in communication}.
Senior developers and students used mostly via Mailing list (100\%) and Issue
Tracker (62.5\%). Developers and MPOG staff interacted mostly via Mailing List
(87.5\%) and Issue tracker (50\%). For example, a MPOG IT analyst said that the
"communication goes far beyond that, you communicate to everyone in the project
everything that was happening. We did not use emails, we use the mailing list
more and avoid e-mails, it helped a lot because everything was public and did
not pollute our mailbox. You wanted to know something, could go there and look
at what was happening."
Migrating to SPB platform also provided an \textbf{easier monitoring and
increase interactions between development team and public servants by
coordinators}. As shown by collected data, 775 issues and 4,658 issue comments
was registered during the project in the main repository (without considering
the software repositories that integrated the platform) within the SPB
platform. The issues have 59 different authors (8 from MPOG staff), and
commented by 64 different users (9 form MPOG staff and users). Considering the
most active issues those that have 10 or more comments, in a set of 84 issues,
MPOG staff authored 36 issue (about 43\% of 84 issues with higher level of
interaction). An MPOG analyst highlighted that “there was a lot of evolution,
a lot of communication via Gitlab". This interaction also led MPOG staff to
\textbf{confidence in developed code}: "Everything was validated, we tested the
features and the project was developed inside the platform, so that the feature
was validated in the development of the software itself. [..] From the moment
we installed it, and began to use it for development, this validation was
constant. We felt confident about the features".
One of the main concerns of traditional approach is meticulous documentation of
software and development steps. With this aforementioned practice, we could
meet this government demand without bureaucracies and changes in our
development process, generating \textbf{organically documentation and records
generation} in the platform itself, as one of the MPOG response evidenced: "For
me it was a lot of learning, there is a lot of things documented in the e-mails
and also there in the portal itself of what happened in the project. At any
moment we can go there and see how it worked, how the person did, and manages
to salvage those good points."
\subsection{Bringing together government staff and development team}
The MPOG analysts observed communication noise in the dialogue between them and
their superiors and in the dialogues with the development team that were
intermediated by the superiors. They said that direct dialogue with the
development team and biweekly visits to the university's lab \textbf{reduce
communication misunderstood}. "At this point, the communication started to
change.. started to improve." According to one of the interviewees this new
dynamic unified the two sides: "I believe it was very positive, we also liked to
go there, to interact with the team. I think it brought more unity, more
integration into the project". The participation of the MPOG staff was also
considered positive by {72.9\%} of the students of them and to {81.1 \%} of them
think the presence of MPOG staff in sprint ceremonies was important for the
development. In addition, to \textbf{better meet expectations of both sides}
regarding the requirements developed, {75.6 \%} of students believe that writing
the requirements together with the MPOG staff was very important. According to
one of them "Joint planning and timely meetings were very important for
understanding the needs of MPOG".
One of the consequences of this direct government-academia interaction in
laboratory was empathy, as reported by one of the interviewees "You know people
in person and it makes such a big difference because it causes empathy. You
already know who that person is, it's not just a name". This subjectively helped
to \textbf{align both activities execution pace}. The teams' synchronization was
reinforced with the implementation of a Continuous Delivery pipeline. The
benefits of this approach were presented in our previous work \cite {?} and
corroborate these research results. To 81.1\% of students and 75\% of senior
developers, deploying new versions of the SPB portal in production was a
motivator during the project.
One of the MPOG analyst interviewed also noted these releases also helped to
\textbf{overcome the government bias regarding low productivity of collaborative
projects with academia}: ”At first, the government staff had a bias that
universities do not deliver. We overcame that bias in the course of the project.
We deliver a lot and with quality. Today, I think if we had paid the same amount
for a company, it would not have done what was delivered and with the quality
that was delivered with the price that was paid.” Additionally, the deployment
in production of each new version also \textbf{improve the translation of the
process from one side to the other}, as mentioned by MPOG analyst ”We had an
overview at the strategic level. When we went down to the technical level, plan
the release every four months was difficult. But in the end, I think this has
not been a problem. A project you are delivering, the results are going to
production, the code is quality, the team is qualified/capable and the project
is doing well, it does not impact as much in practice”
%\subsubsection{Organization of the project in teams for each front, with a
%undergraduate student as coach and at least one senior developer}
%
%\begin{itemize}
% \item \textit{Four fronts: Colab, Noosfero, DevOps and Front-End/UX}
% \item \textit{Definition of the role of team coaches and meta-coach,
%selected from undergraduate students group}
% \item \textit{Hiring professionals from the IT market for face-to-face or
%remote work, specialists in the software components}
%\end{itemize}
%
%\paragraph{Benefits}
%
%\begin{itemize}
% \setlength\itemsep{1em}
% \item \textit{Help to conciliate development processes and decision-making}
% \subitem {62,5\%} of senior developers believe they have helped MPOG staff
%to more clearly express their requests
% \subitem {87,5\%} of seniors agreed with the project development process.
%For 37.5\% this process was little similar to their previous experiences, for
%the others there was a certain similarity.
% \subitem {62,5\%} of seniors did not understand MPOG's project management
%process. {50\%} of them believe their project productivity was affected by
%MPOG's project management process.
% \subitem Senior Dev: "I think my main contribution was to have balanced
%the relations between the MPOG staff and the UnB team"
% \subitem Senior Dev: "When I entered the project, the client had a
%disproportionate view of how to make explicit the requirements. They were still
%talking about use cases and were extremely concerned about validation processes
%and acceptance of these documents."
% \subitem MPOG: "You had the reviewers, who were the original developers of
%the software, that gave you confidence and confidence in the code."
%%
% \item \textit{Create support and reference points for students, senior
%developers, and government staff}
% \subitem {89.1\%} of students believe that the presence of the leader was
%essential to the running of Sprint
% \subitem {87.5\%} of seniors believe that the presence of team leaders was
%essential for their interaction with the team
% \subitem MPOG: "It interacted more with the project coordinator and team
%coaches (noosfero, colab, visual identity). Interacted with coaches by mailing
%list, hangouts The reason was usually to elucidate requirements, to ask
%questions about requirements, to understand some functionality. "
% \subitem MPOG: "There was interaction with the other [non-coaches] because
%they also participated in the bi-weekly meetings (sprints), but it was more
%with coaches."
% \subitem MPOG: "Access to coaches was faster, because we were in much more
%interaction with leaders than with senior developers. Sometimes the coaches
%brought the question to the senior developers."
%%
% \item \textit{Transfer of knowledge from industry and FLOSS community to
%both academia and government}
% \subitem {62.5\%} of senior developers believe that they have collaborated
%in the relationship between the management and development processes of the two
%institutions
% \subitem {100\%} of the students we interviewed believe that working with
%senior developers was important during the project
% \subitem {91.\%} of students also believe that working with seniors was
%important for learning
% \subitem {75\%} of senior developers believe that 'Working in pairs with a
%senior' and 62.5% who 'Participate in joint review tasks' were the tasks with
%the involvement of them that most contributed to the evolution of students in
%the project.
% \subitem {75\%} of senior developers believe that in guiding a student,
%this knowledge was widespread among the other students on the team.
% \subitem MPOG: "On the side of UnB, what we perceived so strongly was that
%the project took a very big leap when the original developers of the software
%(the official software development) were hired in the case of Noosfero and
%Colab [..] Because they had a guide on how to develop things in the best way
%and were able to solve non-trivial problems and quickly "
%\end{itemize}
%
%%* Filtrar a comunicação por níveis de maturidade/experiência e
%responsabilidades
%%MPOG: "Eu acho que esses pontos de conflito eram muito mais fáceis de lidar
%com a equipe do que com a própria coordenação. [..] Eu acho que tem uma
%diferença também de papel tem uma diferença de postura. Eu acho que a
%relação com a equipe, embora ela fosse saudável, eu acho que a equipe não
%tinha tanta autonomia quanto à coordenação tinha. Então talvez fosse mais
%difícil com a coordenação e não com a equipe, porque a equipe ela sabia o
%limite dela e a partir dali ela não agia mais, ela já convocava a
%coordenação para lidar (a gerência)."