Commit 3bff9c9230d7fd27e1ae63a570d6aa4f3bd85faf
Exists in
master
and in
3 other branches
Merge branch 'update_conclusion'
Showing
1 changed file
with
71 additions
and
63 deletions
Show diff stats
opensym2017/content/09-lessons.tex
1 | \section{Lessons Learned} | 1 | \section{Lessons Learned} |
2 | \label{sec:lessons} | 2 | \label{sec:lessons} |
3 | 3 | ||
4 | -The multidisciplinary composition of the development teams, mainly software | ||
5 | -engineers and designers, is necessary for the development of good software | ||
6 | -products, which naturally aim to meet the users needs. In the context of the | ||
7 | -SPB project, there were also stakeholders from different areas who composed the | ||
8 | -team of technicians and managers of the MP, as well as the administrative teams | ||
9 | -of UnB. This interaction with different professionals brought a great learning | ||
10 | -opportunity for the students, who had their first professional experience, even | ||
11 | -during their graduation course. On the other hand, the different perceptions of | ||
12 | -stakeholders generated high complexity of communications and expectations | ||
13 | -management, burdening too much the professors who were responsible for project | ||
14 | -management. | 4 | +The multidisciplinary of the development teams - mainly composed of software |
5 | +engineers and designers - it is necessary for the development of a software | ||
6 | +product that naturally fit the user requirements and consequently achieve a | ||
7 | +high quality. In the context of the SPB project, there was a stakeholders team | ||
8 | +of technicians and managers of the MP, as well as the administrative team of | ||
9 | +the UnB. The interaction with different professionals contributed as a great | ||
10 | +learning opportunity for the students, which had their first professional | ||
11 | +experience during their graduation course. On the other hand, the different | ||
12 | +perceptions of the stakeholders generated a high complex communication and | ||
13 | +management environment. All of this complication generated a lot of overhead | ||
14 | +for the professors because they were responsible for the project management. | ||
15 | 15 | ||
16 | -The use of the Colab tool was a requirement required by the MP. They argueed | ||
17 | -that this tool presented functionalities that would allow MP managers to | ||
18 | -stimulate the participation of SPB service providers with gamefication | ||
19 | -practices. As we said, in order for Colab to perform the expected behavior in | ||
20 | -SPB its architecture had to be completely redefined and this caused in | ||
21 | -practice, (i) the considerable increase in the architectural complexity of the | ||
22 | -SPB and (ii) it was the subsystem that consumed the most effort and budget | ||
23 | -during development. | 16 | +At the initial phases of the project, MP imposed the integration of Colab to |
17 | +the platform by the claim that it had gamification features, which would | ||
18 | +encourage MP managers to be active on the platform. Since the first moment that | ||
19 | +MP demands it to us, we were totally against the idea because we already knew | ||
20 | +that Colab was a very experimental project and its adoption could dramatically | ||
21 | +increase the project complexity. Even though we provided technical reasons to | ||
22 | +not utilize Colab, MP enforces it to us and we had to manage this problem. As | ||
23 | +explained in section \ref{sec:architecture} we did a massive change in it, and | ||
24 | +at the end of the project we completely rewrite Colab and made it stable. It is | ||
25 | +important to notice that the MP compelled us to accept a technical issue based | ||
26 | +only on political interests, without considering all the money they would spend | ||
27 | +with their decision. At the end of the project, we verified that Colab consumed | ||
28 | +a vast amount of the budget and indeed increased the project complexity. In the | ||
29 | +end of the project and after our analyses on the decisions made by the MP, we | ||
30 | +understand that MP's managers are capable of ignoring technical reasons in | ||
31 | +favor to a political decision. | ||
24 | 32 | ||
25 | -Due to the computational complexity related to the SPB deployment, associated | ||
26 | -with the Brazilian government needs for product support, we made an effort to | ||
27 | -provide complete automation of the entire deployment procedure, a result of | ||
28 | -DevOps activities. In this way, we encapsulate all this complexity and enable | ||
29 | -the deployment of new SPB releases through the execution of few commands, as | ||
30 | -registered in the project documentation. Although we have provided a high | ||
31 | -degree of automation, training workshops for the MP technical team, and a | ||
32 | -meticulous description of the procedures in the documentation, we observed that | ||
33 | -the MP technical staff invariably depended on our support to perform these | ||
34 | -procedures. | 33 | +In the process of deploying the SPB platform in the MP structure, we had to |
34 | +interact with the MP's technicians. We did several workshops, training and a | ||
35 | +meticulous documentation describing all the required procedures to update the | ||
36 | +platform, however, we realized that the MP's technicians constantly avoid the | ||
37 | +responsibility. After notice the aforementioned situation, we organized a | ||
38 | +specific team to start a DevOps activities and interacts with all the UnB | ||
39 | +teams. After a year of work, we completely automated all the deployment | ||
40 | +procedure. We simplified all the platform implantation to a few steps: (1) | ||
41 | +initial configurations (just ssh configuration) and (2) the execution of simple | ||
42 | +commands to completely update the platform. In the end of the project, we | ||
43 | +observed that the MP technical invariably depends on our support to update the | ||
44 | +platform even with all the automation provided by us. | ||
35 | 45 | ||
36 | From the point of view of management and development processes, we had to | 46 | From the point of view of management and development processes, we had to |
37 | -develop management strategies that would accommodate different organizational | ||
38 | -cultures. As reported, the MP has a functional hierarchical organizational | ||
39 | -culture, strongly supported by process management, typical of the traditional | ||
40 | -development paradigm. The UnB teams use a process based on agile manifest | ||
41 | -values and FOSS and agile community practices. So we created a process of | ||
42 | -"translation" of work done to communicate with MP managers who manage their | ||
43 | -portfolio based on the PMBoK processes. On the one hand, in the intermediary | ||
44 | -and final project's phases we have matured this process, mainly due to the | ||
45 | -perception of the results by MP, on the other hand, in the initial phase we had | ||
46 | -a lot of intervention in our work style, which ended up focusing strategic | ||
47 | -discussions for operational discussions. Again there was an overload in | ||
48 | -professors, who were responsible for maintaining the strategic alignment of the | ||
49 | -MP with the day to day development of the UnB team. | 47 | +develop strategies that would support different organizational cultures. As |
48 | +reported in Section \ref{sec:process}, the MP is organized in a functional | ||
49 | +hierarchical organizational structure, typically, a traditional development | ||
50 | +paradigm. The UnB team works based on agile manifest values and FOSS community | ||
51 | +practices. Therefore, we had to create a translation process to communicate | ||
52 | +with MP managers who manage their project based on the PMBoK ideas. On the one | ||
53 | +hand, in the intermediary and final project's phases, we had matured this | ||
54 | +process, mainly due to the perception of the results by the MP, on the other | ||
55 | +hand, in the initial phase we had a lot of intervention in our work style, | ||
56 | +which ended up focusing strategic discussions for operational discussions. The | ||
57 | +aforementioned situation created an overload to the professors because they | ||
58 | +were responsible for maintaining the strategic alignment of the MP synchronized | ||
59 | +with the development team. | ||
50 | 60 | ||
51 | -Another importance factor for the students and maturing of the software | ||
52 | -engineering practices used in the project was the composition of the teams with | ||
53 | -the participation of experienced professionals from the FOSS communities. These | ||
54 | -professionals together with the professors promoted a work environment where | ||
55 | -the students could develop their skills in a didactic and practical way without | ||
56 | -being transferred the pressures for them. In addition, these experienced | ||
57 | -professionals were responsible for the most relevant technical decisions | ||
58 | -related to the SPB software product. | 61 | +Another important factor for the students was the composition of the teams with |
62 | +the participation of senior professionals from the FOSS communities. These | ||
63 | +professionals and professors promoted a work environment where the students | ||
64 | +could develop their skills in a didactic way without transferring any pressure | ||
65 | +to the students. Addition, these experienced professionals were responsible for | ||
66 | +the most relevant technical decisions related to the SPB software product. | ||
59 | 67 | ||
60 | % * Gestão dos recursos: Fizemos mais por menos (2.6M de 3.2M) --- sem os dados | 68 | % * Gestão dos recursos: Fizemos mais por menos (2.6M de 3.2M) --- sem os dados |
61 | %% (escopo, custo, tempo e qualidade) bem discutidos é difícil sustentar essa | 69 | %% (escopo, custo, tempo e qualidade) bem discutidos é difícil sustentar essa |
62 | %% afirmação, embora eu e Paulo consigamos perceber isso. | 70 | %% afirmação, embora eu e Paulo consigamos perceber isso. |
63 | 71 | ||
64 | -The experience of the SPB project led UnB to develop a model of team | ||
65 | -composition and work style that proved to be appropriate to the cararteristics | ||
66 | -of an education environment, bringing the academy closer to the industry. The | ||
67 | -highest priority from the university's point of view is the students. | ||
68 | -Considering this, the activities of the project were never prioritized to the | ||
69 | -detriment of the classes and other didactic-pedagogical activities. In short we | ||
70 | -had students working at different times, part time, remotely or presential, | ||
71 | -always respecting their individual conditions, but doing the work in a | ||
72 | -collective, collaborative and open way. At the end of the project we realized | ||
73 | -that the skills developed by the students empowered them with the state in the | ||
74 | -practice of software engineering. The members of the teams got opportunities to | ||
75 | -work in public, private, national and international organizations, in addition | ||
76 | -to those students they preferred entrepreneurship, opening their own companies. | 72 | +The experience of the SPB project led UnB to develop a work style which proved |
73 | +to be appropriated to the characteristics of an educational environment and | ||
74 | +brings the academy closer to the industry. The highest priority from the | ||
75 | +university's point of view is the students, considering this, the activities of | ||
76 | +the project were never prioritized to the detriment of the classes and other | ||
77 | +pedagogical activities. In summary, we had students working at different times, | ||
78 | +part time, remotely or locally, always respecting their individual conditions, | ||
79 | +but doing the work in a collective, collaborative and open way. At the end of | ||
80 | +the project, we realized that the skills developed by the students empowered | ||
81 | +them with the state in the practice of software engineering. The members of the | ||
82 | +teams got opportunities to work in public, private, national and international | ||
83 | +organizations, in addition to those students they preferred entrepreneurship, | ||
84 | +opening their own companies. | ||
77 | 85 |