Compare View
Commits (2)
Showing
1 changed file
Show diff stats
oss2018/content/04-results.tex
@@ -33,18 +33,18 @@ after the project beginning. Due to the platform features for software | @@ -33,18 +33,18 @@ after the project beginning. Due to the platform features for software | ||
33 | development and social network, the UnB coordinators decided to use the system | 33 | development and social network, the UnB coordinators decided to use the system |
34 | under construction to develop the system itself. Gradually, in addition to | 34 | under construction to develop the system itself. Gradually, in addition to |
35 | development activities, government and academia migrated the project management | 35 | development activities, government and academia migrated the project management |
36 | -and communication between teams to the portal environment. In short, the wiki | 36 | +and the communication between teams to the portal environment. In short, the wiki |
37 | feature was used for logging meetings, defining goals, planning sprints, | 37 | feature was used for logging meetings, defining goals, planning sprints, |
38 | documenting deployment procedures and user guides. The issue tracker was used | 38 | documenting deployment procedures and user guides. The issue tracker was used |
39 | for discussing requirements, monitoring features under development, requesting | 39 | for discussing requirements, monitoring features under development, requesting |
40 | and recording changes, and validating the delivered funcionalities. Finally, the | 40 | and recording changes, and validating the delivered funcionalities. Finally, the |
41 | -mailing list was used by the entire team for collaboratively constructing | 41 | +mailing list was used by the entire team for collaborative construction of |
42 | requirements, defining schedules, and scheduling meetings between institutions. | 42 | requirements, defining schedules, and scheduling meetings between institutions. |
43 | 43 | ||
44 | Our surveys report Mailing list (100\%) and Issue Tracker (62.5\%) as the main | 44 | Our surveys report Mailing list (100\%) and Issue Tracker (62.5\%) as the main |
45 | means of interaction between senior developers and interns. Developers | 45 | means of interaction between senior developers and interns. Developers |
46 | and MPOG staff also interacted mostly via Mailing List (87.5\%) and Issue | 46 | and MPOG staff also interacted mostly via Mailing List (87.5\%) and Issue |
47 | -tracker (50\%). According to answers, this movement made the | 47 | +tracker (50\%). According to one of the interviewees, this movement made the |
48 | \textbf{communication more transparent and efficient}. An MPOG analyst said | 48 | \textbf{communication more transparent and efficient}. An MPOG analyst said |
49 | that \textit{``Communicating well goes far beyond the speed. It means enabling | 49 | that \textit{``Communicating well goes far beyond the speed. It means enabling |
50 | someone to tell everyone about everything that is happening in the project. We | 50 | someone to tell everyone about everything that is happening in the project. We |
@@ -53,135 +53,142 @@ us a lot because everything was public and did not pollute our email box. So, | @@ -53,135 +53,142 @@ us a lot because everything was public and did not pollute our email box. So, | ||
53 | when you wanted to know something, you could access the SPB list to see | 53 | when you wanted to know something, you could access the SPB list to see |
54 | everything that was happening''}. | 54 | everything that was happening''}. |
55 | 55 | ||
56 | -Migration to the SPB platform also \textbf{easied coordinator monitoring | 56 | +Migrating to the SPB platform also \textbf{easied coordinator monitoring |
57 | activities and increased interactions between developers and public servants}. | 57 | activities and increased interactions between developers and public servants}. |
58 | The data collected from the repository evidence the frequent use of the platform | 58 | The data collected from the repository evidence the frequent use of the platform |
59 | by the academic team and the government team. In the last 15 months of the | 59 | by the academic team and the government team. In the last 15 months of the |
60 | -project, the main project issues were opened by 59 different authors, 8 of them | 60 | +project, the main repository issues were opened by 59 different authors, 8 of them |
61 | MPOG agents. These issues received comments from 64 distinct users, 9 of them | 61 | MPOG agents. These issues received comments from 64 distinct users, 9 of them |
62 | from MPOG. When we consider the issues with much interaction, those who had ten | 62 | from MPOG. When we consider the issues with much interaction, those who had ten |
63 | -comments or more, we realized that the government team also felt more | ||
64 | -comfortable using the tool to interact directly with the development team. In a | 63 | +comments or more, we notice that the government team also felt comfortable |
64 | +with using the tool to interact directly with the development team. In a | ||
65 | set of 102 issues with much interaction, MPOG staff created 43 of them (this | 65 | set of 102 issues with much interaction, MPOG staff created 43 of them (this |
66 | -represents 42\% of the most active issues). An MPOG analyst highlighted that \textit{``there was | ||
67 | -a lot of evolution, a lot of communication via Gitlab''}. This interaction | ||
68 | -also led MPOG staff to \textbf{trust in developed code}: \textit{``Everything was | ||
69 | -validated, we tested the features and we developed the project inside the | ||
70 | -platform so that the feature was validated in the development of the software | ||
71 | -itself. From the moment we installed it and began to use it for development, | ||
72 | -this validation was constant. We felt confident in the features''}. | ||
73 | - | ||
74 | -%Morri aqui (Melissa) | ||
75 | - | ||
76 | -One of the main concerns of traditional approaches is meticulous documentation of | ||
77 | -the software designed and the development steps. With this aforementioned | ||
78 | -decision, we could meet this government demand without bureaucracies and | ||
79 | -changes in our development process, \textbf{producting organically | ||
80 | -documentation and records} in the platform itself, as one of the MPOG response | ||
81 | -evidenced: \textit{``For me, it was a lot of learning. There is a lot of things | ||
82 | -documented in the e-mails and also in the portal itself. At any moment we can | ||
83 | -go there and see how it worked, how someone did something. We can recover those | ||
84 | -good points''}. | 66 | +represents 42\% of the most active issues). For the MPOG analysts, interaction |
67 | +via repository improved communication. \textit{``There was a lot of evolution, a | ||
68 | +lot of communication via Gitlab''}. Migrating to the platform also led MPOG | ||
69 | +staff to \textbf{trust in developed code}: \textit{``Everything was validated. | ||
70 | +We tested the functionalities and developed the project on the platform itself. | ||
71 | +Consequently, all features were checked according to the use of the system. | ||
72 | +From the moment we began to use it for development, this validation was constant. | ||
73 | +We felt confident in the code developed.'}. | ||
74 | + | ||
75 | +The abovementioned decision also collaborated to meet the government's demand | ||
76 | +for meticulous documentation of the software design and stages of development | ||
77 | +without bureaucratizing or modifying the development process. The team starts to | ||
78 | +\textbf{produce documentation and records organically} on the platform itself, as | ||
79 | +mentioned at one of the MPOG response.: \textit{``For me, it was a great learning | ||
80 | +experience. There are a lot of things documented in emails as well as in the | ||
81 | +portal itself. When necessary, we can access the tools and find out how we | ||
82 | +develop a solution. We can recover these positive points.''}. | ||
83 | + | ||
85 | 84 | ||
86 | \subsection{Bring together government staff and development team} | 85 | \subsection{Bring together government staff and development team} |
87 | 86 | ||
88 | -The MPOG analysts observed communication noise in the dialogue between them and | ||
89 | -their superiors and in dialogues with the development team, | ||
90 | -intermediated by the superiors. They said that direct dialogue with the | ||
91 | -development team and biweekly visits to the university's lab \textbf{reduce | ||
92 | -communication misunderstood}: \textit{``At this point, the communication | ||
93 | -started to change.. started to improve''}. According to another interviewee, | ||
94 | -this new dynamic unified the two sides: \textit{``I believe it was very | ||
95 | -positive, we also liked to go there, to interact with the team. I think it | ||
96 | -brought more unity, more integration into the project''}. The participation of | ||
97 | -the MPOG staff was also considered positive by {72.9\%} of the undergraduates | ||
98 | -and to {81.1\%} of them think the presence of MPOG staff in sprint ceremonies | ||
99 | -was important for the development. In addition, to \textbf{better meet | ||
100 | -expectations of both sides} regarding the requirements developed, {75.6\%} of | ||
101 | -students believe that writing the requirements together with the MPOG staff was | ||
102 | -very important. According to one of them \textit{``Joint planning and timely | ||
103 | -meetings were very important for understanding the needs of MPOG''}. | ||
104 | - | ||
105 | -An imported consequence of this direct government-academia interaction in the | ||
106 | -laboratory was empathy, as reported by one of the interviewees \textit{``You | ||
107 | -know people in person and it makes such a big difference because it causes | ||
108 | -empathy. You already know who that person is, it's not just a name''}. This | ||
109 | -subjectively helped to \textbf{align both activities execution pace}, | ||
110 | -\textit{``When we went there, we knew the people and we realized that, on our | ||
111 | -side, we also felt more encouraged to validate faster and give faster feedback | ||
112 | -to the teams [..] We gave this feedback fast and they also gave quick feedback | ||
113 | -for any our questions''}. The teams' synchronization was reinforced with the | ||
114 | -implementation of a Continuous Delivery pipeline. The benefits of this approach | ||
115 | -were presented in our previous work \cite{siqueira2018cd} and corroborate these | ||
116 | -research results. To 81.1\% of students and 75\% of senior developers, | ||
117 | -deploying new versions of the SPB portal in production was a motivator during | ||
118 | -the project. | ||
119 | - | ||
120 | -One of the MPOG analyst interviewed also noted these releases also helped to | ||
121 | -\textbf{overcome the government bias regarding the low productivity of | ||
122 | -collaborative projects with academia}: \textit{``At first, the government staff | ||
123 | -had a bias that universities do not deliver. We overcame that bias in the | ||
124 | -course of the project. We deliver a lot and with quality. Today, I think if we | ||
125 | -had paid the same amount for a company, it would not have done what was | ||
126 | -delivered and with the quality that was delivered with the price that was | ||
127 | -paid''}. Additionally, the deployment in production of each new version also | ||
128 | -\textbf{improve the translation of the process from one side to the other}, as | ||
129 | -mentioned by MPOG analyst \textit{``We had an overview at the strategic level. | ||
130 | -When we went down to the technical level, plan the release every four months | ||
131 | -was difficult. But in the end, I think this has not been a problem. A project | ||
132 | -you are delivering, the results are going to production, the code is quality, | ||
133 | -the team is qualified/capable and the project is doing well, it does not impact | ||
134 | -as much in practice''}. | ||
135 | - | ||
136 | -\subsection{Split development team into priority work fronts with IT professionals} | ||
137 | - | ||
138 | -Four teams were formed to dedicated to the main development demands of the | ||
139 | -portal: UX, DevOps, System-of-Systems, and Social Networking. External | ||
140 | -developers with vast experience in the SPB platform software components and | ||
141 | -professionals with experience in front-end and UX were hired. These | ||
142 | -professionals also contributed to disseminate practices adopted in the industry | ||
143 | -and in the free software communities to other project members. {87.5\%} of | ||
144 | -seniors agreed with our project development process. For 62.5\% this process | ||
145 | -has a good similarity to their previous experiences. Their experience | ||
146 | -\textbf{helped to reconcile development processes and decision making}, as | ||
147 | -stated by one of the respondent developers \textit{``I think my main | ||
148 | -contribution was to have balanced the relations between the MPOG staff and the | ||
149 | -UnB team''}. {62.5\%} of senior developers believe they have collaborated in | ||
150 | -the relationship between the management and development processes of the two | ||
151 | -institutions and {62.5\%} asserted that helped MPOG staff to more clearly | ||
152 | -express their requests. {62.5\%} of them did not understand MPOG's project | ||
153 | -management process and {50\%} believe their project productivity was affected | ||
154 | -by MPOG's project management process. For the government, these professionals | ||
155 | -gave credibility to the development \textit{``You had the reviewers, who were | ||
156 | -the original developers of the software, that gave you confidence and | ||
157 | -confidence in the code''}. | ||
158 | - | ||
159 | -In addition, with these professionals was possible to \textbf{transferred | ||
160 | -knowledge of industry and free software to government and academia}. Working | ||
161 | -with senior developers was important for all interns during the project. {91\%} | ||
162 | -of them also believe that working with professionals was important for | ||
163 | -learning. {75\%} of senior developers believe that 'Working in pairs with a | ||
164 | -senior' and 62.5\% that 'Participate in joint review tasks' were the tasks with | 87 | +At the beginning of the project, the interviewed MPOG analysts did not |
88 | +participate in any direct interaction with any UnB representative, even though | ||
89 | +they were the ones in charge of the government in ensuring the collaboration | ||
90 | +agreement and the delivery of the products. Because of this, they relied on | ||
91 | +feedback from their superiors on inter-institutional meetings. They reported | ||
92 | +that there was significant communication noise in the internal dialogues with | ||
93 | +their superiors, as well as between their superiors and the development team. | ||
94 | + | ||
95 | +In the second phase of the project, these analysts came to represent the | ||
96 | +government directly in the dialogues with the academia, and they started to | ||
97 | +visit bi-weekly the university's laboratory. One of the analysts believes that | ||
98 | +\textit{``at this point, the communication started to change.''} The new dynamic | ||
99 | +reduced communication misunderstandings and unified the two sides, as reported | ||
100 | +by another interviewee: \textit{``It was very positive. We liked to go there and | ||
101 | +to interact with the team. I think it brought more unity, more integration into | ||
102 | +the project''}. {73\%} of the interns consider positive the direct | ||
103 | +participation of the MPOG staff, and {81\%} of them think the presence of | ||
104 | +goverment staff in sprint ceremonies was relevant for the project development. | ||
105 | +For 76\% of interns, writing the requirements together with the MPOG staff was | ||
106 | +very important to \textbf{better meet expectations of both sides}. According to | ||
107 | +one of them \textit{``Joint planning and timely meetings were very important for | ||
108 | +understanding the needs of MPOG''}. | ||
109 | + | ||
110 | +The closest dialogue between government and academia generated empathy, as | ||
111 | +reported by one of the interviewees: \textit{``Knowing people in person makes a | ||
112 | +big difference in the relationship because it causes empathy. You know who is | ||
113 | +that person, it's not simply a name.''}. This subjectively helped to | ||
114 | +\textbf{synchronize the execution pace of activities}, \textit{``When we visited | ||
115 | +the lab and met the team, we realized that this encouraged us to validate | ||
116 | +resources faster and give faster feedback to the team. In return, they also | ||
117 | +quickly answered us any question''}. | ||
118 | + | ||
119 | +The teams' synchronization was reinforced with the implementation of a | ||
120 | +Continuous Delivery pipeline. The benefits of this approach were presented in | ||
121 | +our previous work \cite{siqueira2018cd} and corroborate these research results. | ||
122 | +For 81\% of interns and 75\% of senior developers, deploying new versions of the | ||
123 | +SPB portal in production was a motivator during the project. On the government | ||
124 | +side, this approach helped to \textbf{overcome the government bias regarding the | ||
125 | +low productivity of collaborative projects with academia}, as mentioned by | ||
126 | +themselves \textit{``Government staff has a bias that universities do not | ||
127 | +deliver products. However, in this project, we made many deliveries with high | ||
128 | +quality. Nowadays I think if we had paid the same amount for a company, it would | ||
129 | +not have done what we did with the quality we delivered.''}. Additionally, the | ||
130 | +deployment in production of each new version also \textbf{improve the | ||
131 | +translation of the process from one side to the other}, as mentioned by MPOG | ||
132 | +analyst \textit{``We had a strategic level view. When we went to the technical | ||
133 | +level, we had difficulty to plan each four-month release. However, in the final | ||
134 | +stages of the project I realized that this was not a problem because the | ||
135 | +deliveries were made and the results were available in production. The team was | ||
136 | +qualified, the code had quality and the project was well executed. So in | ||
137 | +practice, our difficulty interpreting the technical details did not impact the | ||
138 | +releases planning.''}. | ||
139 | + | ||
140 | +\subsection{Split development team into priority work fronts with IT | ||
141 | +professionals} | ||
142 | + | ||
143 | +The development team was divided into four work areas defined by the main | ||
144 | +demands of the project: user eXperience, devOps, integration of systems, and | ||
145 | +social networking. For each of them, at least one professional in the IT market | ||
146 | +was hired to raise the quality of the product. These senior developers were | ||
147 | +selected due to their experience in the open source systems and tools used in | ||
148 | +the project or in visual works for large scale organizations. | ||
149 | + | ||
150 | +The participation of senior developers in the project contributed to | ||
151 | +\textit{conciliate the development processes of institutions and make better | ||
152 | +technical decisions}, as quoted in one of the answers to the senior developers | ||
153 | +questionnaire: \textit{``I think my main contribution was to balance the | ||
154 | +relations between the MPOG staff and the UnB team''}. {63\%} of senior | ||
155 | +developers believe they have collaborated to conciliate the management and | ||
156 | +development process between the two institutions and also {63\%} of them that | ||
157 | +they helped MPOG staff to express their requests more clearly. Government | ||
158 | +analysts were also more open to suggestions from these developers | ||
159 | +\textit{``They are developers of the upstream projects of the systems that | ||
160 | +integrate the platform. They conveyed trust, and then we trust in the developed | ||
161 | +code''}. According to questionnaire responses, they largely agreed with the | ||
162 | +project development process. For 63\%, this process has close similarity to | ||
163 | +their previous experiences. In contrast, {62.5\%} of them did not understand | ||
164 | +MPOG's project management process and {50\%} believe their project productivity | ||
165 | +was affected by MPOG's project management process. | ||
166 | + | ||
167 | +Senior developers were also responsible for improving the management and technical | ||
168 | +knowledge of the interns about practices from industry and open source projects. | ||
169 | +{91\%} of the interns believe that working with professionals was important for | ||
170 | +learning. Working with senior developers was important during the project for all | ||
171 | +of them. {75\%} of senior developers believe that 'Working in pairs with a | ||
172 | +senior' and 63\% that 'Participate in joint review tasks' were the tasks with | ||
165 | the involvement of them that most contributed to the evolution of students in | 173 | the involvement of them that most contributed to the evolution of students in |
166 | -the project. And, in guiding a students, {75\%} believe that this knowledge was | 174 | +the project. {75\%} believe that the knowledge taught by them to a intern was |
167 | widespread among the others in the team. This acquisition of knowledge was also | 175 | widespread among the others in the team. This acquisition of knowledge was also |
168 | -noted by the government, which stated \textit{``On the side of UnB, what we | ||
169 | -perceived was that the project was very big leap when the original software | ||
170 | -developers were hired in the case of Noosfero and Colab, because they had a | ||
171 | -guide on how to develop things in the best way and were able to solve | ||
172 | -non-trivial problems and quickly''}. | ||
173 | - | ||
174 | -The fronts also gained more autonomy to manage their activities. The role of | ||
175 | -``meta-coach'' was defined among the students, to coordinate the interactions | ||
176 | -between teams and coach to coordinate each front. Coaches have become a | ||
177 | -\textbf{point of reference for the development process}. {89.1\%} of students | ||
178 | -said that the presence of the coach was essential to the running of sprint, and | ||
179 | -for {87.5\%} of senior developers coaches was essential for their interaction | ||
180 | -with the team. MPOG analysts saw coaches as facilitators for their activities | ||
181 | -and for communication with the development team. One of the interviewees said | ||
182 | -\textit{``I interacted more with the project coordinator and team coaches''}, | ||
183 | -\textit{``The reason for this was that the coaches were more likely to meet the | ||
184 | -requirements, to ask questions about requirements, to understand some features. | ||
185 | -interaction with leaders than with senior developers. Sometimes the coaches | ||
186 | -brought the question to the senior developers''}. | ||
187 | - | 176 | +pointed by the government: \textit{``On the side of Unb, what we noticed was a |
177 | +significant improvement in the platform with the hiring of the original | ||
178 | +developers of the systems. They had a guide on how to best develop each feature | ||
179 | +and were able to solve non-trivial problems quickly.''}. | ||
180 | + | ||
181 | +Dividing the development team and hiring senior developers allowed each team | ||
182 | +to \textbf{self-organize and gain more autonomy in the management of their tasks}. | ||
183 | +Each team was coordinated by a coach who together was supported by a meta-coach | ||
184 | +in the execution of their activities. The coaches were points of reference | ||
185 | +in the development process. {89\%} of the interns said that the presence of | ||
186 | +the coach was essential to the sprint's running, and for {88\%} of senior | ||
187 | +developers coaches was essential for their interaction with the team. MPOG | ||
188 | +analysts saw coaches as facilitators for their activities and for communication | ||
189 | +with the development team. They said \textit{``I interacted | ||
190 | +more with the project coordinator and team coaches''}, \textit{``Usually, we | ||
191 | +contact a coach to clarify some requirements or to understand some feature. We | ||
192 | +interact more with coaches because they are more accessible than senior | ||
193 | +developers. Sometimes the coach would take our question to the senior | ||
194 | +developer''}. |