Commit 9ab724123c1cce1733d59b45ebfa0100ce15fc5e
Exists in
master
and in
3 other branches
Merge branch 'master' into 'master'
[OpenSym] Revisão de lessons learned (revisão geral de texto #20) See merge request !3
Showing
1 changed file
with
40 additions
and
40 deletions
Show diff stats
opensym2017/content/11-lessons.tex
1 | 1 | \section{Lessons Learned} |
2 | 2 | \label{sec:lessons} |
3 | 3 | |
4 | -\textbf{How to involve students real-world projects, interacting with | |
4 | +\textbf{How to involve students in real-world projects, interacting with | |
5 | 5 | real customers.} |
6 | 6 | % |
7 | 7 | Our team was mainly composed of software engineering undergraduate |
8 | -student, who had the opportunity to interact with senior developers and | |
9 | -designers inside the team, as well as with the team of technicians and | |
8 | +students, who had the opportunity to interact with senior developers and | |
9 | +designers on the team, as well as with the team of technicians and | |
10 | 10 | managers from the Brazilian Government, and the management team from |
11 | 11 | UnB. |
12 | 12 | % |
13 | -They interacted with professionals that had diverse expertises, and were | |
13 | +The students interacted with professionals of diverse fields of expertise, and they were | |
14 | 14 | able to participate in all levels of the software development process. |
15 | -This contributed to a great learning opportunity, and for a majority of | |
16 | -them this was their first professional experience. | |
15 | +This contributed to a great learning opportunity. Moreover, for the majority of | |
16 | +the students, this was a first professional experience. | |
17 | 17 | |
18 | 18 | \textbf{The participation of experienced professionals is crucial to |
19 | -success of the project.} | |
19 | +the success of the project.} | |
20 | 20 | One important factor for the students was the composition of the teams |
21 | 21 | with the participation of experienced professionals. |
22 | 22 | % |
... | ... | @@ -27,7 +27,7 @@ pressure. |
27 | 27 | % |
28 | 28 | On the management side, the active participation of professors -- who |
29 | 29 | are, in the end, the ones responsible for the project -- is crucial to |
30 | -make sure student participation is conducted in a healthy way, and is an | |
30 | +make sure students participation is conducted in a healthy way, and it is an | |
31 | 31 | instance of leading by example. |
32 | 32 | |
33 | 33 | \textbf{A balanced relationship between academia and industry.} |
... | ... | @@ -47,66 +47,66 @@ And even under a potentially adverse environment, the project delivered |
47 | 47 | the desired solution with success. |
48 | 48 | % |
49 | 49 | At the end of the project, we noted that the skills developed by the |
50 | -students were at the state of art of the software engineering practice. | |
50 | +students were at the software engineering state of the art. | |
51 | 51 | After the project ended, we had team members successfully embracing |
52 | -opportunities in public, private, national and international | |
53 | -organizations, in addition to those students that went into | |
54 | -entrepreneurship and opened their own companies. | |
52 | +opportunities in public, private, national, and international | |
53 | +organizations, in addition to those students that | |
54 | +opened their own companies. | |
55 | 55 | |
56 | 56 | \textbf{Managing different organizational cultures.} |
57 | 57 | In the beginning of the project, the Brazilian Government stakeholders |
58 | -had certain expectations about the development of project that, let's | |
59 | -say, didn't exactly match our work based on agile and FOSS practices. | |
58 | +had certain expectations about the project development that, let's | |
59 | +say, didn't exactly match our work style based on agile and FOSS practices. | |
60 | 60 | % |
61 | -We had to develop strategies that would support different these | |
61 | +We had to develop strategies that would support these different | |
62 | 62 | organizational cultures. As reported in Section \ref{sec:process}, the |
63 | 63 | MP is organized in a functional hierarchical organizational structure, |
64 | -typically, a traditional development paradigm. Therefore, we had to | |
64 | +typically adopting a traditional development paradigm. Therefore, we had to | |
65 | 65 | create a translation process between our team and the MP managers who |
66 | -managed the project on their side assuming a traditional, waterfall | |
66 | +managed the project on their side assuming a traditional waterfall | |
67 | 67 | process. |
68 | 68 | |
69 | -\textbf{Manage higher-level and lower-level goals separately.} | |
70 | -During the initial phase of the project the MP team would often bring | |
71 | -strategic discussions to technical/operational meetings, where we were | |
72 | -supposed to discuss practical, technical decisions. | |
69 | +\textbf{Managing higher-level and lower-level goals separately.} | |
70 | +During the initial phase of the project, the MP team has brought | |
71 | +strategic discussions to technical/operational meetings that | |
72 | +were supposed to be about practical technical decisions. | |
73 | 73 | % |
74 | 74 | This produced a highly complex communication and management environment, |
75 | -overloading the professors because they were supposed to be responsible | |
76 | -for maintaining the strategic alignment of the MP synchronized with | |
77 | -implementation plans of the development team, specially in light of the | |
78 | -aforementioned culture mismatch. Mixing both concerns in the same | |
75 | +overloading the professors because they were supposed | |
76 | +for maintaining the MP strategy synchronized with the | |
77 | +implementation plans of the development team. This was hard, especially because the | |
78 | +aforementioned cultural mismatch. Mixing both concerns in the same | |
79 | 79 | discussions caused confusion on both sides. |
80 | 80 | % |
81 | -Towards the middle and end of the project we were able to keep those | |
81 | +From the middle of the project we were able to keep those | |
82 | 82 | concerns separated, what eased the work of everyone involved. |
83 | 83 | |
84 | 84 | \textbf{Living with ill-advised political decisions.} |
85 | 85 | At the initial phases of the project, by political and personal |
86 | 86 | motivation, the main stakeholders from the Brazilian government imposed |
87 | -the use of Colab to guide the development of the new SPB platform. Our | |
87 | +the use of Colab to guide the development of the new SPB platform. Our | |
88 | 88 | team was totally against the idea because we already knew that Colab was |
89 | 89 | a very experimental project and its adoption could dramatically increase |
90 | -the project complexity. Even though we provided technical reasons to | |
91 | -not utilize Colab, MP was adamant and we had to manage this problem. As | |
92 | -explained in section \ref{sec:architecture} we did massive changes to | |
93 | -it, and at the end of the project we completely rewrote Colab and made | |
90 | +the project complexity. Even though we provided technical reasons to | |
91 | +not utilize Colab, the MP was adamant and we had to manage this problem. As | |
92 | +explained in section \ref{sec:architecture}, we did massive changes to | |
93 | +Colab, and at the end of the project we have completely rewritten it to make | |
94 | 94 | it stable. It is important to notice that the MP compelled us to accept |
95 | -a technical issue based only on political interests, without considering | |
95 | +a technical decision based only on political interests, without considering | |
96 | 96 | all the resources that would be spent due to that decision. At the end |
97 | 97 | of the project, we verified that Colab indeed consumed a vast amount of |
98 | -the budget and increased the project complexity. In the end of the | |
98 | +the budget and increased the project complexity. At the end of the | |
99 | 99 | project and after our analysis on the decision made by the MP, we |
100 | -understand that MP's managers are capable of ignoring technical reasons | |
101 | -in favor to a political decision. | |
100 | +understand that MP managers are capable of ignoring technical reasons | |
101 | +in favor of political decisions. | |
102 | 102 | |
103 | 103 | \textbf{Consider sustainability from the beginning.} |
104 | -In the process of deploying the SPB platform in the MP structure, we had | |
104 | +In the process of deploying the SPB platform in the MP infrastructure we had | |
105 | 105 | to interact with the MP technicians. We did several workshops, training |
106 | 106 | and a meticulous documentation describing all the required procedures to |
107 | 107 | update the platform, however, we realized that the MP technicians |
108 | 108 | constantly avoid the responsibility. After noticing the aforementioned |
109 | -situation, we organized a specific DevOps that completely automated all | |
109 | +situation, we organized a DevOps team that completely automated all | |
110 | 110 | the deployment procedure. We simplified all the platform deployment to a |
111 | 111 | few steps: (1) initial configurations (just ssh configuration) and (2) |
112 | 112 | the execution of simple commands to completely update the platform. By |
... | ... | @@ -114,8 +114,8 @@ the end of the project, we observed that the MP technicians invariably |
114 | 114 | still depended on our support to update the platform even with all the |
115 | 115 | automation provided by us. We were sadly left with a feeling of |
116 | 116 | uncertainty about the future of the platform after the project ended. In |
117 | -hindsight, we realize that the MP dedicated systems analysts and | |
117 | +hindsight, we realize that the MP dedicated system analysts and | |
118 | 118 | managers to the project, but not operations technicians. The later |
119 | -should have been more involved with the process so they could at least | |
120 | -comfortable with managing the platform infrastructure. | |
119 | +should have been more involved with the process so they could at least be | |
120 | +comfortable in managing the platform infrastructure. | |
121 | 121 | ... | ... |