Merge Request #2

Merged
softwarepublico/articles!2
Created by Leonardo Leite

Master

Revisões no abstract, introdução, conclusão e bibliografia.

Assignee: Melissa Wen
Milestone: None

Merged by Melissa Wen

Commits (6)
2 participants
opensym2017/content/00-abstract.tex
1 1 \begin{abstract}
2 2  
3   -% teste
4   -
5   -The Brazilian Public Software (SPB) is a program by the Brazilian Federal
6   -Government to foster the sharing and collaboration on Free/Libre/Open Source
7   -Software (FLOSS) solutions for the public administration. In the one hand,
8   -Brazilian Public Softwares have some differences from FLOSS projects, in
9   -particular, the software is considered a public good and the Federal government
10   -assumes some responsibilities related to its use. In the other hand, the
  3 +The Brazilian Public Software (SPB) is a program promoted by the Brazilian Federal
  4 +Government to foster sharing and collaboration on Free/Libre/Open Source
  5 +Software (FLOSS) solutions for the public administration. On the one hand,
  6 +Brazilian Public Software has some differences from other FLOSS projects. In
  7 +particular, the public software is considered a public good and the Federal Government
  8 +assumes some responsibilities related to its use. On the other hand, the
11 9 software development principles are the same: the trend towards
12   -decentralization in decision-making, the information and development sharing,
13   -and the continuous feedback. In this context, we have designed a platform based
14   -on the integration and evolution of existing FLOSS tools. Nowadays, the SPB
15   -Portal provides several modern features for software collaborative development,
16   -helping the Brazilian public administration to share its solutions. In this
  10 +decentralization in decision-making, information and code sharing,
  11 +and continuous feedback. In this context, we have designed the SPB Portal, a platform based
  12 +on the integration and evolution of existing FLOSS tools. Nowadays, it
  13 +provides several modern features for software collaborative development,
  14 +helping the Brazilian public administration in sharing its solutions. In this
17 15 paper, we present this integrated software development platform that was
18   -developed for the program by a heterogeneous team composed by professors,
19   -master students, undergraduate students and professionals from FLOSS
  16 +developed for the SPB program by a heterogeneous team composed by professors,
  17 +master students, undergraduate students, and professionals from FLOSS
20 18 communities. The development of this platform used several FLOSS applications,
21   -providing a non-trivial integration among them, as well as, have generated
22   -several contributed features back to them. In this experience report, alongside
23   -the platform architecture, features, and the user experience efforts carried
24   -out, we also discuss our work process, based on agile and free software
25   -development practices, and the lessons learned in 30 months work on the SPB
  19 +providing a non-trivial integration among them. This effort has also produced
  20 +several new features that were contributed back to these FLOSS applications. In this experience report, alongside
  21 +the platform architecture, the features, and the user experience challenges,
  22 +we also discuss our work process, based on agile and free software
  23 +development practices, and the lessons learned in 30 months of work on the SPB
26 24 project.
27 25  
28 26 \end{abstract}
... ...
opensym2017/content/01-introduction.tex
... ... @@ -2,49 +2,50 @@
2 2 \label{sec:intro}
3 3  
4 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 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 10 goal of sharing FLOSS projects developed by, or for, the Brazilian
11 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 14 acquisition of a proprietary solution must be explicitly justified by
15 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 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 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 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 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 50 \begin{figure*}[hbt]
50 51 \centering
... ... @@ -53,44 +54,45 @@ total of 2,619,965.00 BRL (about 750,000.00 USD in June 2016).
53 54 \label{fig:spb}
54 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 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 71 education.
71 72  
72 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 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 79 Portal. The first release (beta) was in September 2014, only 9 months
78 80 from the beginning of the project. The old portal was shut down in
79 81 September 2015. Finally, the last version, illustrated in Figure 1, was
80 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 92 empirical software development methods. This case can help other projects to
91 93 overcome similar software engineering challenges in the future, as well as to
92 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 97 The remainder of this work is organized as follows.
96 98 Section \ref{sec:spb}...
... ...
opensym2017/content/12-conclusion.tex
1 1 \section{Conclusion}
2 2 \label{sec:conclusion}
3 3  
4   -In this paper we present and discuss issues experienced during a government-
5   -funded project, in partnership with University of Brasilia and University of
6   -São Paulo, to evolve the Brazilian Public Software portal.
7   -
8   -The contributions of this paper are twofold. First, we present how an unprecedent
9   -platform was developed and delivered to Brazilian government. This
10   -platform - developed by an heterogenous team of professors, masters and
11   -undergraduate students, IT professionals and governmental managers - provides
12   -several modern features from the integration of more than 10 FLOSS systems.
13   -
14   -Second, the thirty-month long project in which the SPB platform was developed points
15   -out that it is possible to mitigate issues seen as conflicting to the IT
16   -development environment and between industry and academy. The team was engaged in
  4 +In this paper we presented and discussed issues experienced during a government-funded
  5 +project, in partnership with the University of Brasilia and the University of
  6 +São Paulo, to evolve the Brazilian Public Software Portal.
  7 +
  8 +The contributions of this paper are twofold. First, we presented how an unprecedented
  9 +platform was developed and delivered to the Brazilian government. This
  10 +platform - developed by a heterogeneous team of professors, masters and
  11 +undergraduate students, IT professionals, and governmental managers - provides
  12 +several modern features for the integration of more than 10 FLOSS systems.
  13 +
  14 +Second, the experience in the SPB Portal project pointed
  15 +out that it is possible to mitigate conflicts in the development environment
  16 +and to conciliate governmental and academy cultures. The team was engaged in
17 17 providing a friendly working environment as well as in showing to governmental agents
18 18 another way to interact with the FLOSS community and the university. In the paper,
19   -we try to show that, as long as the institution can provide a healthy and challenging
  19 +we tried to show that, as long as the institution can provide a healthy and challenging
20 20 environment to its students, one may conciliate studies and professional training
21 21 in universities. After the end of the project, some students successfully
22   -embraced opportunities in public and private sectos, within national borders
23   -and abroad. Some others went further and started their own companies.
  22 +embraced opportunities in public and private sectors, within national borders
  23 +and abroad. Some other students went further and started their own companies.
24 24 We also demonstrate that, with some adaptations/"translation processes", it is feasible
25 25 to conciliate agile methodologies and FOSS practices in order to develop software to
26 26 governmental organizations with functional hierarchical structures that use
27 27 traditional development paradigm.
28 28  
29   -Future work should use the many data produced by the project to validate and evaluate
  29 +\leo{Padronziar uso FOSS vs FLOSS. Qual vcs preferem?}
  30 +
  31 +Future work should use data produced by the project to validate and evaluate
30 32 how the used FLOSS and Agile practices have impacted the students and also the
31   -governmental development process. For this, we would conduce a \textit{post-mortem}
32   -analyse using the project open data and a survey targeted the involved actors.
  33 +governmental development process. For this, we would conduce a \textit{postmortem}
  34 +analysis using the project open data and a survey targeting the involved actors.
33 35  
34 36  
35 37 The portal is available at \url{softwarepublico.gov.br}. All
36 38 documentation, including detailed architecture and operation manuals are
37 39 also available\footnote{\url{https://softwarepublico.gov.br/doc/}
38   -(in Portuguese only at the moment)}).
  40 +(in Portuguese only at the moment)}.
39 41 %
40 42 All the integrated tools are FOSS and our contributions were published
41 43 in open repositories, available on the SPB Portal itself. We also
42   -contributed these features back to the respective communities: that
43   -benefits those communities, as well as us since we can share future
  44 +contributed these features back to the respective communities, which
  45 +benefits both those communities and us, since we can share future
44 46 development and maintenance effort with other organizations that
45   -participate in their projects.
  47 +participate in these projects.
46 48  
47 49 %===========
48 50 % Conclusion
... ...
opensym2017/spb.bib
... ... @@ -181,10 +181,11 @@
181 181 @article{bobr2003,
182 182 author = {Booch, Grady and Brown, Alan W.},
183 183 journal = {Advances in Computers},
184   - pages = {?},
  184 + pages = {1--27},
185 185 title = {Collaborative Development Environments},
186 186 volume = {59},
187   - year = {2003}
  187 + year = {2003},
  188 + publisher={Elsevier}
188 189 }
189 190  
190 191 @inproceedings{chao2007student,
... ... @@ -194,8 +195,7 @@
194 195 pages={255--261},
195 196 year={2007},
196 197 url = {http://dblp.uni-trier.de/db/conf/csee/csee2007.html},
197   - publisher = {IEEE Computer Society},
198   - organization={IEEE}
  198 + publisher = {IEEE Computer Society}
199 199 }
200 200  
201 201 @inproceedings{tosi2015,
... ...
opensym2017/spb.tex
... ... @@ -72,6 +72,13 @@
72 72 % by using the "\todo{...}" command. Make sure to disable the draft
73 73 % option again before submitting your final document.
74 74 \usepackage{todonotes}
  75 +\newcommand{\leo}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Léo:} #2}}
  76 +\newcommand{\paulo}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Paulo:} #2}}
  77 +\newcommand{\melissa}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Melissa:} #2}}
  78 +\newcommand{\terceiro}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Terceiro:} #2}}
  79 +\newcommand{\siqueira}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Siqueira:} #2}}
  80 +\newcommand{\lucas}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Lucas:} #2}}
  81 +\newcommand{\hilmer}[2][]{\todo[inline,color=yellow!70, #1]{\emph{Hilmer:} #2}}
75 82  
76 83 % Paper metadata (use plain text, for PDF inclusion and later
77 84 % re-using, if desired). Use \emtpyauthor when submitting for review
... ... @@ -164,6 +171,8 @@
164 171 }
165 172 }
166 173  
  174 +
  175 +
167 176 \maketitle
168 177 %------------------------------------------------------------------------------
169 178 \input{content/00-abstract}
... ...