03-requirements.tex
6.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
\section{Requirements}
\label{sec:requirements}
In 2013, the SPB Portal had more than 600 thousand unique visitors, generating
more than 16 million page views with about 50 million hits. By evaluating only
the main projects, there were more than 15 thousand downloads and 4 thousand
messages exchanged in their forums. This data illustrates the potential of the
SPB Portal, even with some limitations in the past.
By preparing the evolution project described in this paper, the Brazilian
government promote 3 events to collect the requirements, in particular from
society point of view: (i) an online form to collect general ideas; (ii) a
face-to-face meeting with society in general; (iii) a workshop to review the
SPB concepts and requirements with IT stockholders from the Brazilian
government and public organization.
After these 3 rounds discussing the new SPB Portal, Brazilian government listed
about 145 requirements and developed and mind
model\footnote{\url{https://softwarepublico.gov.br/social/spb/gallery/mapaconceitual.png}}
to guide the SPB portal evolution. In this scenario, the 10 most voted
requirements are:
\begin{enumerate}
\item Source code repository with public access.
\item Visit community pages without login.
\item Distributed version control system.
\item Scores of users and developers collaboration.
\item Search software by features.
\item Integration with social networks.
\item Repository for future ideas and requirements.
\item Friendly URL to access a public software community pages.
\item User feedback about a public software.
\item Experience report about the use of a public software.
\end{enumerate}
%TODO: translate figure
\begin{figure}[hbt]
\centering
\includegraphics[width=\linewidth]{figures/requirements.png}
\caption{Technological requirement overview.}
\label{fig:requirements}
\end{figure}
Moreover, there were other requirements based on the experience of the IT
stakeholders from the Brazilian government and from the Brazilian FOSS
community (that UnB and USP were representing too in this project). The new
platform just could work properly if there is a unique authentication to use
the set of tools that could provide features to cover. Additionally, a unified
interface was an important non-functional requirement to make easy the user
experience into the new platform.
At the first moment, we wish to release a initial version to replace the old
SPB portal. For that, the first version available in production needed to
provide some features:
\begin{enumerate}
\item Organized public software catalog.
\item Social network environment (profile for users, software pages, and community pages).
\item Content Management Systems (CMS) features.
\item Web-based Git repository manager with wiki and issue tracking features.
\item Mailing lists and discussion forums.
\end{enumerate}
Other requirements also were planned during the conceptual phase of the SPB
evolution project such as an integrated search engine and a web-based source
code static analysis. Therefore, by analyzing all of these requirements, we
propose a technological requirement overview, illustrated in Figure
\ref{fig:requirements} to guide the development of the new SPB platform once we
have designed this project to be built based on existing FOSS tools. However, the integration of several existing systems implemented in different programming language and frameworks, providing unique authentication, interface apparency, and search engine, as well as, other back-end features, is not a trivial work.
The new SPB platform is fully an integrated environment, being very advanced comparing to other related projects and initiatives. For example, the USA government has a platform designed to improve access to the federal government developed software. Code.gov is an interface to organize the USA government projects and, in short, make easy that their users and developers obtain some information and access their source code repositories on GitHub. However, there are not social networking and CMS features, as well as, other communication resources provided by the platform.
%https://code.gov
There are two initiatives from Europe: OSOR and OW2. The Open Source Observatory (OSOR) is a community hosted in JoinUp that is a environment powered by the European Commission. OSOR aims exchanging information, experiences and best practices around open source solutions for use in public administrations. Summarily, it helps to find an open source software made available by other public administrations, providing access to information such as news, events, studies and solutions related to implementation of open source software. It also offers forum discussions and community mailing lists, but it does not have an integrated source code repository manager once for the each project has a link to its own external repository (or its tarball file).
%https://joinup.ec.europa.eu/community/osor
OW2 is a FOSS community to promote the development of FOSS middleware, generic business applications, cloud computing platforms and foster a community and business ecosystem. In short, it aims to facilitate the development, deployment and management of distributed applications with a focus on FOSS middleware and related development and management tools.
%http://ow2.org
Moreover, in the past, there were the QualiPSo project to provide to FOSS users, developers, and consumers, quality resources and expertise on the various topics related to free and open source software. That project have tried to develop a platform called QualiPSo Factory but it was not fully completed.
In Latin American has an initiative based on the SPB project called Software Publico Regional. From the practical point of view, it provides a customized Gitlab instance to share the source code and documentation of the project from the involved countries.
%http://softwarepublicoregionalbeta.net/
Such as Brazil, Chile has its own portal also called Software Publico. The user can create content in the communities (news items, documents, wiki pages), but all repository is available at the Bitbucket platform.
%http://www.softwarepublico.gob.cl -> https://bitbucket.org/softwarepublico