06-results.tex 13.5 KB
\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{Split development team into priority work fronts with IT market specialists} &
\begin{itemize}
\item The development was divided into four fronts (DevOps / UX / Noosfero / Colab) 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”

\subsection{Split development team into priority work fronts with IT market
specialists}

Four teams were defined to dedicated to the main development demands of the
portal: UX, DevOps, Colab and Noosfero. External developers with vast experience
in the SPB platform software components and professionals with experience in
front-end and UX were hired. These professionals also contributed to 
disseminate practices adopted in the industry and in the free software
communities to other project members. {87.5\%} of seniors agreed with the
project development process. For 62.5\% this process has a good similarity to
their previous experiences. Their experience helped to \textbf{reconcile development
processes and decision making}, as stated by one of the respondent developers
"I think my main contribution was to have balanced the relations between the
MPOG staff and the UnB team". {62.5\%} of senior developers believe they have
collaborated in the relationship between the management and development
processes of the two institutions and {62.5\%} asserted that helped MPOG
staff to more clearly express their requests. {62.5\%} of them did not
understand MPOG's project management process and {50\%} believe their project
productivity was affected by MPOG's project management process. For the
government, these professionals gave credibility to the development "You had
the reviewers, who were the original developers of the software, that gave
you confidence and confidence in the code."

In addition, with these professionals was possible to \textbf{transferred
knowledge of industry and free software to government and academia}. Working
with senior developers was important for all student-respondents during the
project. {91\%} of them also believe that working with professionals was
important for learning. {75\%} of senior developers believe that 'Working in
pairs with a senior' and 62.5\% that 'Participate in joint review tasks' were
the tasks with the involvement of them that most contributed to the evolution
of students in the project. And, in guiding a students, {75\%} believe that
this knowledge was widespread among the others in the team. This acquisition
of knowledge was also noted by the government, which stated "On the side of
UnB, what we perceived was that the project was very big leap when the
original software developers 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 "

The fronts also gained more autonomy to manage their activities. The role
of meta-coach was defined among the students, to coordinate the interactions
between teams and coach to coordinate each front. Coaches have become a \textbf{point
of reference for the development process}. {89.1\%} of students said that the
presence of the coach was essential to the running of Sprint, and for {87.5\%}
of senior developers coaches was essential for their interaction with the team.
MPOG analysts saw coaches as facilitators for their activities and for
communication with the development team. One of the interviewees said "I
interacted more with the project coordinator and team coaches.", " The reason
for this was that the coaches were more likely to meet the requirements, to
ask questions about requirements, to understand some features. interaction with
leaders than with senior developers. Sometimes the coaches brought the question
to the senior developers. "


%%* 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)."