Commit 0d9742d0ea30d8453e89d3bdfa4ab3ce6f233ad1
1 parent
43ff2882
Exists in
master
and in
3 other branches
[opensym] reviewing the introduction section
Showing
1 changed file
with
80 additions
and
85 deletions
Show diff stats
opensym2017/content/01-introduction.tex
... | ... | @@ -2,108 +2,103 @@ |
2 | 2 | \label{sec:intro} |
3 | 3 | |
4 | 4 | The Brazilian Government released in the year 2000 the Eletronic Government |
5 | -program (eGov) aiming at democratizing information access and improving the | |
6 | -public provision quality of service and information. In 2003, the Brazilian | |
7 | -President created a committee for implementation of free | |
8 | -software(\footnote{\url{http://www.softwarelivre.gov.br/documentos-oficiais/ | |
9 | -DecretoComite}}) and thereafter the Chief of Staff of Brazil sent a circular- | |
10 | -letter to all Ministries in which the recommendation to adopt Free/Libre/Open | |
11 | -Source Software (FLOSS\footnote{In this work, the acronym ``FLOSS'' is | |
12 | -used as a representative for ``Free Software'', ``Open Source Software'' (OSS), | |
13 | -and``Free/Open Source Software'' (FOSS).}) became a public policy | |
14 | -(\footnote{\url{http://www.softwarelivre.gov.br/documentos-oficiais/circulardoministro}}). | |
5 | +program (eGov) aiming at democratizing information access and improving the | |
6 | +public provision quality of service and information. In 2003, the Brazilian | |
7 | +President created a | |
8 | +committee\footnote{\url{http://www.softwarelivre.gov.br/documentos-oficiais/ | |
9 | +DecretoComite}} for implementation of Free/Libre/Open Source Software | |
10 | +(FLOSS\footnote{In this work, the acronym ``FLOSS'' is used as a representative | |
11 | +for ``Free Software'', ``Open Source Software'' (OSS), and``Free/Open Source | |
12 | +Software'' (FOSS).}) and thereafter the Chief of Staff of Brazil sent a | |
13 | +circular- letter to all Ministries in which the recommendation to adopt FLOSS | |
14 | +became a public | |
15 | +policy\footnote{\url{http://www.softwarelivre.gov.br/documentos-oficiais/circulardoministro}}. | |
15 | 16 | In 2007, the Brazilian Public Software Portal (\textit{Portal do Software |
16 | -Público Brasileiro}, in Portuguese) was released with the goal of sharing FLOSS projects developed by, or for, the Brazilian Government. Additionally, the | |
17 | +Público Brasileiro}, in Portuguese) was released with the goal of sharing FLOSS | |
18 | +projects developed by, or for, the Brazilian Government. Additionally, the | |
17 | 19 | Brazilian legal instrument on software contracting (known as IN 04/2012) |
18 | 20 | mandates that public agents must prioritize solutions available on the SPB |
19 | 21 | Portal. The acquisition of a proprietary solution must be explicitly justified |
20 | 22 | by demonstrating that there is no suitable alternative on the SPB Portal. In |
21 | 23 | 2013, the Brazilian Federal Court issued a ruling (\textit{Acórdão 2314/2013}) |
22 | -about contracts between the public administration and suppliers using agile | |
24 | +about contracts between the public administration and suppliers using agile | |
23 | 25 | methodologies in software development. |
24 | 26 | |
25 | 27 | Despite of these legal advancements, in practice, Brazilian government agents |
26 | -still do not practice, or even understand, | |
27 | -collaborative and empirical software development methods, | |
28 | -such as free software or agile methodologies. Thus, | |
29 | -hierarchical and traditional processes and the lack | |
30 | -of expertise of public agents in real-world software development produce | |
31 | -inefficiency in software development contracts, besides | |
32 | -unjustifiable expending of taxpayers money. | |
28 | +still do not practice, or even understand, collaborative and empirical software | |
29 | +development methods, such as FLOSS or agile methodologies. Thus, hierarchical | |
30 | +and traditional processes and the lack of expertise of public agents in | |
31 | +real-world software development produce inefficiency in software development | |
32 | +contracts, besides unjustifiable expending of taxpayers money. | |
33 | 33 | |
34 | 34 | Since 2009, the SPB Portal has had several technical issues. The original |
35 | -codebase development has stopped, leaving substantial | |
36 | -technical debt~\cite{refactoring}. | |
37 | -The system was a modified version of an | |
38 | -existing FLOSS platform called OpenACS \footnote{\url{http://openacs.org}}, and | |
39 | -the old SPB Portal did not receive updates from OpenACS releases. | |
40 | -In this scenario, the portal maintenance has become increasingly | |
41 | -difficult. | |
42 | - | |
43 | -After collecting requirements from the Federal | |
44 | -Government and society, a new platform for the SPB Portal was | |
45 | -developed, between January 2014 and June 2016, by the University of Brasília | |
46 | -(UnB) and the University of São Paulo (USP) in a partnership with the Brazilian | |
47 | -Ministry of Planning, Budget, and Management (MP). It was designed as an | |
48 | -integrated platform for collaborative software development \cite{bobr2003}, | |
49 | -including social networking, mailing lists, version control | |
50 | -system, and source code quality monitoring. To coordinate and develop this | |
51 | -project during 30 months, UnB was funded by a grant | |
52 | -of 2,619,965.00 BRL (about 750,000.00 USD in June 2016) | |
53 | -from the Federal Government. | |
54 | - | |
35 | +codebase development has stopped, leaving substantial technical | |
36 | +debt~\cite{refactoring}. The system was a modified version of an existing | |
37 | +FLOSS platform called OpenACS\footnote{\url{http://openacs.org}}, and the old | |
38 | +SPB Portal did not receive updates from OpenACS releases. In this scenario, | |
39 | +the portal maintenance has become increasingly difficult. | |
55 | 40 | |
41 | +After collecting requirements from the Federal Government and society, a new | |
42 | +platform for the SPB Portal was developed, between January 2014 and June 2016, | |
43 | +by the University of Brasília (UnB) and the University of São Paulo (USP) in a | |
44 | +partnership with the Brazilian Ministry of Planning, Budget, and Management | |
45 | +(MP). It was designed as an integrated platform for collaborative software | |
46 | +development \cite{bobr2003}, including social networking, mailing lists, | |
47 | +version control system, and source code quality monitoring. To coordinate and | |
48 | +develop this project during 30 months, UnB was funded by a grant of | |
49 | +2,619,965.00 BRL (about 750,000.00 USD in June 2016) from the Federal | |
50 | +Government. | |
56 | 51 | |
57 | 52 | 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 | |
68 | -valued opportunity to explore the benefits and challenges of using | |
69 | -FLOSS~\cite{kon2011,deKoenigsberg2008, fagerholm2013, fagerholm2014} and | |
53 | +about fifty undergraduate students (not all of them at the same time, since the | |
54 | +team changed along the time), two professional designers, and six senior | |
55 | +developers from FLOSS communities. Professors and undergraduate students were | |
56 | +from UnB and master students were from USP. Regarding the designers and senior | |
57 | +developers, seven of eight were living outside Brasília, the UnB location. Two | |
58 | +of them were abroad at Dominican Republic and Canada. In other words, we had a | |
59 | +distributed team working in a collaborative virtual environment. This diversity | |
60 | +of actors and the relationships between industry, academy, and government also | |
61 | +made the project a valued opportunity to explore the benefits and challenges of | |
62 | +using FLOSS~\cite{kon2011,deKoenigsberg2008, fagerholm2013, fagerholm2014} and | |
70 | 63 | Agile~\cite{steghofer2016, harzl2017} practices for Software Engineering |
71 | 64 | education. |
72 | 65 | |
73 | -All the code was developed as open source. The changes we needed in the | |
74 | -FLOSS tools were implemented by ourselves and | |
75 | -contributed back to their respective communities. Our | |
76 | -process was based on agile practices and FLOSS communities interaction. | |
77 | -We incrementally released five versions of the new SPB | |
78 | -Portal. The first release (beta) was in September 2014, only 9 months | |
79 | -from the beginning of the project. The old portal was shut down in | |
80 | -September 2015. Finally, the last version was | |
81 | -released in June 2016. | |
66 | +All the code was developed as open source. The changes we needed in the FLOSS | |
67 | +tools were implemented by ourselves and contributed back to their respective | |
68 | +communities. Our process was based on agile practices and FLOSS communities | |
69 | +interaction. We incrementally released five versions of the new SPB Portal. | |
70 | +The first release (beta) was in September 2014, only 9 months from the | |
71 | +beginning of the project. The old portal was shut down in September 2015. | |
72 | +Finally, the last version was released in June 2016. | |
82 | 73 | |
83 | -In this paper, we present an overview of the new SPB Portal. | |
84 | -The paper shares the methodology employed to develop this project. | |
85 | -This methodology has the goals of satisfying Government | |
86 | -requirements and adhering as much as possible to FLOSS and agile | |
87 | -practices~\cite{mockus2002, tosi2015}. Moreover, we discuss lessons | |
88 | -learned in providing a distributed and collaborative virtual environment involving | |
89 | -a large undergraduate students team and remote senior developers. Finally, we | |
90 | -released an innovative platform for helping the Brazilian government to apply | |
91 | -empirical software development methods. This case can help other projects to | |
92 | -overcome similar software engineering challenges in the future, as well as to | |
93 | -illustrate how universities can improve the real-world experience of their | |
94 | -students. | |
74 | +In this paper, we present an overview of the new SPB Portal. The paper shares | |
75 | +the methodology employed to develop this project. This methodology has the | |
76 | +goals of satisfying Government requirements and adhering as much as possible to | |
77 | +FLOSS and agile practices~\cite{mockus2002, tosi2015}. Moreover, we discuss | |
78 | +lessons learned in providing a distributed and collaborative virtual | |
79 | +environment involving a large undergraduate students team and remote senior | |
80 | +developers. Finally, we released an innovative platform for helping the | |
81 | +Brazilian government to apply empirical software development methods. This case | |
82 | +can help other projects to overcome similar software engineering challenges in | |
83 | +the future, as well as to illustrate how universities can improve the | |
84 | +real-world experience of their students. | |
95 | 85 | |
96 | -The remainder of this work is organized as follows. | |
97 | -Section \ref{sec:spb}... | |
98 | -Section \ref{sec:related} enumerates a number of related works on the... | |
99 | -Section \ref{sec:researchdesign} presents the research design... | |
100 | -Section \ref{sec:requirements} reports ... | |
101 | -Section \ref{sec:architecture} ... | |
102 | -Section \ref{sec:features} ... | |
103 | -Section \ref{sec:ux} ... | |
104 | -Section \ref{sec:process} ... | |
105 | -Section \ref{sec:contributions} ... | |
106 | -Section \ref{sec:lessons} ... | |
107 | -Finally, Sections \ref{sec:conclusion} concludes the paper highlighting its | |
108 | -main contributions and pointing paths to future works. | |
86 | +The remainder of this work is organized as follows. Section \ref{sec:spb} | |
87 | +discusses the concepts of Brazilian Public Software and Free Software. Section | |
88 | +\ref{sec:related} enumerates a number of related projects from other countries. | |
89 | +Section \ref{sec:researchdesign} presents the open questions these guided this | |
90 | +paper. Section \ref{sec:requirements} reports how the Brazilian Government | |
91 | +stakeholders collected the theoretical requirements as well as how we define | |
92 | +the technological requirements to release an initial version. Section | |
93 | +\ref{sec:architecture} shares our decisions about the systems that together | |
94 | +provided a wide subset of the requirements and our strategy to integrate them. | |
95 | +Section \ref{sec:features} describes the main features of the new SPB Portal. | |
96 | +Section \ref{sec:ux} reports the user experience evolution during the | |
97 | +integration of the selected FLOSS tools. Section \ref{sec:process} discusses | |
98 | +our strategies to support the different organizational cultures and to involve | |
99 | +undergraduate students as protagonists of the development process. Section | |
100 | +\ref{sec:contributions} summarizes the contributions to the FLOSS upstream | |
101 | +communities we interacted with. Finally, Sections \ref{sec:conclusion} | |
102 | +concludes the paper highlighting its main contributions, sharing our lessons | |
103 | +learned, and pointing paths to future works. | |
109 | 104 | ... | ... |