Commit 7ffe5a2d4eb00458bc9771d659e9590c2bd7fd12
1 parent
072a0f0d
Exists in
master
and in
3 other branches
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}... |