Compare View

switch
from
...
to
 
Commits (2)
opensym2017/content/01-introduction.tex
1 1 \section{Introduction}
2 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 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 51 \begin{figure*}[hbt]
48 52 \centering
... ... @@ -62,25 +66,27 @@ Paulo/Brazil, Ribeirão Preto/Brazil, Salvador/Brazil, Punta Cana/Dominican
62 66 Republic, and Montreal/Canada. In other words, we had a team working in
63 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  
... ...
opensym2017/content/02-spb.tex
... ... @@ -2,9 +2,9 @@
2 2 \label{sec:spb}
3 3  
4 4 FOSS is a phenomenon that has gained notoriety in recent years and has been
5   -attarcting the interest of academia. However, since the beginning of computing
  5 +attracting the interest of academia. However, since the beginning of computing
6 6 the majority of developers worked in the way that we now identify as free
7   -software, that is, sharing code openly. This feature makes the code available
  7 +software, that is, sharing code openly. This openness makes the code available
8 8 for inspection, modification, and use by any person or organization
9 9 \cite{hippel2003,kon2012}.
10 10  
... ... @@ -16,7 +16,7 @@ and its development is based on open collaboration and development practices
16 16 \cite{meirelles2013}.
17 17  
18 18 From the economic point of view, unlike what happens with proprietary software,
19   -FOSS promotes the establishment of several suppliers that compete with each
  19 +FOSS promotes the establishment of several suppliers that can compete with each
20 20 other based on the same software. This stronger competition among suppliers
21 21 brings benefits to users because it gives better assurances regarding the
22 22 evolution of the system and induces a reduction in prices \cite{kon2012}. These
... ... @@ -31,14 +31,15 @@ study, adapt, and improve the software. Example of common FOSS licenses are
31 31 the \textit{GPL (GNU General Public License)}, the Apache license, the MIT
32 32 license, and the BSD license.
33 33  
34   -The SPB portal has been designed in 2005 and released in 2007. In a practical
35   -view, it is a web system that has consolidated itself as a software project
36   -sharing environment. It provides a space (community) for each software.
37   -Therefore, the current platform for SPB was designed to include tools that
38   -promote collaboration and interaction in communities (by managers, users, and
39   -developers) of the projects, according to the practices used in FOSS
40   -communities. This includes e-mail lists, discussion forums, issue trackers,
41   -version control systems, and social networking environments.
  34 +The original incarnation of SPB portal has been designed in 2005 and
  35 +released in 2007. From a practical point of view, it is a web system
  36 +that has consolidated itself as an environment for sharing software
  37 +projects. It provides a space (community) for each software.
  38 +Therefore, it was designed to include tools that promote collaboration
  39 +and interaction in communities (by managers, users, and developers) of
  40 +the projects, according to the practices used in FOSS communities. This
  41 +includes mailing lists, discussion forums, issue trackers, version
  42 +control systems, and social networking environments.
42 43  
43 44 Initially, the purpose of the portal was only to share the software developed
44 45 in the Brazilian government, to reduce the costs of hiring software. However,
... ... @@ -48,13 +49,14 @@ results obtained through the use of those solutions. In this way, some software
48 49 development cooperatives and private companies have shown an interest in making
49 50 their software available on the SPB platform.
50 51  
51   -The concept of Brazilian Public Software goes beyond FOSS. In addition to being
52   -licensed under a FOSS license, a SPB needs to have explicit guarantees that it
53   -is a public good, and that project must be available in the SPB portal. Being a
54   -true public good assumes requirements that can not be met solely by means of
55   -FOSS licensing. For example, there must be a relaxed trademark usage policy by
56   -the original vendor that do not stop eventual competitors from adversiting
57   -services for that same software. Inclusion in the SPB project also has extra
58   -requirements, such as having a public version control system, installation
59   -manual, and hardware requirements specification.
  52 +The concept of Brazilian Public Software goes beyond FOSS. In addition
  53 +to being licensed under a FOSS license, a SPB needs to have explicit
  54 +guarantees that it is a public good, and that project must be available
  55 +in the SPB portal. Being a true public good assumes requirements that
  56 +can not be met solely by means of FOSS licensing. For example, there
  57 +must be a relaxed trademark usage policy by the original vendor that
  58 +does not stop eventual competitors from advertising services for that
  59 +same software. Inclusion in the SPB Portal also has extra requirements,
  60 +such as having a public version control system, installation manual, and
  61 +hardware requirements specification.
60 62  
... ...