\section{Requirements} \label{sec:requirements} By preparing the SPB Portal evolution, the Brazilian Government has executed three steps to collect the requirements. The first step was the collection of proposals using an online tool called Pligg and the open sharing of them on the Internet. In this step, the citizens have written and voted on proposals they were more interested in. At the end, the Brazilian Government collected about 100 proposals and its initial perspective was to give to the most voted ones the priority of implementation on the new SPB Portal. The second step was two face-to-face meetings that aimed to discuss ideas (not necessarily based on the previous collected proposals) to improve the SPB Portal and its environments. On the first day, the participants were divided in two groups to discuss (i) features and technologies as well as (ii) user experience and general ideas regarding the SPB Portal. Each group has generated a ``mind map'' to summarize and to 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) approaches to share the SPB projects, and (iii) ways to attract universities and students to collaborate to SPB projects. The last step was a workshop with some IT representatives of the Federal Government and public organizations and, again, it was focused on collecting new proposals to evolve the SPB Portal. After these unconnected three steps, the Brazilian government has generated a list of 145 requirements. In order to mitigate the lack of focus in the requirement list, we have proposed to release an initial version to 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 would only work properly if there was a unique authentication to use the provided features. Additionally, a unified interface was an important non-functional requirement to provide better user experience on 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.