\section{Mise à jour du projet MapBuilder}
\label{sec:mapbuilder}

\begin{small}Direction stratégique de mars 2007\end{small}
\emph{par Cameron Shorter, traduit par Yves Jacolin}

\subsection{Status}

\begin{large}MapBuilder          \end{large} est un client de cartographie puissant, conforme aux standards et libre qui fonctionne dans un navigateur Internet. Il affiche des cartes raster à partir de serveur WMS, Google maps et autres, et des couches vectorielles à partir de serveur WFS, GeoRSS et GML. Il offre même la fonctionnalité d'édition par WFS-T. MapBuilder est souvent décrit comme une boîte à outils basée sur Internet, ou un framework, qui permet aux développeurs d'insérer une sélection de widgets dans une page web. Par exemple, le panneau de cartes (MapPanes), la liste des fonctions (FeatureLists), des outils de navigation, des éditeurs de style et d'autres encore.

L'année dernière, les trois clients de cartographie leader, Mapbuilder, OpenLayers et MapBender ont travaillé activement ensemble partageant des idées et du code. En particulier, OpenLayers est en train d'être inclu dans Mapbuilder comme un moteur d'affichage. Notre dernière version, mapbuilder-1.5apha1 inclut un affichage par OpenLayers et notre prochaine version complètera l'intégration en liant les outils Mapbuilder et OpenLayers.

OpenLayers se focalise sur l'affichage de la carte. Mapbuilder étend cela pour offrir des widgets supplémentaires comme l'éditeur de la Description du style des couches (SLD), Les services de cartographie sur Internet des séries temporelles, le traitement des documents de contexte des cartes sur Internet (WMC) et plus.

Les développeurs de Mapbuilder contribuent maintenant au code d'OpenLayers lors de l'ajout des fonctionnalités de base de cartographie.


Fusionner les codes entre les projets est délicat autant émotionnellement que techniquement. Le catalyseur pour la fusion entre Mapbuilder/OpenLayers était qu'il y avait quatre projets différents pour développer l'affichage de vecteur en utilisant SVG/VML fin 2006. Après une discussion nous sommes tombé d'accord sur une même base de code. Cela signifiait que chacun de nous devez jeter environ les 3/4 de notre code. À court terme, cela signifiait des efforts supplémentaires de nous tous, mais à long terme, nous bénéficieront tous de cette fusion. Nous aurons plus de développeurs pour maintenir le même code de base et des utilisateurs moins perdu lorsqu'ils choisiront un client.

Les développeurs qui jettent du code ressentent une grosse perte de status et de crédibilité. Le mérite va à ceux qui ont été assez flexibles pour jeter leur code ainsi qu'aux développeurs qui ont généreusement remercié les travaux passés.

En interne, Mapbuilder stocke ses données spatiales dans un document Context. Initialement, nous utilisions un document Web Map Context (WMC) qui décrit une liste de couches WMS. Cependant, le WMC ne vous autorise pas à insérer d'autres couches, comme WFS, GML, GeoRSS, Google Maps, etc.

Dans mapbuilder-1.5alpha1 nous gèrons les Context OWS (pour l'instant un document en état 'Brouillon` de l'OGC) qui étend le WMC pour inclure de multiples types de couches. Cela améliore la structure de nos fichiers de codes et de configuration, tout en continuant avec la gestion des standards de l'OGC. La branche 1.5 sera stabilisé dans les tous prochains mois avec des versions candidates et la version finale.

Mapbuilder a réussi la procédure d'incubation de la Fondation Open Source Géospatiale (OSGeo) en octobre 2006 devenant le second et le plus récent projet à y parvenir. La procédure a été un processus très long impliquant un audit du code et une remise en ordre des procédures de développement. Cependant, comparé aux autres projets en court d'incubation, Mappbuilder est jeune et a beaucoup moins d'historique à fouiller, ce qui explique pourquoi il est l'un des premiers projets à être intégré (après Mapbender).

L'association avec OSGeo a été un mouvement positif pour la popularité de Mapbuilder. Les téléchargements de Mapbuilder ont doublé dans le mois qui ont suivi la création de l'OSGeo avec Mapbuilder comme un des projets de la fondation.

En résumé, Mapbuilder continue à avoir une large base d'utilisateurs et de développeurs, il a une base de code stable, de bonnes procédures de développement, un futur sain est devant lui.

\subsection{Mesure des téléchargements}
Ce graphique montre un accroissement uniforme de l'intérêt depuis le démarrage du projet, avec un doublement du nombre de téléchargements lors de la création de l'OSGeo (avec Mapbuilder comme projet fondateur) en mars 2006. Il y a eut un creux à Noël 2006, puis un retour en début 2007 (le visualisateur gml et mapbuilder-1.5alpha1 ont été sortie à la fin du mois de décembre 2006).
% insert [IMAGE] 
\begin{figure}[htbp]
   \centering
   %name of your graphic, without the path AND in PNG (screnshots etc)/PDF (drawings) format:
   \includegraphics[width=0.95\textwidth]{dev_announce/mapbuilder/chart9911.pdf}
   %\caption{Graph 1: Download Metrics}
   %label of the figure, which has to correspond to \ref{}:
   \label{fig:download_metrics}
\end{figure}

% \begin{tabular}{ll}
% \multicolumn{1}{c }{\bf Date } & \multicolumn{1}{c }{\bf Downloads  } \\
% { Apr-04 } & { 0  } \\
% { May-04 } & { 31  } \\
% { Jun-04 } & { 173  } \\
% { Jul-04 } & { 115  } \\
% { Aug-04 } & { 69  } \\
% { Sep-04 } & { 38  } \\
% { Oct-04 } & { 40  } \\
% { Nov-04 } & { 32  } \\
% { Dec-04 } & { 26  } \\
% { Jan-05 } & { 54  } \\
% { Feb-05 } & { 88  } \\
% { Mar-05 } & { 127  } \\
% { Apr-05 } & { 160  } \\
% { May-05 } & { 213  } \\
% { Jun-05 } & { 280  } \\
% { Jul-05 } & { 230  } \\
% { Aug-05 } & { 221  } \\
% { Sep-05 } & { 235  } \\
% { Oct-05 } & { 319  } \\
% { Nov-05 } & { 332  } \\
% { Dec-05 } & { 420  } \\
% { Jan-06 } & { 469  } \\
% { Feb-06 } & { 536  } \\
% { Mar-06 } & { 1,141  } \\
% { Apr-06 } & { 1,029  } \\
% { May-06 } & { 1,040  } \\
% { Jun-06 } & { 1,206  } \\
% { Jul-06 } & { 1,213  } \\
% { Aug-06 } & { 1,153  } \\
% { Sep-06 } & { 1,059  } \\
% { Oct-06 } & { 1,346  } \\
% { Nov-06 } & { 1,008  } \\
% { Dec-06 } & { 869  } \\
% { Jan-07 } & { 1,351  } \\
% { Feb-07 } & { 1,359 }

%\end{tabular}

\subsection*{Mesure des commit dans Subversion}
Ce graphique récupère le nombre de ligne de code dans le dépôt de Mapbuilder. Le graphique montre que Mapbuilder a beaucoup grossi depuis décembre 2003. Nous avons un support conséquent de la part de la communauté des développeurs qui inclu un coeur constant, ainsi qu'un nombre de nouveaux développeurs qui rejoinent la communauté, développent un temps et s'en vont.

% insert IMAGE
\begin{figure}[htbp]
   \centering
   %name of your graphic, without the path AND in PNG (screnshots etc)/PDF (drawings) format:
   \includegraphics[width=0.95\textwidth]{dev_announce/mapbuilder/commits.pdf}
   \caption{Source data \url{http://fisheye.codehaus.org/browse/mapbuilder/trunk/mapbuilder/mapbuilder/lib}}
   %label of the figure, which has to correspond to \ref{}:
   \label{fig:commit}
\end{figure}
%linegraph\raisebox{.6ex}{} 

% \subsection*{Significant Dates}

% \begin{tabular}{ll}
% \multicolumn{1}{c }{\bf Date } & \multicolumn{1}{c }{\bf Event  } \\
% { December 2003 } & { Start  } \\
% { May 2004 } & { mapbuilder-0.1rc2  } \\
% { June 2004 } & { mapbuilder-0.1  } \\
% { March 2005 } & { mapbuilder-0.2alpha  } \\
% { April 2005 } & { mapbuilder-0.3.1alpha  } \\
% { August 2005 } & { mapbuilder-0.4  } \\
% { December 2005 } & { mapbuilder-1.0rc1  } \\
% { February 2006 } & { mapbuilder-1.0rc2  } \\
% { February 2006 } & { OSGeo Foundation starts  } \\
% { April 2006 } & { mapbuilder-1.0  } \\
% { August 2006 } & { mapbuilder-1.0.1  } \\
% { October 2006 } & { Mapbuilder graduates OSGeo Foundation  } \\
% { December 2006 } & { mapbuilder-1.5apha1 }
% 
% \end{tabular}

%Source data:
%\url{http://sourceforge.net/project/showfiles.php?group_id=35246&package_id=116388}
%\url{http://www.osgeo.org/tyler/osgeo_1st_anniversary} 
%\url{http://wiki.osgeo.org/index.php/Twentieth_Board_Meeting}

\subsection{Mesure du trafic des emails}
Ce graphique montre le nombre mensuel d'email sur les listes des développeurs et des utilisateurs. Les emails des développeurs explosent fin 2005, début 2006 pendant le développement de la version 1.0 avant de revenir au niveau précédant. La stabilisation du trafic email peut être mise sur le compte de plusieurs éléments :
%The stabling of email traffic can be put down to: 
\begin{figure}[htbp]
   \centering
   %name of your graphic, without the path AND in PNG (screnshots etc)/PDF (drawings) format:
   \includegraphics[width=0.95\textwidth]{dev_announce/mapbuilder/chart9912.pdf}
   %label of the figure, which has to correspond to \ref{}:
   %\caption{Graph 3}
   \label{email-stats}
\end{figure}

\begin{enumerate}
\item Un effort important a été réalisé sur la documentation. Souvent les réponses des questions de débutants renvoient vers la documentation existante. Cela ne signifie pas que notre documentation est merveilleuse, elle s'est juste améliorée.
\item Le travail sur le rendu vecteur réalisé depuis mi-2006 a été réalisé en conjonction avec des développeurs externes. Une grande partie des échanges s'est déplacée vers d'autres listes ou les canneaux IRC (En particulier irc://freenode.net\verb|#|openlayers)
\item Avril - Octobre 2006, une part importante de l'effort des développeurs s'est focalisée sur l'obtention de la graduation de l'OSGeo plutôt que dans le développement. Une chute dans l'activité des mails sur ces derniers mois est probablement dû à cela.

\end{enumerate}

% insert [IMAGE] 

% \begin{tabular}{llll}
% \multicolumn{1}{c }{\bf Date } & \multicolumn{1}{c }{\bf Devel } &
% \multicolumn{1}{c }{\bf User } & \multicolumn{1}{c }{\bf Total  } \\
% { May-03 } & { 2 } & {~ } & { 2  } \\
% { Jun-03 } & { 20 } & {~ } & { 20  } \\
% { Jul-03 } & { 24 } & {~ } & { 24  } \\
% { Aug-03 } & { 38 } & {~ } & { 38  } \\
% { Sep-03 } & { 23 } & {~ } & { 23  } \\
% { Oct-03 } & {~ } & {~ } & { 0  } \\
% { Nov-03 } & { 10 } & {~ } & { 10  } \\
% { Dec-03 } & { 24 } & {~ } & { 24  } \\
% { Jan-04 } & { 88 } & {~ } & { 88  } \\
% { Feb-04 } & { 200 } & {~ } & { 200  } \\
% { Mar-04 } & { 114 } & {~ } & { 114  } \\
% { Apr-04 } & { 85 } & {~ } & { 85  } \\
% { May-04 } & { 85 } & {~ } & { 85  } \\
% { Jun-04 } & { 191 } & {~ } & { 191  } \\
% { Jul-04 } & { 60 } & {~ } & { 60  } \\
% { Aug-04 } & { 75 } & {~ } & { 75  } \\
% { Sep-04 } & { 53 } & {~ } & { 53  } \\
% { Oct-04 } & { 47 } & {~ } & { 47  } \\
% { Nov-04 } & { 103 } & {~ } & { 103  } \\
% { Dec-04 } & { 72 } & {~ } & { 72  } \\
% { Jan-05 } & { 57 } & {~ } & { 57  } \\
% { Feb-05 } & { 71 } & {~ } & { 71  } \\
% { Mar-05 } & { 153 } & { 2 } & { 155  } \\
% { Apr-05 } & { 79 } & { 15 } & { 94  } \\
% { May-05 } & { 121 } & { 1 } & { 122  } \\
% { Jun-05 } & { 153 } & { 14 } & { 167  } \\
% { Jul-05 } & { 147 } & {~ } & { 147  } \\
% { Aug-05 } & { 203 } & { 3 } & { 206  } \\
% { Sep-05 } & { 417 } & { 8 } & { 425  } \\
% { Oct-05 } & { 267 } & { 37 } & { 304  } \\
% { Nov-05 } & { 182 } & { 14 } & { 196  } \\
% { Dec-05 } & { 211 } & { 42 } & { 253  } \\
% { Jan-06 } & { 363 } & { 148 } & { 511  } \\
% { Feb-06 } & { 338 } & { 108 } & { 446  } \\
% { Mar-06 } & { 369 } & { 104 } & { 473  } \\
% { Apr-06 } & { 128 } & { 84 } & { 212  } \\
% { May-06 } & { 150 } & { 133 } & { 283  } \\
% { Jun-06 } & { 128 } & { 66 } & { 194  } \\
% { Jul-06 } & { 96 } & { 82 } & { 178  } \\
% { Aug-06 } & { 63 } & { 34 } & { 97  } \\
% {Sep-06 } & { 71 } & { 86 } & { 157  } \\
% {Oct-06 } & { 107 } & { 59 } & { 166  } \\
% {Nov-06 } & { 145 } & {83 } & { 228  } \\
% {Dec-06 } & { 182 } & { 45 } & { 227  } \\
% {Jan-07 } & { 119 } & { 75 } & { 194  } \\
% {Feb-07 } & { 72 } & { 60 } & { 132 }
% 
% \end{tabular}

%Data source:
%\url{http://sourceforge.net/mailarchive/forum.php?forum_id=44559} 
%and
%\url{http://sourceforge.net/mailarchive/forum.php?forum_id=475} 

\subsection*{Mesure du téléchargement du visualiseur GML}
En décembre 2006, nous avons sortie la version du visualiseur GML de Mapbuilder qui peut être distribué avec un jeu de données GML. Il a été distribué sur un CD en tant que ``artefacts`` de l'Open Geospatial Consortium Testbed 4. Il a été également rendu disponible au téléchargement et les statistiques sont disponibles ci-dessous. Le nombre de téléchargements est le 1/10e des téléchargements de mapbuilder-libs ce qui suggère que le marché cible a obtenu leur visualisateur GML du CD ou que les personnes sont plus intéressés par d'autres fonctionnalités de Mapbuilder.

\begin{tabular}{ll}
\multicolumn{1}{c }{\bf Date } & \multicolumn{1}{c }{\bf Téléchargements  } \\
{ Dec-06 } & { 75  } \\
{ Jan-07 } & { 104  } \\
{ Fev-07 } & { 115 }

\end{tabular}

Source des données : \footnote{Téléchargement du visualiseur GML :  \url{http://sourceforge.net/project/stats/detail.php?group_id=35246&ugn=mapbuilder&type=prdownload&mode=alltime&package_id=116388 }}

% 
% \subsection{Criteria for a successful project}
% 
% Refraction's State of Open Source GIS provides an excellent
% checklist for evaluating open source projects. The more of these questions
% which are answered in the positive, the healthier the OSS project under
% examination is. 
% 
% \begin{itemize}
% \item Is the software modular? (This criterion is more applicable to some
% projects than others, depending on design constraints.) Is there a clear
% method to add functionality to the project that does not involve re-working
% the internals? Is this method documented clearly with examples? Is there a
% library of already-contributed enhancements maintained by the wider user /
% developer community? 
% 
% \begin{itemize}
% \item Mapbuilder is modular and extendable from the ground up. 
% \end{itemize}
% 
% \end{itemize}
% 
% \begin{itemize}
% \item Is the development team transparent? Is it clear who the core
% development team is? Is the development team mailing list public? Is the
% current development version of the code available online? Is membership in the
% team attainable via a merit-based process? 
% 
% \begin{itemize}
% \item Yes, Mapbuilder has a strong transparent management team. 
% \end{itemize}
% 
% \end{itemize}
% 
% \begin{itemize}
% \item Is the project well documented? Does the web presence provide direct
% access to both the source code and documentation about the internals of the
% code? Is there tutorial level documentation for all three user categories
% (user, administrator, programmer) to get people up and working with the
% software quickly? 
% 
% \begin{itemize}
% \item Mapbuilder's documentation is passable, but effort spent on
% documentation could greatly improve our users experience. 
% \end{itemize}
% 
% \item How wide is the development community? Are multiple organizations
% represented in the core development team? Are core team members financially
% supported in their work by sponsoring organizations? Is the development
% community national or international? How large is the user mailing list? How
% large is the developer mailing list? 
% 
% \begin{itemize}
% \item Mapbuilder has between 5 and 10 developers at any one time, and the
% developers come from around the globe and from many different organisations.
% This is a strong core, but it would be nice to see the developer community
% double. 
% \end{itemize}
% 
% \item How wide is the user community? (This criterion is basically a standard
% COTS criterion more installations imply wider acceptance and testing.) What
% organizations have deployed the software? What experiences have they had? 
% 
% \begin{itemize}
% \item Up to March 2007, Mapbuilder downloads steadily increased to 500
% downloads/month. After that, downloads doubled and have remained steady at
% around 100 downloads/month.  
% \item It is good to see this steady growth, however it would be nicer to see
% the download figures increase by an order of magnitude. I suspect that
% Mapbuilder has lost market share of simple mapping applications to OpenLayers,
% GoogleMaps, MSN and Yahoo maps. 
% \end{itemize}
% 
% \end{itemize}

% \subsection*{Previous Strategic Direction Papers}
% 
% \begin{enumerate}
% \item March 2007\raisebox{.6ex}{} 
% \item September 2006\raisebox{.6ex}{} 
% \item April 2006\raisebox{.6ex}{} 
% \item June 2005\raisebox{.6ex}{} 
% \end{enumerate}

\subsection{À propos de l'auteur}
Cameron Shorter fait parti du Comité de Gestion du Projet Mapbuilder.

