diff --git a/OSS-2017/00-abstract.tex b/OSS-2017/00-abstract.tex index cab63bf..7d07acb 100644 --- a/OSS-2017/00-abstract.tex +++ b/OSS-2017/00-abstract.tex @@ -1,6 +1,10 @@ \begin{abstract} - % Contexto - % Problema - % Soluções propostas - % Frase de impacto +Brazilian Public Softwares have some differences from Open Source Softwares, +in particular the software is considered a public good and the Federal +Government assumes some responsibilities related to its use. Anyway, the +software development principles are the same: trend towards decentralization in +decision-making, information and development sharing, and feedback. In this +context, we have designed a platform based on the integration and evolution of +existing OSS tools. Nowadays, the Brazilian Public Software Portal provides +several modern features for software collaborative development. \end{abstract} diff --git a/OSS-2017/01-introduction.tex b/OSS-2017/01-introduction.tex index 1c9ee6d..0239901 100644 --- a/OSS-2017/01-introduction.tex +++ b/OSS-2017/01-introduction.tex @@ -3,23 +3,23 @@ Since last few decades, the Brazilian Federal Government has been improving its software adoption and development processes. In 2003, the recommendation to -adopt Open Source Software (OSS) become a public policy. In this context, in -2007, the Brazilian Ministry of Planning, Budget, and Management had released a -Portal to share projects like OSS called Brazilian Public Software -(\textit{Software Público Brasileiro} -- SPB). In short, it is a website to -share softwares developed by and for the Brazilian Government. +adopt Open Source Software (OSS) become a public policy. In 2007, the Brazilian +Government released a Portal to share projects like OSS called Brazilian Public +Software (\textit{Software Público Brasileiro} -- SPB). In short, it is a +website to share softwares developed by and for the Brazilian Government. -On the one hand, the Brazilian legal instrument on software contracting (IN -04/2012) indicates that public managers must consult the SPB Portal to -adopt a software solution, as well as, justifying the acquisition of a -proprietary software if there is no a similar project available in the SPB -Portal. On the other hand, since 2009, the SPB Portal had several technical -problems because there was no development activities to maintenance and evolve -it. Thus, the initial SPB Portal version did not have another release. +On the one hand, the Brazilian legal instrument on software contracting +(\textit{Instrução Normativa} 04/2012) indicates that public managers must +consult the SPB Portal to adopt a software solution, as well as, justifying the +acquisition of a proprietary software if there is no a similar project +available in the SPB Portal. On the other hand, since 2009, the SPB Portal had +several technical problems because there was no development activities to +maintenance and evolve it. Thus, the initial SPB Portal version did not have +another release. From January 2014 until June 2016, a platform for the SPB Portal was designed -and developed by the University of Brasília and the University of São Paulo. -This new Portal was designed to be an integrated platform of software -collaborative development environments with social networking, mailing list, -control version system, and source code quality monitoring. In this paper, we -present this new generation of the SPB Portal. +and developed by the University of Brasília (UnB) and the University of São +Paulo (USP). This new Portal was designed to be an integrated platform of +software collaborative development environments with social networking, mailing +list, control version system, and source code quality monitoring. In this +paper, we present this new generation of the SPB Portal. diff --git a/OSS-2017/02-platform.tex b/OSS-2017/02-platform.tex index 5890104..4bdf7e0 100644 --- a/OSS-2017/02-platform.tex +++ b/OSS-2017/02-platform.tex @@ -1,10 +1,10 @@ \section{Platform for software collaborative development} -According to the Brazilian Federal Government requirements, first, we needed an +First, according to the Brazilian Federal Government requirements, we needed an application that integrates existing OSS systems and provides a similar interface for each one, as well as, unique authentication. For that, we have a web-based integration platform called Colab that also works as a reverse proxy. -We have developed its plug-in architecture to decouple the already integrated +We have developed its plug-in architecture to decouple already integrated tools (Trac system, GNU Mailman, and Apache Lucene Solr) and integrate other platforms such as Noosfero, GitLab, and Mezuro. Figure \ref{fig:spb} shows the home page of this integrated platform. @@ -12,7 +12,7 @@ home page of this integrated platform. \begin{figure}[hbt] \centering \includegraphics[width=.9\linewidth]{figures/home-SPB.png} - \caption{the new SPB Portal.} + \caption{The new SPB Portal.} \label{fig:spb} \end{figure} @@ -28,7 +28,7 @@ C++, Java, Python, Ruby, and PHP. \begin{figure}[hbt] \centering \includegraphics[width=.8\linewidth]{figures/arquitetura.png} - \caption{SPB Architecture.} + \caption{SPB Portal Architecture.} \label{fig:architecture} \end{figure} @@ -36,7 +36,7 @@ The new SPB Portal was deployed in 7 virtual machines with different functions, as we can see in Figure \ref{fig:architecture}. The \textit{reverseproxy} handles the HTTP requests and redirects them to the \textit{integration}, the \textit{email} sends and receives e-mails on behalf of the platform and the -\textit{monitor} keeps the entire environment tracked. These three +\textit{monitor} keeps the entire environment tracked. These three \textit{VMs} mentioned - \textit{reverseproxy}, \textit{email} and \textit{monitor} - are accessible via Internet and the other ones are only available in the local network created between them. diff --git a/OSS-2017/03-ux.tex b/OSS-2017/03-ux.tex index 8fe5168..920241e 100644 --- a/OSS-2017/03-ux.tex +++ b/OSS-2017/03-ux.tex @@ -1,44 +1,36 @@ -\section{User Experience evolution} +\section{User eXperience evolution} The integration of collaborative environments goes beyond functional aspects. Offering the population an unified experience across these environments has been the key to encourage the use of the platform as it reduces the perception -of the complexity. - -Thus, the portal information architecture was redesigned to provide a -transparent navigation and to reach users with different profiles. A process -of harmonization has been employed on the interaction models of each tool in -order to reduce the learning curve. At the same time, a new visual style was +of the complexity. Thus, the SPB Portal information architecture was redesigned +to provide a transparent navigation and to reach users with different profiles. +A process of harmonization has been employed on the interaction models of each +tool to reduce the learning curve. At the same time, a new visual style was created to unify the navigation experience and to comply with the guidelines of the digital communication identity pattern established by the Federal Government. With the increase of the system features and the addition of new tools, the -visual style has steadily evolved in order to keep the navigation unified. -Moreover, tools from different backgrounds, which in many cases run -functionalities with similar concepts, made us face the challenge of developing -a transparent interface that unifies various context. For each required -feature, we often have to conciliate data with distinct structure and -information pattern from each used tool. The interface was the meeting point -for this data with links that users will not notice. The most common features -(i.e. search, display and edition of profile information and content) have been -brought in line with the structure and other existing features of the portal. +visual style has steadily evolved to keep the navigation unified. Moreover, +tools from different backgrounds, which in many cases run functionalities with +similar concepts, made us face the challenge of developing a transparent +interface that unifies various context. For each required feature, we often +have to conciliate data with distinct structure and information pattern from +each used tool. The interface was the meeting point for this data with links +that users will not notice. The most common features (i.e. search, display, +and edition of profile information and content) have been brought in line with +the structure and other existing features of the SPB Portal. -The other challenge is related to responsive web design. The portal interface -and each of its pages were designed following the bounds of responsiveness -provided or supported by each tools. In particular, in the case of Noosfero, -which do not have any official branch dedicated to improve its responsiveness, -our project needed to engage with the expansion of this platform, where we made -a lot of contributions and dialogues with the community and maintainers. All -the project members got involved in the study, design and development of the -Noosfero's new interface which support a responsive web design and that have -not yet been completed. +The other challenge is related to responsive web design. The SPB Portal +interface and each of its pages were designed following the bounds of +responsiveness provided or supported by each tools. In particular, in the case +of Noosfero, which do not have any official branch dedicated to improve its +responsiveness, we needed to engage with the expansion of this platform, where +we made a lot of contributions and dialogues with the community and +maintainers. -Users are part of the process. In 2014, a survey among users of the existing -platform was conducted to identify usability problems and to measure their -satisfaction with the system. After the release of the new SPB platform, -several validations activities were implemented in 2015 and 2016, and the data -collected during this phase helped to channel our efforts to identify and to -improve the main fields of the new system. The aim was to bring the users -closer to features that they have more interest and designing a navigation -which deepens in accordance with the user's depth of knowledge. +In summary, after the release of the new SPB Portal in 2014, several +validations activities were implemented in 2015 and 2016. The aim was to bring +the users closer to features that they have more interest and designing a +navigation which deepens in accordance with the user's depth of knowledge. diff --git a/OSS-2017/04-finals.tex b/OSS-2017/04-finals.tex index 48ae852..94fa2f8 100644 --- a/OSS-2017/04-finals.tex +++ b/OSS-2017/04-finals.tex @@ -1,34 +1,17 @@ \section{Final remarks} -A Brazilian Public Software has some differences from of an Open Source -Software, in particular the software is considered a public good and the -Government assumes some responsibilities related to the use of this kind of -software. From the software development point of view, the principles are the -same: trend towards decentralization in decision-making, information and -development sharing, and feedback. Therefore, we have designed a platform based -on the integration and evolution of existing OSS tools. Nowadays, the SPB Portal -provides several modern features for the collaborative software development. - -The new SPB platform was launched for approval in December 2014 and is -available at softwarepublico.gov.br. All the integrated tools are free software -and all of them were developed by UnB and USP teams and are published in open -repositories, available on the SPB Portal itself. An important aspect is that -the necessary improvements in the tools were provided and these returned to the -respective communities. This is not only the right thing to do from the point -of view of the free software community, but also it has reduced the costs of -maintenance, which allowed us to carry out the continued evolution of the -platform in synergy with other organizations that use the same tools. - -Providing a set of tools and improving the user experience in the environment -is part of the SPB reformulation process. Cultural aspects of network -collaboration for an effective use of what is provided on the platform need to -be matured by the MP conjointly with the communities of the SPB and even among -the government entities themselves. In addition, the demand for greater impact -of public software in the software supply in the adoption the solutions, as -well as the attraction of employees and collaborators, required a broad -redefinition of the user experience. Finally, a study for licensing proposals -and their impacts on the SPB, also in order to solve the contradictions present -in the Normative Instruction MP/SLTI 01/2011 (which states about SPB -procedures) was conducted by UnB as a complement to what has been developed -from the technological point of view. +The new SPB Portal was launched for approval in December 2014 and it is +available at \url{softwarepublico.gov.br}. All the integrated tools are OSS and +our contributions are published in open repositories, available on the SPB +Portal itself. We also returned these features to the respective communities. +Thus, it has reduced the costs of maintenance, which allowed us to carry out +the continued evolution of the platform in synergy with other organizations +that use the same tools. +Providing a set of tools and improving the user experience in the portal is a +technical part of the SPB evolution process. Cultural and legal aspects of +network collaboration for an effective use of the new SPB Portal also was +matured. A study for licensing proposals and their impacts on the SPB was +conducted as a complement to what has been developed from the technological +point of view, generating a new legal instrument (\textit{Portaria} 46/2016 +STI/MP) on software collaborative development. diff --git a/OSS-2017/spb.tex b/OSS-2017/spb.tex index 69f4c5d..231d117 100644 --- a/OSS-2017/spb.tex +++ b/OSS-2017/spb.tex @@ -19,7 +19,7 @@ \titlerunning{Brazilian Public Software} \author{Paulo Meirelles\inst{1,2}, Himer Neri\inst{1}, Antonio Terceiro\inst{1}\\ - Lucas Kanashiro\inst{2}, Melissa Wen\inst{1}} + Melissa Wen\inst{1}, Lucas Kanashiro\inst{2}} \authorrunning{Meirelles et al.} -- libgit2 0.21.2