Commit 361d9e5af65e7be4060cc554c1ee23b30d6345df

Authored by Antonio Terceiro
1 parent 0875e57a

content/01-introduction.tex: review

Showing 1 changed file with 63 additions and 57 deletions   Show diff stats
opensym2017/content/01-introduction.tex
1 \section{Introduction} 1 \section{Introduction}
2 \label{sec:intro} 2 \label{sec:intro}
3 3
4 -During the last few decades, the Brazilian Federal Government tries to change  
5 -its software adoption and development processes. For instance, in 2003, the  
6 -recommendation to adopt Free and Open Source Software (FOSS) become a public  
7 -policy. In 2007, the Brazilian Government released a portal named Brazilian  
8 -Public Software (\textit{Software Público Brasileiro} -- SPB, in Portuguese),  
9 -with the goal of sharing FOSS projects developed by, or for, the Brazilian 4 +During the last few decades, the Brazilian Federal Government has been
  5 +trying to change its software adoption and development processes. For
  6 +instance, in 2003, the recommendation to adopt Free and Open Source
  7 +Software (FOSS) 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
  10 +goal of sharing FOSS projects developed by, or for, the Brazilian
10 Government. Additionally, the Brazilian legal instrument on software 11 Government. Additionally, the Brazilian legal instrument on software
11 -contracting (known as IN 04/2012) mandates that public management must consult  
12 -the SPB Portal to adopt a software solution. In short, the acquisition of a  
13 -proprietary solution must be explicitly justified by demonstrating that there  
14 -is no suitable option in the SPB Portal. Lastly, in 2013, the Brazilian Federal  
15 -Court issued a ruling document (\textit{Acórdão 2314/2013}) about an audit  
16 -survey regarding the use of agile methodologies in software development  
17 -contracts with the public administration. 12 +contracting (known as IN 04/2012) mandates that public agents must give
  13 +priority to solutions available in the SPB Portal. In short, the
  14 +acquisition of a proprietary solution must be explicitly justified by
  15 +demonstrating that there is no suitable alternative in 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.
18 20
19 -Despite of that, in fact, FOSS or agile methodologies, that is, collaborative  
20 -and empirical software development methods are not widely practiced and  
21 -understood by the Brazilian government agents. Thus, the hierarchical and  
22 -traditional processes from the government and the lack of expertises in  
23 -real-world software development of its agent ... (bater e fazer um link com o  
24 -restante) 21 +Despite of that, in practice, FOSS 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 inneficient software development contracts and
  27 +unjustifiable expending of taxpayers' money.
25 28
26 -... 29 +% TODO: ^ references
27 30
28 -Since 2009, the SPB Portal was having several technical  
29 -issues. The original codebase was not being developed anymore, and there was a  
30 -large amount of technical debt to overcome. The system was a modified version  
31 -of an existing FOSS platform (called  
32 -OpenACS\footnote{\url{http://openacs.org}}) and the old SPB portal was not  
33 -being updated anymore with its official releases. In this scenario, the portal  
34 -maintenance was becoming harder and harder. 31 +Since 2009, the SPB Portal was having several technical issues. The
  32 +original codebase was not being developed anymore, and there was a large
  33 +amount of technical debt to overcome. The system was a modified version
  34 +of an existing FOSS platform called
  35 +OpenACS\footnote{\url{http://openacs.org}}, and the old SPB portal was
  36 +not being updated anymore against the official OpenACS releases. In this
  37 +scenario, the portal maintenance was becoming harder and harder.
35 38
36 -Afterward some events and meetings to collect all requirements from the federal  
37 -government and society, a new platform for the SPB Portal was developed, among  
38 -January 2014 and June 2016, by the University of Brasília (UnB) and the  
39 -University of São Paulo (USP) in a partnership with the Brazilian Ministry of  
40 -Budget, Planning, and Management (MP). It was designed it as an integrated  
41 -platform for collaborative software development. It includes functionality for  
42 -social networking, mailing lists, version control system, and source code  
43 -quality monitoring. To coordinate and develop this project during 30 months,  
44 -UnB received from the Brazilian Federal Government a total of 2,619,965.00 BRL  
45 -(about 750,000.00 USD in June 2016). 39 +After some events and meetings to collect requirements from the federal
  40 +government and from the society, a new platform for the SPB Portal was
  41 +developed, among January 2014 and June 2016, by the University of
  42 +Brasília (UnB) and the University of São Paulo (USP) in a partnership
  43 +with the Brazilian Ministry of Budget, Planning, and Management (MP). It
  44 +was designed as an integrated platform for collaborative software
  45 +development., and includes functionality for social networking, mailing
  46 +lists, version control system, and source code quality monitoring. To
  47 +coordinate and develop this project during 30 months, UnB received from
  48 +the Brazilian Federal Government a total of 2,619,965.00 BRL (about
  49 +750,000.00 USD in June 2016).
46 50
47 \begin{figure*}[hbt] 51 \begin{figure*}[hbt]
48 \centering 52 \centering
@@ -62,25 +66,27 @@ Paulo/Brazil, Ribeirão Preto/Brazil, Salvador/Brazil, Punta Cana/Dominican @@ -62,25 +66,27 @@ Paulo/Brazil, Ribeirão Preto/Brazil, Salvador/Brazil, Punta Cana/Dominican
62 Republic, and Montreal/Canada. In other words, we had a team working in 66 Republic, and Montreal/Canada. In other words, we had a team working in
63 distributed collaborative virtual environment. 67 distributed collaborative virtual environment.
64 68
65 -Figure \ref{fig:spb} shows the home page of this integrated platform. All  
66 -development was done in the open, and the changes we needed in the FOSS tools  
67 -were contributed back to their communities. Our process was based on agile  
68 -practices and FOSS communities interaction. We defined development cycles and  
69 -released 5 versions of the new SPB Portal. The first release (beta) was in  
70 -September 2014, only 9 months from the begin of the project. We migrated and  
71 -turned off the old portal in September 2015. Finally, the last version  
72 -illustrated in Figure 1 was released in June 2016. 69 +Figure \ref{fig:spb} shows the home page of this integrated platform.
  70 +All development was done in the open, and the changes we needed in the
  71 +FOSS tools were contributed back to their respective communities. Our
  72 +process was based on agile practices and FOSS communities interaction.
  73 +We defined development cycles and released 5 versions of the new SPB
  74 +Portal. The first release (beta) was in September 2014, only 9 months
  75 +from the beginning of the project. The old portal was shut down down in
  76 +September 2015. Finally, the last version illustrated in Figure 1 was
  77 +released in June 2016.
73 78
74 -In this paper, we present an overview of this new generation of the SPB Portal.  
75 -Alongside, this experience report shares our methodology and process to develop  
76 -this project working with the Brazilian federal government to comply with its  
77 -requirements at the same time to be as faithful as possible to FOSS  
78 -development. Moreover, we discuss several lessons learned to provide a  
79 -distributed collaborative virtual environment involving a large undergraduate  
80 -student team and remote senior developers. Lastly, we released an unprecedented  
81 -platform for the Brazilian government applying empirical software development  
82 -methods. This case can help other projects overcome a lot of software  
83 -engineering challenges in the future, as well as, how the universities take  
84 -advances to improve the real-world experiences of their student with these  
85 -kinds of projects. 79 +In this paper, we present an overview of this new generation of the SPB
  80 +Portal. This experience report shares our methodology and process to
  81 +develop this project working with the Brazilian federal government to
  82 +comply with its requirements at the same time to be as faithful as
  83 +possible to FOSS development. Moreover, we discuss several lessons
  84 +learned to provide a distributed collaborative virtual environment
  85 +involving a large undergraduate student team and remote senior
  86 +developers. Lastly, we released an unprecedented platform for the
  87 +Brazilian government applying empirical software development methods.
  88 +This case can help other projects overcome similar software engineering
  89 +challenges in the future, as well as illustrate how universities can
  90 +improve the real-world experience of their students by means of this
  91 +kind of project.
86 92