BM 4.0 beta + Outlook : pas à pas

Faire des annonces, c’est bien; montrer un logiciel qui fonctionne, c’est mieux. BlueMind 4.0 est encore en préparation, mais nous publions une version beta pour que vous puissiez tester le support natif d’Outlook, en user et en abuser. Elle est à vous !

Quelques restrictions tout d’abord. BlueMind 4.0-beta :

  • n’est disponible que pour de nouvelles installations
  • ne doit pas être utilisée en production : les mises à jour ne seront pas disponibles
  • nécessite une souscription d’évaluation pour le support d’Outlook

Quelques précisions sur ce dernier point : la grosse nouveauté de BlueMind 4.0, à savoir le support natif du client Outlook (auquel est dédié cet article), est fourni par la souscription. Si vous n’en avez pas besoin, vous pouvez évaluer BlueMind 4.0-beta sans souscription  et vous n’avez pas besoin non plus du présent article ;-).

Avertissement

Nous apportons un soin tout particulier pour faciliter les opérations d’administration de BlueMind. Cependant, les opérations décrites dans cette article nécessitent un minimum de connaissances techniques : gestion des certificats et configuration du réseau.

Nous vous conseillons par ailleurs de travailler sur des machines virtuelles en utilisant des snapshots, ce qui peut vous permettre de revenir en arrière si vous rencontrez une erreur.

Installation

Nos installeurs sont disponibles sur BlueMind Download. Attention à bien choisir la dernière version 4.0. Les instructions d’installation sont inchangées par rapport à nos releases précédentes.

Il faut seulement ajouter aux pré-requis une seconde machine disposant d’un Windows 10 à jour, sur lequel est installé Outlook. Attention : un Outlook 2013 ou plus récent est nécessaire ! Vous devez avoir les droits d’administration sur le système, et les systèmes (serveur BlueMind, client Windows/outlook) doivent être sur le même réseau local (par exemple deux machines virtuelles d’un même provider).

Notez bien l’url externe que vous utilisez pendant l’installation : vous en aurez besoin pour configurer l’accès depuis Windows. J’utilise bluevm.test.loc dans ce pas-à-pas. Notez également l’adresse IP sur serveur, dans mon cas 192.168.33.10.

Le paquet bm-mapi

L’installation du paquet bm-mapi doit être effectuée au préalable à la création des utilisateurs qui utiliseront Outlook.

Contactez-nous pour obtenir une souscription d’évaluation, qui vous donnera accès aux ressources commerciales de BlueMind, dont ce fameux paquet.

Déployez votre souscription sur le serveur, puis installez le paquet bm-mapi avec aptitude ou yum selon votre distribution. C’est ce paquet qui ajoute le support natif d’Outlook à BlueMind.

L’utilisateur de test

Vous pouvez désormais vous authentifier en tant qu’administrateur pour créer votre premier utilisateur. Prenez garde à bien lui configurer un email !

Configuration de Windows

Certificat racine

Si vous avez mis en place un certificat authentique (par exemple LetsEncypt), vous pouvez passer ce paragraphe.

BlueMind utilise HTTPS, et des certificats auto-signés ont été générés lors de l’installation (qui sont bien sûr remplacés en production par des certificats issus d’une autorité de certification, mais ce n’est pas le cas ici).

Le certificat racine est disponible sur le serveur :

/var/lib/bm-ca/cacert.pem

Vous devez copier ce fichier sur la machine Windows et l’importer dans  le magasin « Autorités de certification racines de confiance ». Pour ce faire :

  • le renommer en cacert.cer (Windows 10 ne reconnaît pas l’extension pem par défaut)
  • double-cliquer sur le fichier, « Installer un certificat », « ordinateur local », « Placer tous les certificats dans le magasin suivant », sélectionner « Autorités de certification racines de confiance », confirmer.

Fichiers hosts

Si le système Windows a directement accès à l’url externe avec laquelle vous avez configuré BlueMind, vous pouvez passer cette section.

Nous devons maintenant éditer le fichier C:\Windows\System32\drivers\etc\hosts afin d’ajouter des points d’entrée qui nous éviteront d’avoir à configurer un DNS.

La ligne suivante doit être ajoutée :

192.168.33.10	bluevm.test.loc autodiscover.test.loc

Attention à bien remplacer l’IP, l’url externe et l’url de l’autodiscover ! Cette dernière est déterminée en remplaçant le premier membre de votre url externe par autodiscover.

L’heure de vérité

Si tout s’est bien passé jusqu’ici, vous pouvez maintenant démarrer votre Outlook :

  • créez un nouveau profil Outlook pour l’évaluation
  • renseignez l’email de l’utilisateur que vous avez créé plus haut
  • sélectionnez « Exchange » comme type de compte
  • insérez le mot de passe de l’utilisateur en cochant « Mémoriser mes informations d’identification »

Après quelques instants, Outlook vous signale que le compte a été ajouté. Cliquez sur « Terminer ».

Vous y voilà ! Votre Outlook communique désormais en mode natif avec BlueMind ! À vos tests !

Finalisation (pour les perfectionnistes)

Pour être tout à fait honnête, il reste encore un réglage afin que votre Outlook fonctionne de façon optimale sur le long terme (mais ce n’est vraisemblablement pas le cas de votre installation d’évaluation) : dans les paramètres de votre compte Outlook, la synchronisation doit être positionnée à « Tout » (durée maximale).

Suivez nous :

Le Libre et le Gratuit : Mythes & Légendes

(et réalité)

Le mot « free » est polysémique, il signifie aussi bien gratuit que libre. Pour autant la signification exacte de « Free Software » est « libre » : Logiciel Libre. Malgré tout, dans l’imaginaire collectif un logiciel libre est un logiciel gratuit. 

Vrai ou Faux ?

Il était une fois… 

Libre, gratuit, open source, ouvert, free… chacun de ces mots peut être utilisé pour désigner un logiciel dont le code est rendu public, accessible, utilisable, modifiable et redistribuable. Cependant plusieurs opinions s’opposent sur l’usage qui peut en être fait.

Evidemment, il existe des licences, plus d’une centaine en tout, qui régissent ce qu’il est possible ou non de faire avec un code accessible. Mais au-delà de ces règles établies, ce sont des philosophies qui s’affrontent. 

Commençons par un peu d’histoire du vocabulaire.

Le terme « Free Software » est le plus ancien et se reflète dans le nom de la Free Software Foundation (FSF), une organisation fondée en 1985 par Richard Stallman pour protéger et promouvoir le logiciel libre. Le terme « open source » lui, a été créé par Christine Peterson et adopté en 1998 par les fondateurs de l’Open Source Initiative.

Dans les années 1990, le terme « ouvert » appliqué au code source d’un logiciel était parfois utilisé pour laisser entendre que le code source était simplement inspectable, visible ou disponible.

Le terme « open source », tel qu’il est défini dans la définition de l’Open Source de l’OSI, indique clairement que l’open source n’implique pas seulement un simple accès pour inspection, mais aussi le droit perpétuel de forker (c’est-à-dire créer un nouveau processus par bifurcation d’un processus existant) le code et de l’utiliser sans frais supplémentaires.

Pour la FSF, les utilisateurs d’un logiciel libre ont la liberté d’exécuter, copier, distribuer, étudier, modifier et améliorer ces logiciels. Ainsi, « logiciel libre » fait référence à la liberté, pas au prix. Là où l’OSI voit des critères pragmatiques de transparence, de collaboration, d’innovation etc., la FSF émet un jugement de valeur : le libre est le bien et le propriétaire représente le mal.

La FSF et l’OSI utilisent des définitions différentes, qui aboutissent au même résultat dans la pratique. La FSF est cependant beaucoup plus dogmatique et politique que l’OSI et milite au travers de sa figure de proue, Richard Stallman.

Les termes « Open Source » et « Logiciel libre » sont interchangeables, sauf lorsqu’ils sont utilisés spécifiquement pour discuter de l’histoire ou des connotations de la différence terminologique elle-même. 

Les lasagnes de Mère-Grand

Une fois qu’on a dit ça la question reste en suspens : un logiciel libre est-il gratuit ? Reprenons une célèbre phrase de Richard Stallman: « This is a matter of freedom, not price, so think of “free speech,” not “free beer.” En français la nuance est plus évidente car les mots sont différents : « C’est une question de liberté, pas de prix, alors pensez à la liberté d’expression pas à la bière gratuite ».

Les développeurs sont comme vous et moi. Même animés des meilleures intentions, il faut bien qu’ils mangent et malheureusement le bénévolat ne remplit pas le frigo. L’Open Source ou le Logiciel libre – selon comment vous préférez l’appeler – ne peut être pérenne s’il ne dégage pas de bénéfices. Et quand on ne vend pas le produit, c’est que l’on vend un service ou que l’investissement dans le produit sert une autre cause (comme maintenir une alternative, par exemple : mozilla, pour éviter sa propre hégémonie ou celle d’un concurrent)

Pensez aux lasagnes. La recette est à la disposition de tous depuis des années. N’importe qui est en mesure de les réaliser. La recette a même été « forkée », on en a décliné de nouvelles versions : végétariennes, végane, au poisson… Pour autant, quand vous allez au restaurant italien de votre ville, vous êtes prêts à payer pour en manger y compris les plus standards comme les bolognaises. 

Même chose avec l’Open Source. Le code – la recette – est disponible, mais ça ne vous transforme pas en cuisinier pour autant, et encore moins en restaurateur. Le service, le support, les mises à jour, la compétence technique, la salle du restaurant, le service, la vaisselle et le cuisinier – doivent être fournis, et donc rémunérés.

Les éditeurs Open Source ont donc un rôle majeur à jouer dans la « consommation » de logiciels par les utilisateurs ou clients. 

« Les clients cherchent une solution à leur problème ou besoin, pas un code source » expliquait Pierre Baudracco à l’occasion du Paris Open Source Summit 2018. « Prenez le code de BlueMind, il est disponible. En revanche les compétences pour le déployer, le maintenir, le mettre à jour en toute tranquillité et efficacité, tout en minimisant les risques de problèmes, de perte, d’indisponibilité, en garantissant les outils et l’écosystème qui l’alimente, ainsi que le réseau de partenaires certifiés pour l’implémenter, tout ça, c’est nous qui le fournissons. » 

Formules magiques

Les logiciels les plus courants sur le poste utilisateur sont à ce jour majoritairement détenus par quelques grands acteurs internationaux, essentiellement américains. Acteurs que l’on retrouve également derrière les principales plateformes cloud, sous la désignation de GAFAM. Cette concentration est malsaine : ils prennent les entreprises en étaux en les rendant dépendantes de solutions et services toujours plus chers et aux conditions non négociables.

Sans oublier que ces géants sont très doués pour les tours de passe passe avec les impôts. Nous vous invitons à (ré)écouter notre ministre de l’économie et des finances, Bruno Le Maire sur le sujet.

L’hégémonie de ces quelques acteurs leur permet de bénéficier d’une puissance inégalable. Même les états ne parviennent pas à les dompter en matière d’imposition. On parle d’une « Taxe GAFA » sans savoir comment la mettre en œuvre alors que pendant ce temps là Google déplace légalement des milliards dans des paradis fiscaux et Amazon promène son chiffre d’affaires entre le Luxembourg et le Delaware (pour ne citer qu’eux).

Dans un rapport intitulé « L’Open source – ou Logiciel libre – alternative aux grands fournisseurs », les DSI ont poussé un violent coup de gueule contre cette hégémonie, menaçant de se tourner vers le logiciel libre. En effet, le libre peut être une réponse réaliste, plus éthique, plus transparente et qui présente moins de risques de concentration (contrairement à l’idée de créer nos propres GAFAM européens.)

Un code accessible est synonyme de transparence, de pérennité (si son éditeur ne joue pas le jeu, un fork ou alternative peut apparaître comme par ce fut le cas pour mysql avec MariaDB) et « d’auditabilité », un mot barbare pour dire que l’on est en mesure de l’examiner, tout comme il est possible de lire la recette et la liste des ingrédients d’un plat de lasagnes. Ceci est très important, même essentiel, dans un monde où toute donnée personnelle est monétisable.

Encore récemment on apprenait que Facebook a laissé Netflix et Spotify accéder à tous nos messages privés, à la suite de nombreux autres scandales liés à des comportements non conformes des applications. 

Des Sorciers et des Hommes

Les logiciels libres sont déjà partout… dans les couches infrastructures. Celles que les utilisateurs finaux ne voient jamais : couches réseaux et sécurité, serveurs d’application, serveur web, virtualisation etc. 

Alors pourquoi sont-ils encore si minoritaires sur les postes clients des utilisateurs / consommateurs ? Deux raisons majeures :

  1. Parce que l’Open Source est d’abord pensé par des techniciens, pour des techniciens. 
  2. Parce que le marché du front-end a été verrouillé très tôt par les grands éditeurs.

Le premier point est simple à comprendre : il y a un monde entre les exigences des utilisateurs et celles des techniciens. Un développeur est satisfait quand une fonctionnalité de l’outil marche comme elle devrait, l’utilisateur lui, est prêt à tout jeter par la fenêtre si une seule fonctionnalité ne correspond pas à ce qu’il attend ou plus simplement qu’il ne parvient pas à l’utiliser.

Le second point quant à lui, est plus subtil : des armées d’UX designers chez les géants du logiciel ont façonné l’expérience de l’utilisateur jusqu’à la verrouiller totalement. En clair, ils nous ont fait développer des habitudes si bien ancrées aujourd’hui que l’on est devenus réticents à tout changement.

Pensez à la difficulté de passer de Windows à Mac et inversement, ou de iOs à Android. Imaginez maintenant abandonner la suite Office de Microsoft pour Libre Office ! Les boutons ne sont pas au même endroit : « mais comment on filtre cette p#%$£& de colonne ?!? » (histoire vraie). Il y a bien sûr aussi le problème de compatibilité des formats ; entre le propriétaire et le libre l’expérience du logiciel est dégradée quand le format utilisé est propriétaire ou opaque.

Et pourtant. Grâce aux éditeurs open source qui ont bien compris que les clients attendent une solution et non un kit de construction, le libre entame la remontée des couches basses vers l’utilisateur final.

« C’est précisément le problème que nous avons attaqué avec BlueMind v4.0, » explique Pierre Baudracco, Président de BlueMind. « La messagerie est l’outil le plus utilisé en entreprise, mais aussi certainement le plus critique. Sitôt qu’elle tombe en panne, c’est la panique totale. La grande majorité des utilisateurs a été biberonné à Outlook, la messagerie de Microsoft. »

«  Les DSI veulent éviter la révolte dans l’organisation et préfèrent la prudence en permettant aux utilisateurs de préserver les habitudes Outlook. Jusqu’ici l’Open Source imposait un changement d’interface. Nous avons choisi d’aborder le problème dans l’autre sens, en mettant le besoin utilisateur au centre. Certains veulent leur Outlook sans aucune différence, OK, permettons-le. Par contre, nous allons changer tout ce qui se cache derrière et ainsi offrir le choix pour l’interface utilisateur, dont celui de garder Outlook. »

Puisqu’une image vaut mille mots, nous avons concocté une petite vidéo : 

Ils vécurent heureux…

Si vous êtes arrivés jusqu’à ce paragraphe, vous savez désormais qu’un logiciel libre n’est pas nécessairement un logiciel gratuit et que vous en bénéficiez probablement déjà sans le savoir. 

Ce qu’il faut retenir, c’est qu’il existe aujourd’hui des alternatives crédibles et éprouvées sur le marché du libre qui permettent de s’émanciper de la mainmise des grands éditeurs (notamment US). Il ne s’agit pas d’une opposition dogmatique ou philosophique, mais bien d’un choix sociétal.

Choisir une solution Open Source Française ou Européenne, revient à favoriser l’innovation et l’emploi, préserver son indépendance et contribuer à la souveraineté numérique de nos états. 

Cet article, comme tous les autres, est ouvert à la discussion. N’hésitez pas à nous faire connaître votre avis sur LinkedinTwitterFacebook ou sur notre site internet.

Suivez nous :

BlueMind v4.0 : l’affaire de l’Orange Bleue

La nouvelle version de la messagerie BlueMind a été annoncée à l’occasion du Paris Open Source Summit 2018, sur un stand où l’on pressait des oranges. Toute la campagne est articulée autour d’une orange bleue, mais… Pourquoi ? 
Pour comprendre l’Orange Bleue, il faut d’abord comprendre la mission de BlueMind v4.0 et pourquoi elle aura mis si longtemps (5 ans) à sortir.

BlueMind v4.0

Faire sauter les verrous de la messagerie

A l’heure où le numérique s’immisce dans tous les secteurs, où les GAFAM sont devenus hégémoniques et où les Etats-Unis ont pour devise assumée «America First», notre dépendance aux solutions US pose une crise de confiance et de vraies questions sur la stratégie et la souveraineté numérique de nos nations et de l’Europe.

Le secteur de la messagerie fait partie de ces bastions dominés par les acteurs américains.

« Pour la messagerie, le vrai verrou, c’est le client Outlook »

Pierre Baudracco, Président de BlueMind et Président du programme du Paris Open Source Summit

Outlook est le client de messagerie de la majorité des organisations et la partie visible des utilisateurs. L’email est l’outil le plus utilisé dans le monde professionnel, c’est un point critique pour les organisations et les salariés, qui ont des habitudes très ancrées. On peut dire qu’ils sont captifs.

Les dirigeants et DSI voudraient plus de patriotisme économique, mieux sécuriser et maîtriser leurs données de messagerie et pouvoir faire des économies.  Pourtant la crainte de supprimer Outlook aux utilisateurs est très souvent le facteur qui l’emporte et impose le choix… En synthèse : la souveraineté ne résiste pas face à la satisfaction des utilisateurs!

BlueMind v4.0 a été conçu pour répondre à ce constat. Nous voulons permettre aux clients de conserver Outlook, sans aucun changement pour l’utilisateur, tout en passant à l’Open Source Français.

Nous n’encourageons pas l’utilisation d’Outlook qui, comme nous le savons tous, n’est pas une solution libre. Mais nous impulsons la transition vers un numérique plus éthique, plus ouvert et plus sain. Nous sommes convaincus que cela passe par une conception des produits qui va dans le sens de la satisfaction des utilisateurs. 

L’Open Source remonte dans la chaîne de valeur

BlueMind aura mis 5 ans pour réussir à développer, en exclusivité, cette alternative à Exchange 100 % opérationnelle avec Outlook sans module complémentaire. 

La nouvelle version 4.0 de BlueMind apporte une solution définitive au quasi-monopole du marché de la messagerie d’entreprise. En permettant aux organisations de conserver le client Outlook de façon transparente pour l’utilisateur, mais aussi d’utiliser de façon riche et collaborative les autres clients comme Thunderbird, le web ou les mobiles, nous offrons une alternative européenne ouverte et moins chère pour la messagerie.

Le Paris Open Source Summit 2018 a justement créé cette année un nouveau track « solutions utilisateur et solutions métier » pour évoquer ces logiciels libres directement destinés aux utilisateurs. L’Open Source n’est plus cantonné aux couches infrastructures. BlueMind v4.0 est un pas de plus vers le poste client Open-Source. 

Très bien, mais pourquoi une Orange Bleue à la fin !

Avec son nouveau slogan « la souveraineté enfin compatible avec les habitudes de messagerie » BlueMind annonce la véritable révolution.

Vous pouvez préserver les habitudes des utilisateurs tout en ayant la maîtrise de vos données et en privilégiant une solution française plutôt qu’américaine. Plus d’excuse maintenant, l’alternative existe : nous avons le choix (#NousAvonsLeChoix)

L’Orange Bleue est là pour interpeller. Ce qu’il faut comprendre, c’est que vous pouvez injecter du BlueMind dans votre système, il n’y aura pas de différence. L’orange, une fois coupée, reste une orange. 

Leslie Saladin, Responsable Marketing et Communication

L’orange bleue est donc une allégorie du choix qui est aujourd’hui présenté aux entreprises. L’alternative Open Source est là. Elle fonctionne. Elle préserve les usages de vos utilisateurs. Ils n’y verront que du feu… ou que des oranges !

Assistez à la réunion du lundi avec Berthier, le DSI, pour tout comprendre :

Suivez nous :

La petite histoire … d’un contributeur

Aujourd’hui nous vous proposons un article un peu différent de d’habitude. Nous allons vous raconter une histoire vraie, celle d’un contributeur BlueMind. Place à Pascal Salaun, créateur de BM-Monitor.

Laissez-moi vous conter une belle histoire, celle d’un contributeur, libre, à la solution Bluemind.

Tout commença, il y a fort, fort longtemps, quand un Chef de Projet Messagerie demanda des statistiques pour sa solution libre. Mais malheureusement, le Logiciel Libre ne fournissait que peu de solutions.

Il demanda alors à un de ses collaborateurs s’il ne pouvait lui développer une application. La petite main s’exécuta et lui fournit une solution : OSP (NDLA : pour des raisons liées à la propriété industrielle, je ne peux révéler la signification de cet acronyme). Cette application satisfit tout le petit monde des gestionnaires de messagerie, et n’évolua que très peu.

Quand un beau jour, un ingénieux Avant-Vente, se dit : tiens, si je contactais cette petite main pour intégrer ce module à notre belle solution, BlueMind?

Las, le portage n’avait pas encore été fait! Mais qu’à cela ne tienne, en quelques semaines, le manque fut comblé : bmStats était né. Ce projet vivait, revivait au fil des nouvelles versions de BlueMind (2.x, 3.0, 3.5, 4). Il avait même un petit frère, bmTraces, puis encore un autre, bmSearch. Et tout ce petit monde se retrouva sur le MarketPlace.

Mais voilà, après de longues heures à débugger du PHP, du PERL, le contributeur décida qu’il fallait revoir ces outils. Le nouveau programme devait fournir le meilleur de ses aînés.

Ainsi naquit « bm-monitor ».

L’annonce de cette future naissance fut faite à la communauté. Elle fut même présentée alors qu’encore enfant, sachant tout juste marcher. Et la voilà, maintenant adolescente, prête à conquérir le monde (enfin pas trop, c’est bibi qui fait le support sur son temps libre)

Fin de cette petite histoire 😉

Réellement, qu’est-ce que « bm-monitor » ?

Comme précédemment écrit, il s’agit d’une solution offrant le meilleur de ce que j’ai pu (modestement) développer.

Il offre :

  • une installation modulaire, là, où avant, tout se faisait sur le serveur Bluemind (avec la problématique des dépendances)
  • un language unique, le Python, choix fait en 2017, suite au POSS,
  • la gestion de ses propres dépôts DEBIAN (test, UAT, Prod), et donc une maîtrise des dépendances
  • un stockage des données extensible sur ELASTICSEARCH
  • la possibilité d’étendre avec Logstash et Kibana
  • de la recherche dans les traces des messages (issue des bmTraces & bmSearch)
  • des statistiques (graphes, tableaux) pour un domaine ou un compte (mailbox)
  • les fonctions « serveur secours », « gestion Sympa », « ajout de compte », « modification de comptes »
  • quelques scripts de synchro entre 2 serveurs BM 3.5 ou plus

Si vous ne voulez pas de « bm-monitor », mais uniquement de la fonction « log », alors n’installez que « bmSearch », et faite vous-même vos propres requêtes et graphes via l’outil de votre choix.

« bmSearch » est la brique indépendante qui analyse le fichier « mail.log », et traduit toutes ces lignes en documents ELASTICSEARCH.

Pourquoi être contributeur?

Et bien je suis fonctionnaire d’Etat, j’ai donc un emploi stable, avec un salaire correct, mais sans plus. Comme tout le monde, j’aimerais gagner plus, mais mon statut ne me donne que peu de latitude. Après, je n’ai pas vocation à être l’homme le plus riche du cimetière.

Et garder du code, du script qui plus est, caché de tous, surtout quand il se veut le plus « universel » possible, n’a pas de sens. Enfin, je ne suis pas un développeur comme l’on peut en trouver chez BlueMind, je ne suis qu’un scripteur dont la volonté est de se faire comprendre (outre fournir une solution à un problème).

C’est pourquoi, le code n’est pas optimisé à 200%. Les Pythonistes pleureraient. Mon code est lisible facilement donc modifiable.

Mes remerciements à toute l’Equipe de BlueMind (sinon je vais oublier des noms 😉 ) pour cette mise en avant de mon travail

Je vous donne rendez-vous au Paris Open Source Summit 2018 !

Pascal

Suivez nous :

De l’Open Source dans vos projets informatiques ? Quelle idée !

On ne se rend compte de la criticité de la messagerie qu’une fois qu’elle tombe en panne! Chez BlueMind avec l’Open Source, on en a fait la priorité #1

Commençons par la base : comprendre les notions de droit dans l’Open Source

Comme les logiciels propriétaires, l’open source se définit par ses licences d’utilisation, qui s’appuient elles-mêmes sur le droit d’auteur. L’auteur, titulaire des droits, donne à l’utilisateur des droits étendus, et quelques devoirs. L’auteur reste donc parfaitement identifié, il a des droits sur sa création mais il permet différentes utilisations ou redistributions en fonction du type de licence.

Certains diront que le logiciel libre est un « mouvement humaniste« , partant du principe que le logiciel fait partie du patrimoine de l’humanité au même titre que la connaissance scientifique…

Open source humaniste
« Depuis que je suis passé à l’Open Source, j’ai ouvert tous mes chakras » (Personne Ever)

Sans aller si loin, nous pouvons dire que la vocation de l’open source est de reprendre le pouvoir sur les logiciels. Il faut bien l’admettre, les logiciels sont partout, à tel point qu’on invente même des cures de digital détox !

Le logiciel libre, lui,  pose le problème dans l’autre sens en disant que c’est à l‘homme d’en être le maître et non l’esclave. Mais pour réaliser cela, il faut que nous gardions le contrôle, que nous sachions tout ce dont le logiciel est vraiment capable (je vous renvoie à l’article sur la souveraineté qui soulevait justement ce lièvre).

Et cela fait précisément partie des grands piliers de la philosophie Open Source.

Pourquoi parle-t-on de plus en plus d’Open Source aujourd’hui ?

On pourrait presque citer la « destruction créatrice » de Joseph Schumpeter car l’Open Source a apporté une rupture dans l’économie du logiciel en abaissant fortement les coûts. Et pour cause : si tout ce qui constitue le socle d’une plateforme informatique est devenu accessible pour des coûts fortement réduits, si le système d’exploitation, les bases de données, les logiciels serveurs, les outils de développement et d’administration le sont aussi, on imagine bien que le coût total d’un projet est « légèrement réduit » !

Microsoft et Linux

Attention, nous ne sommes pas non plus au pays des bisounours ! Les coûts structurels eux, sont bien imcompressibles : il faut du matériel, du support et de l’expertise humaine pour déployer et faire marcher tout cela. Les entreprises qui cent de l‘Open Source ne vivent pas d’amour et d’eau fraîche mais bien de projets, de souscriptions, de conseil et de support.

Mais c’est évidemment sans commune mesure avec le coût classique du développement d’un logiciel propriétaire. Ce qui d’ailleurs donnait des sueurs froides à Microsoft et aux autres géants qui ont ti leurs empires sur la notion de propriété et de verrouillage des licences.

Trouve-t-on vraiment de l’Open Source partout ?

L’Open Source a eu des succès mitigés sur le PC, auprès du grand public et de la plupart des salariés, amenés à travailler sur des machines trustées par les logiciels « sur étagère » des fameux GAFAM. Voilà pourquoi on a souvent l’impression que l’Open Source reste assez confidentiel et réservé à quelques « geeks » réfractaires au système.

Hello Open Source

Pourtant la réalité est tout autre !

« La victoire de l‘Open Source a été écrasante du côté serveurs et Cloud. Si Windows domine sur les postes de travail, le système d’exploitation Linux a une domination plus grande encore sur les millions de serveurs des grandes plateformes du web, de Google, Facebook, Amazon, ou eBay, mais des plus petits acteurs de la même manière. » (source : La Tribune)

La réponse à la question « trouve-t-on de l’Open Source partout aujourd’hui ? » est donc clairement OUI !

Et en chiffres, ça donne quoi ?

CNLL

En 2017, l’Open Source représentait déjà 10% du marché global de l’IT en France, ce qui nous place loin devant nos concurrents européens – Royaume-Uni (6,5 %) et Allemagne (6,4 %).

Parlons un peu chiffres avec le Conseil National du Logiciel Libre (chiffres CNLL 2017) :

Chiffre d’affaires sur secteur libre

4,426 milliards d’euros

Hausse par rapport à 2016

+8%

Chiffre d’affaires sur secteur libre estimé en en 2020

5,65 milliards d’euros

Taux estimé de pénétration du marché en 2020

11,11%

La place de la France dans le monde Open Source

Le gouvernement français a largement fait la promotion de l’Open Source pour ses propres services. Citons par exemple Mounir Mahjoubi, Le Secrétaire d’Etat chargé du Numérique, en ouverture du Paris Open Source Summit en décembre dernier :

Mounir Mahjoubi

« C’est formidable parce qu’on a de plus en plus d’entreprises françaises et d’entreprises francophones qui regardent maintenant les solutions du libre comme des moyens de se transformer, d’optimiser leur fonctionnement et pas juste comme la possibilité de remplacer un logiciel payant par un logiciel gratuit. Et ça, c’est une vraie transformation ! Pour l’Etat, c’est à peu près la même chose. Nous travaillons sur des grands sujets de souveraineté, de transformation radicale, de création de la plateforme numérique de l’Etat et sur ces sujets, les valeurs de base du libre, les solutions du libre nous correspondent. » (à retrouver en intégralité et en vidéo ici)

Les collectivités locales et territoriales, elles, se tournent de plus en plus vers lOpen Source pour leurs projets de messagerie. Certes, d’une part c’est parce qu’il s’agit de la solution recommandée par le «Référentiel général d’interopérabilité 2.0 », publié le 20 avril 2016 par le secrétariat général pour la modernisation de l’action publique.

Mais plus seulement ! Elles ont réellement intégré trois éléments essentiels relativement nouveaux :

  1. l’Open Source permet une gestion tarifaire modérée et maitrisée,

  2. l’Open Source fait gagner en souveraineté vis-à-vis des grands groupes américains,

  3. Et surtout l’Open Source s’adapte à l’utilisateur, parfois de façon totalement transparente pour que les transitions entre les outils se passent le plus simplement possible.

Un projet de messagerie à grande échelle en Open Source est-il vraiment crédible ?

On ne vous poserait pas la question si la réponse était non ! Le marché de la messagerie d’entreprise est aujourd’hui complètement saturé par GSuite, Microsoft Exchange, Lotus et Domino (IBM). Pourtant quelques petits villages gaulois (et étrangers) continuent de combattre l’envahisseur avec des solutions tout à fait pertinentes.

Village Gaulois

Il est aujourd’hui tout à fait possible pour BlueMind de migrer des messageries propriétaires de toutes tailles vers une architecture Open Source et ce sans aucun impact sur l’utilisateur final !

Le client Outlook par exemple, qui domine le marché et qu‘on est toujours frileux à faire évoluer de peur de chambouler des décennies d’habitudes, peut rester sur le poste de l’utilisateur final. BlueMind opère sa magie dans les coulisses en étant le seul à proposer un support Outlook natif, sans connecteur, et le seul à intégrer la gestion complète du collaboratif dans Thunderbird.

Bluemind

Un peu de philosophie pour finir; Un voyage de mille lieues commence toujours par un premier pas.” (Lao Tseu) Les étoiles de l’Open Source sont parfaitement alignées pour renverser complètement les jeux de pouvoir dans le secteur, reste à faire les premiers pas !

Par ailleurs, nous vous invitons à lire ou relire notre brève concernant le rachat de GitHub, Mecque de l’Open Source, par Microsoft, l’éternel némésis.

Suivez nous :

Tutoriel : écrire un add-on pour BlueMind

Vous voilà donc avec votre beau BlueMind flambant neuf. Vous avez entendu parler de notre grand plan d’architecture, des possibilités d’extension, de la plateforme p2, de l’API REST, mais vous ne savez pas par où commencer. Réjouissez-vous ! Cet article a été écrit pour vous !

Il vous faut juste connaître un peu de java et être plus ou moins familier avec Maven.

Objectif : une simple tâche planifiée.

Notre add-on sera une tâche planifiée.
Vous pouvez voir le gestionnaire des tâches de BlueMind comme un CRON interne, qui va exécuter les tâches au moment où elles sont programmées, ce qui est plutôt pratique pour vous assister dans l’administration de votre serveur.

Cette tâche va loguer quelques statistiques – en gros, nous allons faire un placeholder pour montrer comment faire tourner les briques de l’API REST ensemble. Faire quelque chose de plus significatif vous sera laissé comme exercice 🙂

Votre tâche planifiée listera les appareils mobiles de tous les utilisateurs pour tous les domaines gérés par votre serveur BlueMind. Simplement parce que c’est possible. Nous l’appellerons MobileDevicesListingJob.

Prudence est mère de sûreté

N’oubliez pas que lorsque vous utilisez l’API REST avec un serveur BlueMind, vous traitez de vraies données d’utilisateurs et il est plutôt facile de faire des erreurs puisque tout ce que vous pouvez faire dans BlueMind peut être fait via l’API REST. Il n’y aura pas d’écran de confirmation comme lorsque vous utilisez la console d’administration : si vous avez un doute, alors ne faites pas. Ou mieux : faites vos tests sur un serveur d’entraînement. Nous ne modifierons pas de données dans ce tutoriel afin de ne pas prendre de risque, mais soyez averti.

Amorcer un projet maven

Si vous jetez un coup d’œil aux entrailles de BlueMind, vous verrez des bundles OSGi partout.

Comme nous voulons faire un add-on BlueMind, nous dépendons de la plateforme cible. Cette plateforme est publiée en tant que dépôt p2, vous pouvez la trouver à cette adresse : http://pkg.blue-mind.net/p2/latest/
Comme on peut le voir dans l’URL, il s’agit de la dernière et de la plus importante plateforme cible de BlueMind. Elle est mise à jour à chaque fois que nous publions une nouvelle version de BlueMind – avec un peu de chance les mises à niveau ne casserons pas votre travail.

Nous utiliserons Tycho, grâce auquel la construction de vos paquets avec maven est plus facile.

Vous trouverez ici la structure de projet de base. Téléchargez-là et extrayez l’archive quelque part.
Ce projet est réduit au strict minimum. Je ne vais pas rentrer dans les détails des fichiers de configuration, vu qu’ils ne sont pas spécifiques à BlueMind, mais je voudrais souligner deux points :

  • pom.xml contient la déclaration de l’emplacement de la plateforme cible de BlueMind
  • plugin.xml contient la déclaration du point d’extension que nous utiliserons, soit scheduledjob_provider, avec le nom de notre future classe java : org.example.mobiledeviceslistingjob.MobileDevicesListingJob

Le reste n’est que de la configuration standard.

Comme alternative, vous pouvez aussi utiliser notre plugin maven archetype pour démarrer votre projet. Ou cloner notre exemple bluemind-samples pour obtenir un add-on déjà existant à adapter.
Tous les chemins mènent à BlueMind. Ou Rome. Bref…

Dans le répertoire du projet, vous pouvez lancer :

mvn install

Et voilà !
Vous avez construit votre projet, mais il ne fonctionne pas encore : il n’y a pas de code.

Eclipse à la rescousse

Vous pourriez continuer à écrire votre code java dans votre éditeur favori, mais voici comment le faire dans Eclipse :

  1. Importez votre projet maven dans votre espace de travail
  2. Indiquez à Eclipse la plateforme cible de BlueMind : allez dans Preferences, cherchez « Target Platform » et ajoutez une nouvelle définition de plateforme cible. Vous devez commencer avec une définition de cible vierge, choisissez un nom (par exemple tout simplement « BM target platform ») puis ajouter l’URL indiquée précédemment comme nouveau Software Site :

screenshot-from-2017-03-29-17-43-39

Sélectionnez tout (les cases « Uncategorized » dans l’écran ci-dessus), cliquez sur Finish et c’est fini ! Attention, vous devez sélectionner la plateforme cible que nous venons de créer avant de fermer la fenêtre Preferences.

Mettre en place les dépendances

Nous devons déclarer quelles parties de la plateforme cible de BlueMind nous utiliserons effectivement dans le fichier MANIFEST.MF. Notre documentation en ligne de l’API REST vous aidera à sélectionner les parties dont vous aurez besoin. Si vous avez installé le paquet optionnel bm-docs et donné la permission Api docs à votre utilisateur, cette documentation devrait être accessible directement dans BlueMind :

screenshot-from-2017-03-30-09-36-52

Cerise sur le gâteau : cette documentation en ligne est interactive, ainsi vous pouvez exécuter les appels depuis le client javascript. Attention, l’avertissement précédent s’applique toujours ! Et les dégâts que vous pourrez faire dépendront des droits accordés à l’utilisateur connecté.

Vous pouvez aussi trouver de l’inspiration dans le code source de BlueMind.

Voici les dépendances dont vous aurez besoin, ajoutez simplement ces lignes à la fin du fichier MANIFEST.MF :

Require-Bundle: net.bluemind.domain.api,
 net.bluemind.user.api,
 net.bluemind.device.api,
 net.bluemind.scheduledjob.scheduler,
 net.bluemind.core.rest,
 net.bluemind.slf4j
  • net.bluemind.*.api : les APIs REST servant à explorer les domaines, utilisateurs et appareils mobiles
  • net.bluemind.scheduledjob.scheduler : pour utiliser les extension points
  • net.bluemind.core.rest : pour mettre en place l’authentification à l’API REST
  • net.bluemind.slf4j : classes permettant de loguer – nous ne ferons guère plus que loguer quelques informations à la fin de la journée

Amusez-vous avec l’API REST

Alors, continuez et créez la classe que nous avons déclarée dans plugin.xml :  org.example.mobiledeviceslistingjob.MobileDevicesListingJob. Elle doit implémenter IScheduledJob pour scheduledjob_provider pour pouvoir se brancher dessus. Voici le code complet, je copie ici la logique métier seulement :

// logger will write in bm core logs (/var/log/bm/core.log)
logger.info("Executing MobileDevicesListingJob");
// sched will write in the execution report, that you can send by mail in the Job setup UI
sched.info(slot, "en", "Collecting mobile devices data for all users...\n");
// write header row for the data to come
sched.info(slot, "en", "device; isWipe; lastSync; user; domain");
// initialize client for domain service
IDomains domainService = ServerSideServiceProvider.getProvider(SecurityContext.SYSTEM)
    .instance(IDomains.class);
// loop on all domains
domainService.all().stream().forEach(domain -> {
  // initialize client for user service
  IUser userService = ServerSideServiceProvider.getProvider(SecurityContext.SYSTEM)
      .instance(IUser.class, domain.uid);
  // loop on all users
  userService.allUids().stream().forEach(userUID -> {
    // grab full details for user
    ItemValue<User> user = userService.getComplete(userUID);				
    // initialize device service for each user
    try {
      IDevice deviceService = ServerSideServiceProvider.getProvider(SecurityContext.SYSTEM)
          .instance(IDevice.class, userUID);
      // loop on all devices
      deviceService.list().values.stream().forEach(device -> {
        // collect info for this device
        List<String> deviceInfo = new ArrayList<>();
        deviceInfo.add(device.displayName);
        deviceInfo.add(Boolean.toString(device.value.isWipe));
        deviceInfo.add(device.value.lastSync.toString());
        deviceInfo.add(user.displayName);
        deviceInfo.add(domain.displayName);
        // write a line in the report					
        sched.info(slot, "en", String.join("; ", deviceInfo));
      });;
    } catch (ServerFault exception){
      // Skipping this user since she doesn't have a "device" container
    }
  });
});

Déployer dans votre serveur BlueMind

Compilez votre code :

mvn clean install

Puis déposez le jar produit (target/org.example.mobiledeviceslistingjob-1.0.0-SNAPSHOT.jar) dans le dossier /usr/share/bm-core/extensions de votre serveur BlueMind.

Enfin, redémarrez le service bm-core :

/etc/init.d/bm-core restart

Votre tâche devrait apparaître parmi les tâches planifiées de la console d’administration. Vous pouvez l’exécuter, la programmer, envoyer le rapport à votre meilleur ami, elle est à vous !

Avertissement : si vous devez recompiler/redéployer votre extension, vous aurez peut-être besoin d’effacer le cache de bm-core pour vous assurer que la dernière version du jar est utilisée :

rm -Rf /var/lib/bm-core

Parler REST depuis le monde extérieur

Vous avez remarqué que nous avons utilisé un fournisseur de service ServerSideServiceProvider pour initialiser les services de l’API REST, mais vous pouvez bien sûr parler REST depuis l’extérieur, par exemple en utilisant un client python. Pour cela il vous faudra une clef d’API BlueMind.

Partagez votre travail !

Ne vous embêtez pas à partager votre MobileDevicesListingJob. En revanche une fois que vous aurez fait quelque chose d’utile vous pourrez le partager sur le MarketPlace BlueMind. Nous attendons avec impatience vos contributions !

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Enregistrer

Suivez nous :

Suggestion Box – le self service des nouvelles fonctionnalités

En tant qu’éditeur, notre rôle consiste à prendre en compte les attentes de nos utilisateurs et de faire évoluer notre produit afin de répondre à ces attentes.

La particularité est que BlueMind est un logiciel OpenSource, et donc ouvert par définition. Cependant, cette ouverture peut nuire à la bonne organisation du développement.

Très vite, le succès du produit nous a apporté énormément de retours fonctionnels ou techniques. Et il a fallu nous organiser afin de traiter ces demandes.

Business model

Avant de partir dans le vif du sujet, il est important de comprendre notre métier d’éditeur, le modèle économique choisi par BlueMind, et ces impacts sur notre organisation.

Nous sommes éditeurs, et à ce titre, nous nous concentrons sur le développement du logiciel, l’amélioration du produit, l’interconnexion avec des partenaires technologiques. Nous visons un marché qui ne se cantonne pas à un pays ou à un métier particulier. Aujourd’hui tout le monde a besoin d’une messagerie, et BlueMind permet de répondre à ce besoin que l’on soit une PME, une ETI, ou une multinationale.

Afin de parvenir à couvrir un marché mondial, nous travaillons avec un réseau de distribution via des partenaires qui sont en charge de réaliser les projets chez nos clients, et/ou mettre en place des plate-formes SAAS.

Via notre réseau de partenaires, nous pouvons ainsi atteindre beaucoup plus de clients potentiels.

Cela a deux conséquences :

  • issus pour la plupart de nos partenaires, nous ne connaissons pas tous nos clients
  • et nous aurons de plus en plus de clients

Cela impose de mettre en place des outils et méthodes permettant de recueillir les attentes de nos clients et de les traiter le mieux possible.

Organisation du développement

Si l’on parle au sens DevOps et notamment en regardant ce schéma de nos confrères de Normation, du développement d’une application à la mise en place en production, deux parties sont présentes, le BUILD et le RUN.

Le rôle d’un éditeur est le BUILD, et donc de traiter les besoins métiers pour créer des “binaires applicatifs”. Au sens méthodes agiles, les besoins métiers peuvent prendre plusieurs formes (stories, epics, …)

L’équipe R&D de BlueMind travaille depuis la naissance du produit avec des méthodes agiles, permettant de développer des fonctionnalités rapidement, dans un contexte précis. Toute une batterie d’automatisation et de tests est en place et permet de distribuer rapidement une nouvelle version avec de nouvelles fonctionnalités.

Le problème analysé dans cet article est l’abondance des besoins métiers : comment les traiter pour alimenter convenablement la R&D ?

Gestion des besoins métiers

Mais pourquoi les gérer ? On nous demande quelques choses et on le fait !

Cela resterait simple si seulement nous avions des ressources infinies et que toutes ces demandes étaient cohérentes entre elles et avec notre vision. En attendant, il faut trier, sélectionner les demandes pour enrichir une Roadmap avec un ensemble de features qui iront dans un Backlog.

Le backlog va contenir un ensemble de fonctionnalités qui devra être trié et validé par le Product Owner, les premières du backlog devant être traitées en priorité par l’équipe R&D.

Processus simple de qualification

Nous avions mis en place un processus simple de qualification d’une feature (jeunes padawan que nous étions!), simple et complet.

  1. comprendre le besoin
  2. valider ou pas la demande
  3. rechercher les doublons (qui vous dit que d’autres utilisateurs n’ont pas fait exactement (ou pas exactement d’ailleurs) la même demande !)
  4. créer une story pour le backlog
  5. la positionnner dans le backlog en fonction de la priorité décidée par le Product Owner
  6. la rattacher à une Epic, si cette story est trop volumineuse

En théorie, nous avons donc « seulement«  6 étapes pour trier une demande de fonctionnalité.

Cette méthode qui semble simple, vient se compliquer quand vous avez un afflux important de demandes (décrites par des personnes qui ne sont pas forcément clientes, que vous ne connaissez pas, avec leur vocabulaire et leurs attentes –souvent un peu spécifiques), et des fonctionnalités qui s’accumulent dans votre backlog. Rechercher un doublon peut être long dans une centaine de features…

L’afflux de demandes dans notre cas se fait via plusieurs canaux :

  • les clients finaux
  • les partenaires
  • en interne (les développeurs, les commerciaux, les avants vendeurs…)
  • la communauté utilisatrice du logiciel

Et on voit bien que cela commence à faire potentiellement beaucoup de personnes qui ont des demandes fonctionnelles à nous remonter.

people

Tout le monde a un besoin qu’il juge générique (alors que souvent il ne l’est pas…), qui n’est pas toujours exprimé de la façon la plus évidente et tout le monde considère sa fonctionnalité comme indispensable dans son logiciel de tous les jours !

Notre backlog : en jachère

En janvier 2015, l’état du backlog était le suivant :

  • 140 feature non triées
  • 470 stories dans le backlog

avec parmi ces stories :

  • certaines importantes (la mise en place d’une fonctionnalité majeure et structurante)
  • des stories moins importantes (l’évolution d’une fonctionnalité déjà présente par exemple)
  • certaines petites, mais légitimes (possibilité de trier une colonne : faisable, intéressant, mais est-ce prioritaire ?)
  • d’autres, insignifiantes, voire polluantes (avec tout le respect que j’ai pour nos utilisateurs : “le bouton serait mieux en jaune”)

Le problème principal ne vient pas directement de l’afflux de features, mais plutôt de la façon de traiter et de créer ces features.

Comme dans tous les projets informatiques, nous avons mis en place un bug tracker. Dans la majorité des bug trackers (pour ne pas dire la totalité à ma connaissance), les traitements d’un bug et d’une feature sont presque équivalents (par défaut). Nous avons le plus souvent un formulaire de demande quasi identique et un menu déroulant permettant de qualifier une “issue” en “bug” ou en “New feature”.

7-differences

Le véritable problème est là : un Bug n’est pas une feature ! Ce sont deux traitements différents, avec des objectifs différents !

Malheureusement, dans les bug trackers, la frontière entre un bug et une feature n’est pas assez claire.

L’utilisateur qui crée une feature se retrouve dans le même niveau d’attente (voire d’exigence) qu’un bug, ce qui ne doit pas être le cas.

Un bug :

  • doit avoir des délais de résolution, et suivant le service offert, doit respecter une SLA
  • doit être corrigé. C’est un dysfonctionnement qui doit entrer dans un cycle de correction.
  • a un workflow précis permettant de suivre son évolution ( ouvert, en attente de retours, corrigé, déployé, “won’t fix”…)
  • a une criticité
  • impacte sensiblement les utilisateurs, qui veulent être informés des avancées.

Une feature :

  • est une demande d’évolution
  • n’a pas (contractuellement) de deadline
  • n’a pas (contractuellement)  de criticité
  • n’oblige pas à un feedback vers les utilisateurs
  • peut être prise en compte, acceptée… ou pas

Ainsi, par la nature même d’un bug ou d’une feature, leur traitement est complètement différent.

La Suggestion Boxlogo-sb

Nous avons donc décidé de fonctionner autrement, de reconsidérer totalement le traitement des fonctionnalités. Premièrement, nous n’allons plus parler de “new features” ou fonctionnalités : nous parlerons dorénavant de suggestions.

Dans notre analyse, nous avons compris que pour optimiser le traitement des “demandes de suggestions”, il est important  que le besoin soit le mieux décrit, le mieux qualifié possible par le demandeur lui-même.

Le problème n’est pas, à ce stade, technique ! Mais comment arriver à pousser les “demandeurs” à être actifs ? Le vocabulaire utilisé est important, et commence déjà à conditionner l’utilisateur :

  • l’utilisateur va « suggérer » et non pas « exiger » !
  • le « Je veux » devient un, “je vous propose”, “j’aimerais, un jour”

C’est donc sur cette base que nous avons créé La Suggestion Box, une interface dédiée permettant principalement la consultation des suggestions existantes.

Du mérite et de la discipline

La suggestion box doit inciter ses utilisateurs à se poser plusieurs questions avant de proposer sa suggestion :

Questions fonctionnelles :

  • à quoi sert et que devra faire ma proposition de fonctionnalité ?
  • quels sont les impacts de cette fonctionnalité sur le logiciel BlueMind en général ?

Questions organisationnelles :

  • Est-ce qu’un autre utilisateur a déjà fait une telle demande ?
  • Ou est-ce qu’une suggestion existante s’en rapproche ?

Si la création d’une suggestion est immédiate, nous n’aidons pas nos utilisateurs à réfléchir à leurs attentes. Ainsi chaque besoin va finir en demande, sans analyse en amont. Et ce travail devra tout de même être réalisé, avant de passer une feature en story (découpage réalisable d’une fonctionnalité).

C’était exactement ce qui se passait quand on autorisait la création d’une “new feature” dans un bug tracker: “ je n’ai qu’une liste déroulante à choisir et un titre à remplir”…

Nous devons donc guider les utilisateurs dans leur démarche, via un self-service de la suggestion : la suggestion box !

Comment

La suggestion Box a été créée suivant les spécifications suivantes, volontairement simples pour ne pas alourdir la démarche :

blueprint-suggestionbox

  • La recherche :
    La recherche est importante, puisque nous sommes sur une interface de consultation des suggestions. Il nous faut donc une recherche performante.
  • Pas de création sans recherche :
    pour inciter les utilisateurs à rechercher une demande similaire,  il n’est pas possible de créer une suggestion depuis la page d’accueil. La création est autorisée si seulement une recherche ne donne pas le résultat attendu. En l’absence de résultat probant, la création de suggestion devient possible.
  • Catégorie :
    Toujours dans le but de donner un maximum d’information, la suggestion doit être catégorisée, afin de permettre des regroupements logiques et de faciliter la recherche.
  • Votes :
    les votes vont permettre d’ordonner les demandes. Il devient ainsi facile d’identifier quelles sont les demandes les plus populaires.
  • Commentaires :
    Si une demande se rapproche d’une suggestion déjà existante, les commentaires permettent de donner une autre vision de la suggestion et de débattre de celle-ci, plutôt que d’en créer une autre. En effet, il vaut mieux enrichir une demande existante qui se rapproche de la sienne plutôt que d’en créer une autre : cela permet de cumuler plus de votes.
  • Aucun statut :
    Le but est de laisser évoluer la suggestion par la communauté d’utilisateurs, afin qu’elle s’affine, se précise et réponde aux attentes du plus grand nombre. À tout moment, quelqu’un peut rajouter un commentaire et enrichir sa vision, sans contrainte de temps. BlueMind s’en empare au moment opportun, la marque en « acceptée » pour rédiger les spécifications finales et réaliser la suggestion.

Comment BlueMind utilise la Suggestion Box

Établir la RoadMap d’un logiciel est le travail d’un éditeur. La suggestion box est un élément parmi d’autres afin de construire une RoadMap. La suggestion Box n’est pas la source absolue de la RoadMap, mais va compléter les retours et chantiers internes que nous avons prévu de faire.

Le nombre de votes d’une suggestion permet de connaître la popularité d’une demande. Cependant, BlueMind peut faire le choix de ne pas prioriser une suggestion qui se retrouve avec un nombre de votes important et privilégier plutôt une suggestion moins populaire.

En effet, pour des raisons techniques, d’organisation, de cohérence ou de choix stratégiques, c’est toujours le Product Owner qui prend la décision finale du contenu d’un sprint R&D.

De plus, les tâches “internes” non demandées par les utilisateurs (changement d’API, de librairie de dév..) peuvent être priorisées afin de prévoir dans un second temps un possible développement d’une fonctionnalité avancée.

Une fois qu’il a était décidé de faire évoluer un composant (calendrier, administration, contact…), la suggestion box est mise à contribution afin de connaître les attentes de nos utilisateurs, et de voir ce qu’il est possible de faire évoluer en fonction des différentes contraintes.

La catégorisation de la suggestion box permet ainsi de limiter l’analyse des suggestions au module que nous souhaitons faire évoluer.

Bilan

Deux ans après la mise en service de la Suggestion Box, le retour est extrêmement positif.

Actuellement nous avons un backlog avec 78 stories découpées en 22 EPIC  alors qu’auparavant, nous nous battions avec 470 stories dans le backlog plus 170 features non analysées.

La suggestion BOX regroupe 224 suggestions, 662 votes ont été effectués, répartis sur 134 suggestions. 50 suggestions ont été réalisées, certaines avec beaucoup de votes (jusqu’à 46), certaines avec beaucoup moins de votes, mais jugées prioritaires.

Informations Complémentaires

La suggestion Box de BlueMind se trouve à cette adresse https://community.bluemind.net/suggestions/

Notre développement est OpenSource, et vous pouvez trouver toutes les informations que vous voulez sur ce projet directement sur http://www.suggestion-box.io

La naissance de la suggestion Box est issue de discussions et réflexions interne notamment avec Dominique Eav, notre responsable qualité, aussi auteur du développement de la Suggestion Box.

Et bien sûr, comme nous faisons évoluer la suggestion box, vous pouvez aussi créer une suggestion pour la Suggestion Box !

Enregistrer

Enregistrer

Enregistrer

Suivez nous :

BlueMind transforme Thunderbird en un vrai client collaboratif !

bluemind-thunderbirdUn obstacle fréquent à l’adoption d’un serveur de messagerie Open Source est la prédominance d’Outlook comme client lourd ; car Outlook fonctionne toujours différemment (donc moins bien) avec un autre serveur que lorsqu’il est connecté à Exchange… en attendant l’innovation de BlueMind qui va apporter le support natif d’Outlook !
C’est une question d’habitude (ou d’accoutumance) des utilisateurs, mais aussi car l’offre en bon client de messagerie (mail et collaboratif) Open Source et multi-plateformes est quasi nulle.

Le client Open Source de référence est Thunderbird de Mozilla, qui tourne sur Windows, Mac, Linux & autres.
Cependant si Thunderbird est un bon client mail, il est un piètre client collaboratif. Sa fonction d’agenda est apportée par une extension, Lightning, qui n’a jamais donné satisfaction en entreprise (question ergonomie, performance, etc.) : l’utilisateur ne comprend pas pourquoi il a 2 interfaces différentes, à l’ergonomie et aux fonctionnalités différentes selon sa méthode d’accès (web ou client lourd).

BlueMind propose une gestion complète de Thunderbird, orientée utilisateur, qui répond exactement à ces problématiques.

Découvrez Thunderbird comme client lourd naturel pour BlueMind !

Continuer la lecture de « BlueMind transforme Thunderbird en un vrai client collaboratif ! »

Suivez nous :