Commit b155193db784067b67837c7dc16b53db19ec84be

Authored by Paulo Meireles
1 parent 85235f41

[opensym] new version of the requirements section

opensym2017/content/01-introduction.tex
@@ -6,9 +6,9 @@ program (eGov) aiming at democratizing information access and improving the @@ -6,9 +6,9 @@ program (eGov) aiming at democratizing information access and improving the
6 public provision quality of service and information. 6 public provision quality of service and information.
7 % 7 %
8 In 2003, the Federal Government created a committee for implementation of 8 In 2003, the Federal Government created a committee for implementation of
9 -Free/Libre/Open Source Software (FLOSS)\footnote{Free Software, Open Source, or Free/Open Source Software.} and thereafter a  
10 -circular-letter was sent to all Ministries in which the recommendation to adopt  
11 -FLOSS became a public policy. 9 +Free/Libre/Open Source Software (FLOSS)\footnote{Free Software, Open Source, or
  10 +Free/Open Source Software.} and thereafter a circular-letter was sent to all
  11 +Ministries in which the recommendation to adopt FLOSS became a public policy.
12 % 12 %
13 In 2007, the Brazilian Public Software Portal (\textit{Portal do Software 13 In 2007, the Brazilian Public Software Portal (\textit{Portal do Software
14 Público Brasileiro}, in Portuguese) was released with the goal of sharing FLOSS 14 Público Brasileiro}, in Portuguese) was released with the goal of sharing FLOSS
opensym2017/content/05-requirements.tex
1 \section{Requirements} 1 \section{Requirements}
2 \label{sec:requirements} 2 \label{sec:requirements}
3 3
4 -\begin{comment}  
5 -In 2013, the SPB Portal had more than 600 thousand unique visitors, generating  
6 -more than 16 million page views with about 50 million hits. By evaluating only  
7 -the main projects, there were more than 15 thousand downloads and 4 thousand  
8 -messages exchanged in their forums. These data illustrates the potential of the  
9 -SPB Portal, even with several limitations in the past.  
10 -\end{comment}  
11 -  
12 -By preparing the evolution project described in this paper, the Brazilian  
13 -government promoted 3 events to collect the requirements, in particular from  
14 -society point of view: (i) an online form to collect general ideas; (ii) a  
15 -face-to-face meeting with society in general; (iii) a workshop to review the  
16 -SPB concepts and requirements with IT stakeholders from the Brazilian  
17 -government and public organizations.  
18 -  
19 -After these 3 rounds discussing the new SPB platform, the Brazilian government  
20 -listed about 145 requirements. The 10 most voted requirements were:  
21 -(i) Source code repository with public access;  
22 -(ii) Visit community pages without login;  
23 -(iii) Distributed version control system;  
24 -(iv) Scores of users and developers collaboration;  
25 -(v) Search software by features;  
26 -(vi) Integration with social networks;  
27 -(vii) Repository for future ideas and requirements;  
28 -(viii) Friendly URL to access a public software community page;  
29 -(ix) User feedback about a public software;  
30 -(x) Report of the experience about the use of a public software.  
31 -  
32 -%\begin{figure}[hbt]  
33 -% \centering  
34 -% \includegraphics[width=\linewidth]{figures/technological-requirements.png}  
35 -% \caption{Technological requirements.}  
36 -% \label{fig:requirements}  
37 -%\end{figure}  
38 -  
39 -  
40 -There were other requirements based on the experience of the IT  
41 -stakeholders from the Brazilian government and from the Brazilian FLOSS  
42 -community (that UnB and USP were representing too in this project). The  
43 -new platform would only work properly if there is a unique  
44 -authentication to use the provided tools. Additionally, a unified  
45 -interface was an important non-functional requirement to have a better  
46 -user experience in the new platform.  
47 -  
48 -At the first moment, we desired to release an initial version that could  
49 -replace the old SPB portal. For that, the first version should have  
50 -features such as:  
51 -(i) An organized public software catalog;  
52 -(ii) Social network environment (profiles for users, software pages, and community pages);  
53 -(iii) CMS features;  
54 -(iv) Web-based Git repository manager with wiki and issue tracking features;  
55 -(v) Mailing lists and discussion forums;  
56 -  
57 -Other requirements were also planned during the conception phase of the  
58 -SPB evolution project, such as an integrated search engine and a  
59 -web-based source code static analysis monitor. By analyzing all of these  
60 -requirements, we have designed the SPB evolution  
61 -project based on existing FLOSS tools. However, the integration of  
62 -several existing systems that were already implemented in different  
63 -programming languages and frameworks, adding features such as a  
64 -centralized authentication, unified interface, and a search engine, as  
65 -well as, other back-end features, would require a non-trivial amount of  
66 -work. 4 +By preparing the evolution the SPB Portal, the Brazilian Government executed
  5 +three steps to collect the requirements, in particular from society point of
  6 +view. The first step consisted in order to collect proposals using an online
  7 +tool called Pligg \footnote{\url{https://pligg.com}} and share them openly on
  8 +the Internet. The citizens were able to write proposals as well as vote on
  9 +those that most interested them. At the end of this step. the Brazilian
  10 +Government collected about 100 proposals and the initial perspective was to
  11 +prioritize the most voted of them to be implemented for the new SPB Portal.
  12 +
  13 +The second step was two open face-to-face meetings that aimed to discuss ideas
  14 +(not necessarily based on the proposals collect during the first step) to
  15 +improve the SPB Portal and its specific environments. At the first day, the
  16 +participants were divided in two groups to discuss (i) features and
  17 +technologies as well as (ii) user experience and ideas in general regarding to
  18 +SPB. Each group generated a mind map to summarize and correlated its ideas.
  19 +During the second day, the participants were allocated in three groups to
  20 +discuss features related to (i) the process of software evaluation and
  21 +acceptance in the SPB Portal, (ii) the approaches to share the SPB projects,
  22 +and (iii) how to attract universities and students to collaborate to SPB
  23 +projects.
  24 +
  25 +The last step was a workshop with IT representatives from a specific group at
  26 +the Government and public organizations. One more time, the objective was to
  27 +collect proposals to evolute the SPB Portal, but the discussions was not
  28 +necessarily related to the ideas provided during the first and second steps.
  29 +
  30 +After these uncoated 3 steps, the Brazilian government listed 145 requirements
  31 +for us. By trying to mitigate the lack of focus from the requirement list, we
  32 +propose to release an initial version that would replace the old SPB portal,
  33 +prioritizing the following features:
  34 +
  35 +\begin{enumerate}
  36 +\item An organized public software catalog;
  37 +\item Social network environment (profiles for users, software pages, and community pages);
  38 +\item CMS features;
  39 +\item Web-based Git repository manager with Wiki and issue tracking features;
  40 +\item Mailing lists and discussion forums.
  41 +\end{enumerate}
  42 +
  43 +Moreover, the new SPB Portal just would work properly if there is a unique
  44 +authentication to use the provided features. Additionally, a unified interface
  45 +was an important non-functional requirement to have a better user experience in
  46 +the new platform.
  47 +
  48 +Other requirements, such as an integrated search engine and a web-based source
  49 +code static analysis monitor, were in the wishlist. By analyzing all of these
  50 +requirements, we have designed the SPB evolution project based on existing
  51 +FLOSS tools.
opensym2017/content/06-architecture.tex
1 \section{Architecture} 1 \section{Architecture}
2 \label{sec:architecture} 2 \label{sec:architecture}
3 3
4 -From the architecture point of view, two main requirements was included on the  
5 -new platform by Brazilian Federal Government request. They are: 4 +From the architecture point of view, the integration of several existing
  5 +systems that were already implemented in different programming languages and
  6 +frameworks, adding features such as a centralized authentication, unified
  7 +interface, and a search engine, as well as, other back-end features, would
  8 +require a non-trivial amount of work. In this context, the most important
  9 +architetural requirements for the new platform were:
6 10
7 \begin{enumerate} 11 \begin{enumerate}
8 \item \textit{Integrating existing FLOSS systems} with minimal differences 12 \item \textit{Integrating existing FLOSS systems} with minimal differences