Commit 7ffe5a2d4eb00458bc9771d659e9590c2bd7fd12

Authored by Leonardo Leite
1 parent 072a0f0d

revisando a introdução

Showing 1 changed file with 58 additions and 56 deletions   Show diff stats
opensym2017/content/01-introduction.tex
@@ -2,49 +2,50 @@ @@ -2,49 +2,50 @@
2 \label{sec:intro} 2 \label{sec:intro}
3 3
4 The Brazilian Federal Government has been 4 The Brazilian Federal Government has been
5 -improving its software adoption and development processes. For 5 +improving its processes for software contracting and development. For
6 instance, in 2003, the recommendation to adopt Free/Libre/Open Source 6 instance, in 2003, the recommendation to adopt Free/Libre/Open Source
7 -Software (FLOSS) become a public policy. In 2007, the Brazilian  
8 -Government released a portal named Brazilian Public Software  
9 -(\textit{Software Público Brasileiro} -- SPB, in Portuguese), with the 7 +Software (FLOSS) became a public policy. In 2007, the Brazilian
  8 +Government released the Brazilian Public Software Portal
  9 +(\textit{Portal do Software Público Brasileiro}, in Portuguese), with the
10 goal of sharing FLOSS projects developed by, or for, the Brazilian 10 goal of sharing FLOSS projects developed by, or for, the Brazilian
11 Government. Additionally, the Brazilian legal instrument on software 11 Government. Additionally, the Brazilian legal instrument on software
12 -contracting (known as IN 04/2012) mandates that public agents must give  
13 -priority to solutions available on the SPB Portal. In short, the 12 +contracting (known as IN 04/2012) mandates that public agents must
  13 +prioritize solutions available on the SPB Portal. The
14 acquisition of a proprietary solution must be explicitly justified by 14 acquisition of a proprietary solution must be explicitly justified by
15 demonstrating that there is no suitable alternative on the SPB Portal. 15 demonstrating that there is no suitable alternative on the SPB Portal.
16 -In 2013, the Brazilian Federal Court issued a ruling document  
17 -(\textit{Acórdão 2314/2013}) about an audit survey regarding the use of  
18 -agile methodologies in software development contracts with the public  
19 -administration. 16 +In 2013, the Brazilian Federal Court issued a ruling
  17 +(\textit{Acórdão 2314/2013}) about contracts between the public administration
  18 +and suppliers using agile methodologies in software development.
20 19
21 -Despite of that, in practice, free software or agile methodologies, that is,  
22 -collaborative and empirical software development methods are not widely  
23 -practiced and understood by the Brazilian government agents. Thus, the  
24 -hierarchical and traditional processes from the government and the lack  
25 -of expertise in real-world software development of its agents produces a  
26 -situation of inefficient software development contracts and  
27 -unjustifiable expending of taxpayers' money. 20 +Despite of these legal advancements, in practice, Brazilian government agents
  21 +still do not practice, or even understand,
  22 +collaborative and empirical software development methods,
  23 +such as free software or agile methodologies. Thus,
  24 +hierarchical and traditional processes and the lack
  25 +of expertise of public agents in real-world software development produce
  26 +inefficiency in software development contracts, besides
  27 +unjustifiable expending of taxpayers money.
28 28
29 -Since 2009, the SPB Portal was having several technical issues. The original  
30 -codebase was not being developed anymore, also, there was a large amount of  
31 -knowingly non-optimal or wrong design decisions to overcome (in other words,  
32 -technical debt \cite{refactoring}). The system was a modified version of an 29 +Since 2009, the SPB Portal has had several technical issues. The original
  30 +codebase development has stopped, leaving substantial
  31 +technical debt~\cite{refactoring}.
  32 +The system was a modified version of an
33 existing FLOSS platform called OpenACS \footnote{\url{http://openacs.org}}, and 33 existing FLOSS platform called OpenACS \footnote{\url{http://openacs.org}}, and
34 -the old SPB portal was not being updated anymore against the official OpenACS  
35 -releases. In this scenario, the portal maintenance has become increasingly 34 +the old SPB Portal did not receive updates from OpenACS releases.
  35 +In this scenario, the portal maintenance has become increasingly
36 difficult. 36 difficult.
37 37
38 -After some events and meetings to collect requirements from the federal  
39 -government and from the society, a new platform for the SPB Portal was  
40 -developed, among January 2014 and June 2016, by the University of Brasília 38 +After collecting requirements from the Federal
  39 +Government and society, a new platform for the SPB Portal was
  40 +developed, between January 2014 and June 2016, by the University of Brasília
41 (UnB) and the University of São Paulo (USP) in a partnership with the Brazilian 41 (UnB) and the University of São Paulo (USP) in a partnership with the Brazilian
42 -Ministry of Budget, Planning, and Management (MP). It was designed as an  
43 -integrated platform for collaborative software development \cite{bobr2003}, and  
44 -includes functionality for social networking, mailing lists, version control 42 +Ministry of Planning, Budget, and Management (MP). It was designed as an
  43 +integrated platform for collaborative software development \cite{bobr2003},
  44 +including social networking, mailing lists, version control
45 system, and source code quality monitoring. To coordinate and develop this 45 system, and source code quality monitoring. To coordinate and develop this
46 -project during 30 months, UnB received from the Brazilian Federal Government a  
47 -total of 2,619,965.00 BRL (about 750,000.00 USD in June 2016). 46 +project during 30 months, UnB was funded by a grant
  47 +of 2,619,965.00 BRL (about 750,000.00 USD in June 2016)
  48 +from the Federal Government.
48 49
49 \begin{figure*}[hbt] 50 \begin{figure*}[hbt]
50 \centering 51 \centering
@@ -53,44 +54,45 @@ total of 2,619,965.00 BRL (about 750,000.00 USD in June 2016). @@ -53,44 +54,45 @@ total of 2,619,965.00 BRL (about 750,000.00 USD in June 2016).
53 \label{fig:spb} 54 \label{fig:spb}
54 \end{figure*} 55 \end{figure*}
55 56
56 -The project was developed by a team of 3 professors, 2 masters students, and  
57 -approximately 50 undergraduate students (not all of them at the same time,  
58 -though -- graduations and other events triggered changes in the team) together  
59 -with 2 professional designers and 6 senior developers from free software  
60 -communities. The professors and all undergraduate student were from UnB, and  
61 -the master students were from USP. Regarding the designers and senior  
62 -developers, 7 of 8 they were living outside of Brasília: Curitiba/Brazil, São  
63 -Paulo/Brazil, Ribeirão Preto/Brazil, Salvador/Brazil, Santo Domingo/Dominican  
64 -Republic, and Montreal/Canada. In other words, we had a team working in  
65 -distributed collaborative virtual environment. This diversity of actors and the  
66 -relationships between industry, academy and government also made the project a 57 +The project was developed by a team of three professors, two masters students,
  58 +about fifty undergraduate students (not all of them at the same time,
  59 +since the team changed along the time),
  60 +two professional designers, and six senior developers from free software
  61 +communities. Professors and undergraduate students were from UnB and
  62 +master students were from USP. Regarding the designers and senior
  63 +developers, seven of eight were living outside Brasília, the UnB location.
  64 +Two of them were abroad at Dominican Republic and Canada.
  65 +In other words, we had a distributed team working in a
  66 +collaborative virtual environment. This diversity of actors and the
  67 +relationships between industry, academy, and government also made the project a
67 valued opportunity to explore the benefits and challenges of using 68 valued opportunity to explore the benefits and challenges of using
68 -FLOSS\cite{kon2011,deKoenigsberg2008, fagerholm2013, fagerholm2014} and  
69 -Agile\cite{steghofer2016, harzl2017} practices for Software Engineering 69 +FLOSS~\cite{kon2011,deKoenigsberg2008, fagerholm2013, fagerholm2014} and
  70 +Agile~\cite{steghofer2016, harzl2017} practices for Software Engineering
70 education. 71 education.
71 72
72 Figure \ref{fig:spb} shows the home page of this integrated platform. 73 Figure \ref{fig:spb} shows the home page of this integrated platform.
73 -All development was done in the open, and the changes we needed in the  
74 -FLOSS tools were contributed back to their respective communities. Our 74 +All the code was developed as open source. The changes we needed in the
  75 +FLOSS tools were implemented by ourselves and
  76 +contributed back to their respective communities. Our
75 process was based on agile practices and FLOSS communities interaction. 77 process was based on agile practices and FLOSS communities interaction.
76 -We defined development cycles and released 5 versions of the new SPB 78 +We incrementally released five versions of the new SPB
77 Portal. The first release (beta) was in September 2014, only 9 months 79 Portal. The first release (beta) was in September 2014, only 9 months
78 from the beginning of the project. The old portal was shut down in 80 from the beginning of the project. The old portal was shut down in
79 September 2015. Finally, the last version, illustrated in Figure 1, was 81 September 2015. Finally, the last version, illustrated in Figure 1, was
80 released in June 2016. 82 released in June 2016.
81 83
82 -In this paper, we present an overview of this new generation of the SPB Portal.  
83 -The paper shares the methodology employed to develop this project, in  
84 -partnership with the Brazilian Federal Government, to comply with its  
85 -requirements at the same time to be as faithful as possible to FLOSS  
86 -development \cite{mockus2002, tosi2015}. Moreover, we discuss several lessons  
87 -learned to provide a distributed collaborative virtual environment involving  
88 -alarge undergraduate student team and remote senior developers. Lastly, we  
89 -released an unprecedented platform for the Brazilian government applying 84 +In this paper, we present an overview of the new SPB Portal.
  85 +The paper shares the methodology employed to develop this project.
  86 +This methodology has the goals of satisfying Government
  87 +requirements and adhering as much as possible to FLOSS and agile
  88 +practices~\cite{mockus2002, tosi2015}. Moreover, we discuss lessons
  89 +learned in providing a distributed and collaborative virtual environment involving
  90 +a large undergraduate students team and remote senior developers. Finally, we
  91 +released an innovative platform for helping the Brazilian government to apply
90 empirical software development methods. This case can help other projects to 92 empirical software development methods. This case can help other projects to
91 overcome similar software engineering challenges in the future, as well as to 93 overcome similar software engineering challenges in the future, as well as to
92 illustrate how universities can improve the real-world experience of their 94 illustrate how universities can improve the real-world experience of their
93 -students by means of this kind of project. 95 +students.
94 96
95 The remainder of this work is organized as follows. 97 The remainder of this work is organized as follows.
96 Section \ref{sec:spb}... 98 Section \ref{sec:spb}...