\section{Background}
\label{sec:spb}

Since the beginning of computing the majority of developers worked in the way
that we now identify as free software, that is, sharing code openly. This
openness makes the code available for inspection, modification, and use by any
person or organization \cite{hippel2003,kon2011}.

The elements that distinguish FLOSS from other types of software are the
reasoning about the development process, the economic context, the relationship
between developers and users, as well as the ethical and legal characteristics
that relate to the software. In the context of FLOSS, user freedom is promoted
and its development is based on open collaboration and development practices
\cite{kon2011}.

From the economic point of view, unlike what happens with proprietary software,
FLOSS promotes the establishment of several suppliers that can compete with
each other based on the same software. This stronger competition among
suppliers brings benefits to users because it gives better assurances regarding
the evolution of the system and induces a reduction in prices \cite{kon2011}.
These freedoms and assurances on software are guaranteed in Brazil by Law
9610/98 (copyright law).  Most of the time, this protection from the law
complies with the terms conferred by a contract related to certain software.
This contract is called ``license''. A software license determines a list of
rights that are given to, and duties that are imposed on a user of the
software. In particular, what differentiates FLOSS from proprietary software is
just the way they are licensed \cite{kon2011}. The FLOSS licenses guarantee the
right to execute, study, adapt, and improve the software. Example of common
FLOSS licenses  are the \textit{GPL (GNU General Public License)}, the Apache
license, the MIT license, and the BSD license.

The original incarnation of SPB portal has been designed in 2005 and released
in 2007. From a practical point of view, it is a web system that has
consolidated itself as an environment for sharing software projects
\cite{freitas2008}. It also provides a space (community) for each software.
Therefore, it was designed to include tools that promote collaboration and
interaction in communities (by managers, users, and developers) of the
projects, according to the practices used in FLOSS communities. This includes
mailing lists, discussion forums, issue trackers, version control systems, and
social networking environments.

Initially, the purpose of the portal was only to share the software developed
in the Brazilian government to reduce the costs of hiring software. However, it
was observed that when a software was released, a community was formed
around it, with several people collaborating and sharing the results
obtained through the use of those solutions, as commonly occurs in FLOSS
\cite{ducheneaut2005}. In this way, some software development cooperatives and
private companies have shown an interest in making their software available on
the SPB Portal.

The concept of Brazilian Public Software goes beyond FLOSS \cite{freitas2008}.  In addition to being
licensed under a FLOSS license, this software needs to have explicit guarantees that it
is a public good, and its project must be available on the SPB portal. Being a
true public good assumes requirements that can not be met solely by means of
FLOSS licensing. For example, there must be a relaxed trademark usage policy by
the original vendor that does not stop eventual competitors from advertising
services for that same software.  Inclusion in the SPB Portal also has extra
requirements, such as having a public version control system, installation
manual, and hardware requirements specification.

