Merge Request #2
← To merge requests
From
leofl:master
into
softwarepublico:master
Master
Revisões no abstract, introdução, conclusão e bibliografia.
Commits (6)
Showing
5 changed files
Show diff stats
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} | ... | ... |
-
mentioned in commit f9c4231189a82852f5a88ffc677a3d268751dd5f