Commit 27de4fd551db972cd8ec5ef1b6e4b4a5d5dcb8b2

Authored by Paulo Meireles
1 parent 11538f18

Reviewing section 4

opensym2017/content/02-spb.tex
... ... @@ -57,3 +57,4 @@ relaxed trademark usage policy by the original vendor that do not stop eventual
57 57 competitors from adversiting services for that same software. Inclusion in the
58 58 SPB also has extra requirements, such as having a public version control
59 59 system, installation manual, hardware requirements specification, etc.
  60 +
... ...
opensym2017/content/03-requirements.tex
... ... @@ -80,14 +80,14 @@ The new SPB platform is fully an integrated environment, as we can see in
80 80 Figure \ref{fig:requirements}, being very advanced comparing to other related
81 81 projects and initiatives. For example, the USA government has a platform
82 82 designed to improve access to the federal government developed
83   -software\footnote{\url{https://code.gov}. Code.gov is an interface to organize
84   -the USA government projects and, in short, make easy that their users and
85   -developers obtain some information and access their source code repositories at
86   -GitHub. However, there are not social networking and CMS features, as well as,
87   -other communication resources provided by that platform.
  83 +software\footnote{\url{https://code.gov}}. Code.gov is an interface to
  84 +organize the USA government projects and, in short, make easy that their users
  85 +and developers obtain some information and access their source code
  86 +repositories at GitHub. However, there are not social networking and CMS
  87 +features, as well as, other communication resources provided by that platform.
88 88  
89 89 Also, there are two initiatives in Europe:
90   -OSOR\footnote{\url{https://joinup.ec.europa.eu/community/osor} and
  90 +OSOR\footnote{\url{https://joinup.ec.europa.eu/community/osor}} and
91 91 OW2\footnote{\url{http://ow2.org}}. The Open Source Observatory (OSOR) is a
92 92 community hosted in the JoinUp platform powereded by the European Commission.
93 93 OSOR aims exchanging information, experiences and best practices around FOSS
... ...
opensym2017/content/04-architecture.tex
... ... @@ -27,14 +27,12 @@ For the first requirement, we identified four main systems that required
27 27 specialized teams for work in the integration process. The teams learned how to
28 28 develop for their assigned systems and contributed to the original
29 29 communities, so that the version we used were not significantly different from
30   -the original. Unfortunately, the deadlines at the end of the project forced us
31   -to use our own version before the features were fully reviewed and integrated
32   -into the upstream of the project.
  30 +the original.
33 31  
34 32 At the end of the project, SPB portal was composed of more than ten systems
35 33 among them we can highlight: Colab, Noosfero, Mezuro, Gitlab, Mailman, Postfix,
36 34 Munin, and so forth. The following sections explained a little bit of Colab,
37   -Noosfero, Mezuro and Gitlab (the main tools which we contributed). Later, we
  35 +Noosfero, Mezuro, and Gitlab (the main tools which we contributed). Below, we
38 36 described how we integrated those tools and conclude with the deployment.
39 37  
40 38 \subsection{Colab}
... ... @@ -61,11 +59,11 @@ mechanism. The integrated applications should be on a local network to avoid
61 59 security issues. With this the user will be able to navigate through the
62 60 platform applications and will not be asked for authentication credentials.
63 61  
64   -As Colab is a reverse proxy, it makes some HTML transformations in the HTTP
65   -response of integrated applications to provide a unified interface. Allows one
66   -to define some default templates to be used by all applications and overwrite
67   -when needed in its plugin. This approach allowed us to reuse some HTML pages
68   -which facilitates maintenance.
  62 +As Colab\footnote{\url{https://github.com/colab}} is a reverse proxy, it makes
  63 +some HTML transformations in the HTTP response of integrated applications to
  64 +provide a unified interface. Allows one to define some default templates to be
  65 +used by all applications and overwrite when needed in its plugin. This approach
  66 +allowed us to reuse some HTML pages which facilitates maintenance.
69 67  
70 68 A publish-subscribe implementation was used to handle events in the platform.
71 69 Thus, if some application want to trigger some action in case that other
... ... @@ -78,28 +76,55 @@ will be indexed and will became available for the users, just need an simple
78 76 implementation of how should perform the collection of data.
79 77  
80 78 Initially, Colab had support for a small set of applications (Trac, GNU
81   -Mailman, Apache Lucene) and all of them was hard-coded; our team evolved Colab
82   -so that it can now receive plugins to add support for new applications with
83   -minimal changes to its existing core. We developed plugins to be used in the
84   -SPB platform: Noosfero, GitLab, and Mezuro.
  79 +Mailman, and Apache Lucene) and all of them was hard-coded. Our team evolved
  80 +Colab so that it can now receive plugins to add support for new applications
  81 +with minimal changes to its existing core. We developed plugins to be used in
  82 +the SPB platform: Noosfero, GitLab, and Mezuro.
85 83  
86 84 \subsection{Noosfero}
87 85  
88   -Noosfero\footnote{\url{http://noosfero.org/}} is a software for building
  86 +Noosfero\footnote{\url{http://noosfero.org}} is a software for building
89 87 social and collaboration networks. Besides the classical social
90 88 networking features, it also provides publication features such as blogs
91 89 and a general-purpose CMS (Content Management System). Most of the user
92 90 interactions with SPB is through Noosfero: user registration, project
93 91 home pages and documentation, and contact forms.
94 92  
95   -\subsection{Gitlab and Mezuro}
  93 +\subsection{Gitlab}
  94 +
  95 +GitLab\footnote{\url{http://gitlab.com}} is a web-based Git repository manager
  96 +with wiki pages and issue tracking features. On the one hand, Github is the
  97 +most famous and used Git repository manager. On the other hand, it is not a
  98 +FOSS. Gitlab is a FOSS platform and focuses on delivering a holistic solution
  99 +that will see developers from idea to production seamlessly and on a single
  100 +platform. Thus, we have worked on it to integrated to Colab.
  101 +
  102 +Moreover, Gitlab has several features working properly than Github that is
  103 +interesting in SPB context such as free for private projects, built-in
  104 +continuous integration and continuous deployment with best practices, more
  105 +control during downtime and upgrade, flexible permissions, Work-in-Progress
  106 +protection, move issues between projects, Group-level milestones, Create new
  107 +branches from issues, Issue board, Time tracking, as well new features and
  108 +improvements every month on the 22nd.
  109 +
  110 +\subsection{Mezuro}
96 111  
97   -GitLab\footnote{\url{http://gitlab.com/}} is a web-based Git repository
98   -manager with wiki pages and issue tracking features.
99 112 Mezuro\footnote{\url{http://mezuro.org/}} is a platform to collect source code
100 113 metric to monitor the internal quality of softwares written in C, C++,
101 114 Java, Python, Ruby, and PHP. GNU Mailman is used for mailing lists.
102 115  
  116 +In general, source code metric tools also do not present a friendly way to
  117 +interpret its results and, even more, do not follow a standardization between
  118 +them. Mezuro brings and presents these results to
  119 +the end user, specially, by analyzing source code metric history during its
  120 +life cycle.
  121 +
  122 +The Mezuro platform provides a single interface
  123 +grouping available tools, allows selection and composition of metrics in a
  124 +flexible manner, stores the metrics evolution history, presents
  125 +results in a friendly way, as well as, allows users to customize the given
  126 +interpretation accordingly to their own context.
  127 +
103 128 \subsection{System unification}
104 129  
105 130 \begin{figure}[hbt]
... ...