Commit 3bff9c9230d7fd27e1ae63a570d6aa4f3bd85faf

Authored by Rodrigo Siqueira de Melo
2 parents 3a6b85b7 cf48ee2f

Merge branch 'update_conclusion'

Showing 1 changed file with 71 additions and 63 deletions   Show diff stats
opensym2017/content/09-lessons.tex
1 1 \section{Lessons Learned}
2 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 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 68 % * Gestão dos recursos: Fizemos mais por menos (2.6M de 3.2M) --- sem os dados
61 69 %% (escopo, custo, tempo e qualidade) bem discutidos é difícil sustentar essa
62 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  
... ...