\section{Requirements} \label{sec:requirements} By preparing the evolution the SPB Portal, the Brazilian Government executed three steps to collect the requirements. The first step consisted in order to collect proposals using an online tool called Pligg \footnote{\url{https://pligg.com}} and share them openly on the Internet. The citizens were able to write proposals as well as vote on those that most interested them. At the end of this step, the Brazilian Government collected about 100 proposals and the initial perspective was to prioritize the most voted of them to be implemented for the new SPB Portal. The second step was two open face-to-face meetings that aimed to discuss ideas (not necessarily based on the proposals collect during the first step) to improve the SPB Portal and its specific environments. At the first day, the participants were divided in two groups to discuss (i) features and technologies as well as (ii) user experience and ideas in general regarding to SPB Portal. Each group generated a ``mind map'' to summarize and correlate its ideas. During the second day, the participants were allocated in three groups to discuss features related to (i) the process of software evaluation and acceptance in the SPB Portal, (ii) the approaches to share the SPB projects, and (iii) how to attract universities and students to collaborate to SPB projects. The last step was a workshop with IT representatives from a specific group at the Government and public organizations. One more time, the objective was to collect proposals to evolute the SPB Portal, but the discussions was not necessarily related to the ideas provided during the first and second steps. After these uncoated three steps, the Brazilian government generated a list of 145 requirements. By trying to mitigate the lack of focus from the requirement list, we propose to release an initial version that would replace the old SPB portal, prioritizing the following features: \begin{enumerate} \item An organized public software catalog; \item Social network environment (profiles for users, software pages, and community pages); \item CMS features; \item Web-based Git repository manager with Wiki and issue tracking features; \item Mailing lists and discussion forums. \end{enumerate} Moreover, the new SPB Portal just would work properly if there is a unique authentication to use the provided features. Additionally, a unified interface was an important non-functional requirement to have a better user experience in the new platform. Other requirements were in the wishlist such as an integrated search engine and a web-based source code static analysis monitor. By analyzing all of these requirements, we have designed the SPB evolution project based on existing FLOSS tools.