diff --git a/cbsoft2017/content/01-introduction.tex b/cbsoft2017/content/01-introduction.tex index 72a4401..3f36501 100644 --- a/cbsoft2017/content/01-introduction.tex +++ b/cbsoft2017/content/01-introduction.tex @@ -1,10 +1,20 @@ -\section*{Introdução} +\begin{resumo} +Neste relato temos como agenda apresentar uma visão geral do novo Portal do +Software Público Brasileiro, bem como, compartilhar nossa metodologia e processo de +desenvolvimento desse projeto ao trabalharmos com o Governo Federal brasileiro +para cumprir suas exigências, ao mesmo tempo ser o mais fiel possível aos projetos +de software livre envolvidas. Além disso, discutiremos várias +lições aprendidas ao promover um ambiente virtual colaborativo e distribuído, +envolvendo uma grande equipe de estudantes de graduação, mestrandos e desenvolvedores +seniores remotos. +\end{resumo} + +\section{Introdução} \label{sec:intro} O Software Público Brasileiro (SPB) é um programa do Governo Federal Brasileiro para promover o compartilhamento e a colaboração em soluções de software -livre\footnote{Neste texto, usamos o termo software livre como referente à Free -and Open Source Software (FOSS).} para a administração pública. Um Software +livre para a administração pública. Um Software Público Brasileiro é considerado um bem público e o governo federal assume algumas responsabilidades relacionadas ao seu uso, mas tem os mesmos princípios de desenvolvimento de software livre, tal qual a tendência à descentralização @@ -47,13 +57,3 @@ versões do novo Portal SPB. A primeira versão (beta) foi disponibilizada em setembro de 2014, apenas 9 meses desde o início do projeto. O antigo portal foi desativado em setembro de 2015. Por fim, a última versão foi entregue em junho de 2016. - -Neste relato temos como agenda apresentarmos uma visão geral dessa nova geração -do Portal SPB, bem como, compartilharmos nossa metodologia e processo de -desenvolvimento desse projeto ao trabalharmos com o governo federal brasileiro -para cumprir suas exigências, ao mesmo tempo ser o mais fiel possível às -comunidades de software livre envolvidas. Além disso, discutiremos várias -lições aprendidas para fornecer um ambiente virtual colaborativo e distribuído, -envolvendo uma grande equipe de estudantes de graduação e desenvolvedores -seniores remotos. - diff --git a/cbsoft2017/content/04-architecture.tex b/cbsoft2017/content/04-architecture.tex index 8dd05eb..d16ff83 100644 --- a/cbsoft2017/content/04-architecture.tex +++ b/cbsoft2017/content/04-architecture.tex @@ -27,38 +27,32 @@ aprenderam a desenvolver para os sistemas designados e contribuíram para as comunidades originais, de modo que a versão que usamos não era significativamente diferente do original. -Ao final do projeto, o Portal SPB foi composto por mais de dez sistemas, como -Colab, Noosfero, Mezuro, Gitlab, Mailman, Postfix e Munin. A seguir -apresentamos os mais relevantes, bem como como eles foram integrados na -plataforma. +Ao final do projeto, o Portal SPB foi composto por mais de dez sistemas, entre os mais relevantes estão: -\begin{itemize} - -\item \textbf{Colab\footnote{\url{https://github.com/colab}}:} é uma plataforma +\textbf{Colab\footnote{\url{https://github.com/colab}}:} é uma plataforma de integração de sistemas para aplicações web. Um de seus objetivos é permitir que diferentes aplicações sejam combinadas de tal forma que um usuário não note a mudança entre as aplicações. Para isso, o Colab oferece autenticação centralizada, consistência visual, retransmissão de eventos entre aplicações e mecanismo de busca integrado. -\item \textbf{Noosfero\footnote{\url{http://noosfero.org}}:} é um software para +\textbf{Noosfero\footnote{\url{http://noosfero.org}}:} é um software para redes sociais e de colaboração. Além dos recursos clássicos de redes sociais, ele também fornece recursos de publicação de conteúdo, como blogs e CMS (\textit{Content Management System}) de propósito geral. A maioria das interações do usuário com o novo SPB são através do Noosfero, como registro do usuário, páginas do projeto e de documentação e formulários de contato. -\item \textbf{Gitlab\footnote{\url{http://gitlab.com}}:} é um gerenciador web +\textbf{Gitlab\footnote{\url{http://gitlab.com}}:} é um gerenciador web de repositórios Git com páginas wiki e recursos de \textit{issue tracker}. O Gitlab é uma plataforma livre e se concentra em oferecer uma solução para desenvolvimento colaborativo em torno do repositório. -\item \textbf{Mezuro\footnote{\url{http://mezuro.org/}}:} é uma plataforma para +\textbf{Mezuro\footnote{\url{http://mezuro.org/}}:} é uma plataforma para coletar métricas de código-fonte com o objetivo de monitorar a qualidade interna de projetos de software livre escritos em C, C ++, Java, Python, Ruby ou PHP. -\end{itemize} Do ponto de vista da implantação, a plataforma SPB foi distribuída em 7 máquinas virtuais com diferentes diff --git a/cbsoft2017/content/09-lessons.tex b/cbsoft2017/content/09-lessons.tex index cd236b0..af5e811 100644 --- a/cbsoft2017/content/09-lessons.tex +++ b/cbsoft2017/content/09-lessons.tex @@ -1,6 +1,8 @@ \section{Lições Aprendidas} \label{sec:lessons} +A partir da superação dos desafios deste projeto, destacamos sete lições aprendidas para melhor compartilhar a nossa experiência no desenvolvimento do novo Portal SPB. + \textbf{Envolver alunos de graduação em projetos do mundo real, interagindo com clientes reais.} % Nossa equipe foi composta principalmente de estudantes de graduação em @@ -86,15 +88,4 @@ técnicos de operações e desenvolvedores, que deveriam ter sido envolvidos com processo para que pudessem, pelo menos, de forma confortável, fazer a manutenção da infra-estrutura plataforma. -Por fim, o novo Portal do Software Público Brasileiro está disponível em -\url{https://softwarepublico.gov.br}. Toda a documentação, incluindo a -arquitetura detalhada e os manuais de operação, também estão disponíveis em -\url{https://softwarepublico.gov.br/doc}. Todas as ferramentas integradas são -software livre e nossas contribuições foram publicadas em repositórios abertos, -disponíveis no próprio Portal SPB. Também contribuímos com funcionalidades e -melhorias para as respectivas comunidades dos projetos integrados: que -beneficiam essas comunidades, assim como nós, pois podemos compartilhar o -desenvolvimento futuro e o esforço de manutenção com outras organizações que -participam desses projetos. - diff --git a/cbsoft2017/content/10-finals.tex b/cbsoft2017/content/10-finals.tex index 180d4c8..dbe24ee 100644 --- a/cbsoft2017/content/10-finals.tex +++ b/cbsoft2017/content/10-finals.tex @@ -1,23 +1,31 @@ -\section*{Audiência} +\section{Considerações Finais} -Entendemos que lançamos uma plataforma sem precedentes para o governo -brasileiro, aplicando métodos colaborativos de desenvolvimento de software. +O novo Portal do Software Público Brasileiro está disponível em +\url{https://softwarepublico.gov.br}. Toda a documentação, incluindo a +arquitetura detalhada e os manuais de operação, também estão disponíveis em +\url{https://softwarepublico.gov.br/doc}. Todas as ferramentas integradas são +software livre e nossas contribuições foram publicadas em repositórios abertos, +disponíveis no próprio Portal SPB. Também contribuímos com funcionalidades e +melhorias para as respectivas comunidades dos projetos integrados: que +beneficiam essas comunidades, assim como nós, pois podemos compartilhar o +desenvolvimento futuro e o esforço de manutenção com outras organizações que +participam desses projetos. + +Entendemos que lançamos uma plataforma sem precedentes para o Governo +Federal brasileiro, aplicando métodos colaborativos de desenvolvimento de software. Este caso pode ajudar outros projetos a superar desafios similares de engenharia de software no futuro, bem como demonstra como as universidades podem melhorar a experiência de mundo real de seus alunos por meio desse tipo -de projeto. É um relato que atende uma ampla audiência, de estudantes à -professores, bem como, de desenvolvedores à gerentes de projetos. +de projeto. -\section*{Breve biografia} +\subsection*{Sobre os autores} {\it Paulo Meirelles} é professor do Bacharelado em Engenharia de Software da Universidade de Brasília. É pesquisador-colaborador do Centro de Competência em Software Livre da Universidade de São Paulo (USP). Atualmente, está realizando seu pós-doutorado no Departamento de Ciência da Computação no Instituto de -Matemática e Estatística da USP (IME-USP). Em 2013, concluiu seu doutorado em -Ciência da Computação no IME-USP, na área de Sistemas de Software. Foi -pesquisador visitante na Southern Illinois University Carbondale, Estados -Unidos, em 2011. Tem um amplo histórico de colaboração com a comunidade +Matemática e Estatística da USP (IME-USP). Concluiu seu doutorado em +Ciência da Computação no IME-USP (2013). Tem um amplo histórico de colaboração com a comunidade software livre brasileira, entre outras, ministrando dezenas de palestras e parcipando como painelista em vários eventos nacionais e internacionais nas últimas duas décadas. Mais recentemente, coordenou a Evolução do Portal do @@ -27,17 +35,14 @@ plataforma de participação social baseada em projetos de software livre. \\ \\ {\it Hilmer Neri} é professor do Bacharelado em Engenharia de Software da -Universidade de Brasília. Está cursando o doutorado no programa de Engenharia +Universidade de Brasília e fundador do laboratório LAPPIS. Está realizando doutorado no programa de Engenharia de Sistemas e Computação na COPPE-UFRJ. Em 2002, concluiu seu mestrado em Ciência da Computação pela Universidade Federal de Campina Grande. Acumula 20 anos de experiência profissional na indústria de software, tendo atuado em empresas nas esferas pública e privada. Nos últimos anos tem se dedicado a pesquisar e praticar aspectos da Produção de Software com foco na Qualidade do -Produto de Software. Tem colaborado com o desenvolvimento de softwares livres -e também com dados abertos do governo. Entusiasta da área de Engenharia de -Software, é fundador do laboratório LAPPIS, que possui como foco, a pesquisa e -a produção de software, destacando a utilização de métodos de desenvolvimento -colaborativo e aberto. +Produto de Software. Tem colaborado com o desenvolvimento de projetos de +software livre e também com dados abertos do governo. \section*{Agradecimentos} -- libgit2 0.21.2