#036

Nouvelle version de Mezzoteam

La nouvelle version de Mezzoteam, numérotée 2.4, vient d’être mise en ligne ce mercredi par Prosys. Elle propose les nouvelles fonctions suivantes :

  • Possibilité de copier un espace de travail pour en ouvrir un nouveau : cela permet d’envisager l’utilisation de Mezzoteam pour des collections de projets, où des modèles propres à l’entreprise sont paramétrés, puis utilisés systématiquement.
  • Classement automatique des documents : cette fonction,qui était pour l’instant en version béta (et sujette d’ailleurs à quelques comportements erratiques), est maintenant officielle et opérationnelle. Elle apporte un confort apprécié pour les utilisateurs de la version Professionnelle, en les affranchissant du classement à la main des documents.

D’autres améliorations sont également au programme, dont par exemple un meilleur support pour l’international (langues non-européennes, date et heure…).

Tous les utilisateurs de Mezzoteam bénéficient dès à présent de ces nouvelles fonctionnalités.

Merci Philippe

Ce vendredi, Philippe Dolléans sortait des effectifs de Prosys, pour se consacrer à d’autres aventures sans rapport avec le travail collaboratif pour le monde de la construction. Je voudrais ici saluer l’action d’un de ceux qui, avec Dominique Pradels et Eric Daussy, ont été à l’origine du marché des « Armoires à plans ».

De Coteba – où il a participé aux premiers pas d’EDI Management aux cotés d’Alain Thirion – à Prosys, en passant par l’aventure Constructeo, Philippe a été l’un des principaux évangélistes de l’avancement de ces technologies dans le monde de la construction, qui est resté (et restera) le fil conducteur de son parcours professionnel. Passionné, chaleureux, toujours lucide sur l’état du marché et sa capacité à absorber les changements, Philippe aura contribué plus que d’autres au passage d’un marché de spécialité, à un marché qui s’oriente petit à petit vers des solutions plus standardisées, disponible sur des plate-formes mutualisées.

Plus personnellement, depuis près de quinze ans que je le connais, et depuis quatre années que nous travaillons ensemble, je lui sais gré d’avoir milité patiemment pour nous faire partager sa culture du pragmatisme, et sa vision d’un service où la valeur délivrée doit bénéficer en premier lieu au client.

Pour un marin comme Philippe, que lui souhaiter sinon « Bon vent » !

Une étude intéressante sur le marché anglais du travail collaboratif

Le blog de Paul Wilkinson, Extranet Evolution, est une source d’information tout à fait intéressante sur le marché du travail collaboratif en Grande Bretagne. Bien que collaborateur de l’un des principaux offreurs anglais (BIW), ses analyses sont toujours pertinentes (à condition de pratiquer la langue de Shakespeare, bien sûr). Dans un article récent, il donne des informations sur la taille globale et les performances relatives des différents acteurs de la collaboration sur ce marché.

Depuis la bulle des années 2000, le marché français a toujours regardé de l’autre coté de la Manche avec envie : les communiqués de succès des opérateurs, alliés à la structure de l’ingénierie à l’anglo-saxonne permettaient de croire à une adoption rapide du collaboratif par l’ensemble des acteurs du secteur de la construction.

Force est de constater que la taille du marché et de ses acteurs n’est pas dramatiquement plus importante qu’en France ; ainsi, le marché, vu au travers de ses principaux acteurs, pèse environ 18 M€, soit un peu moins du double du marché français (les avis sont _très_ partagés sur la taille de notre marché hexagonal). Paul fournit en particulier le tableau suivant :

Entreprise Année fiscale CA 2005 CA 2004 CA 2003 Bénéfice 2005 Bénéfice 2004 Bénéfice 2003
BIW 30 Sep 4.018 3.018 2.691 -0.192 -0.516 -0.816
BuildOnline 31 Mar 2.856 2.462 1.736 -0.551 -0.259 -0.697
4Projects (estimation) 31 Mar 2.1 1.6 1.0 0.27 0.13 0.14
Business Collaborator (estimation) 31 Dec 1.9 1.476 0.935 0.030 -1.837 -0.349
Asite 31 Dec 1.529 1.674 1.697 -1.327 -3.962 -2.457

D’après ces chiffres BIW est nettement devant le second de son marché, Build Online. Mais le plus étonnant, c’est que près de dix ans après leur fondation, la quasi totalité des acteurs majeurs du marché anglais sont déficitaires, avec pour certains une volatilité des déficits d’une année sur l’autre qui ne permet pas de dégager une tendance vertueuse.

Qu’en penser ? Quels sont les signes objectifs que ces entreprises envoient à leurs investisseurs pour qu’ils continuent à les soutenir contre vents et marées ?

Autant de questions dont les réponses intéresseraient probalement certains de nos champions nationaux…

Mise en ligne de la version 2.3.1 de Mezzoteam

Lundi matin, Prosys mettra en ligne la version 2.3.1 de Mezzoteam. Cette version apporte son lot de corrections de bugs, et un meilleur support du Macintosh (même si celui-ci est toujours en version béta).

Gérer des fiches questions-réponses avec Mezzoteam

Les possibilités de paramétrage de Mezzoteam permettent aux administrateurs de laisser libre cours à leur imagination.

Il m’a été demandé de paramétrer pour un client des fiches questions-réponses, document courant sur les chantiers. L’objectif étant de permettre à un utilisateur de poser une question, et à une ou plusieurs personnes de répondre à cette question. Vous me direz, pourquoi ne pas utiliser les forums de Mezzo ?

Tout simplement pour des raisons de confidentialité : les fils de discussions postés dans les forums sont publics, alors qu’une fiche question-réponse attend une réponse précise d’un ou de plusieurs utilisateurs donnés. De plus, il semblait pratique de prévoir que les questions (et/ou les réponses) soient agrémentées de fichiers associés. Ces deux pré-requis m’interdisaient d’utiliser le forum pour répondre à ce besoin.

Malgré ces besoins de confidentialité, il fallait que la saisie soit la plus simple possible (pas de saisie de numéro d’ordre ou autre), afin d’obtenir un fonctionnement proche de celui du forum, tout en conservant les fonctionnalités riches demandées.

Scénario utilisateur

Le scénario utilisateur retenu consiste à créer une famile de documents « Question », qui permettra de… poser les questions ! Une fois sa question terminée, l’émetteur signera et diffusera sa question aux personnes qui doivent répondre, et qui seront informées par courriel de la présence d’une question. La réponse se fera en clonant la question, qui devra alors être marquée comme une réponse.

mezzoqr.jpg

Pour garder un lien logique entre question et réponse, on utilisera un « code question » qui sera commun à la question et aux réponses. Le numéro servira ensuite de discriminant entre la question et les réponses.

Ainsi, une question aura un code du type : Q-003-00, et ses réponses un code du type R-003-01 et suivants.

Mise en oeuvre

Pour réaliser ce paramétrage, nous allons nous appuyer fortement sur le langage de formules Mezzoscript de Mezzoteam.

Tout d’abord, nous allons créer une famille de documents non-révisable appelée « Question ». Nous allons ajouter les champs utilisateurs suivants :

  • Sous-titre
  • Type (Code TYPE, Question ou Réponse, calculé)
  • Code Question (Code CODEQUEST, calculé)
  • Numéro d’ordre (Code NUMORDRE, calculé)


Il est à noter que tous les champs calculés doivent ne l’être qu’à la création du document !

Le champ Type sera basé sur la formule suivante :

@Ifs(TYPE="","Q","R")

Si le champ Type ne contient rien (nous sommes en train de créer une nouvelle question), alors on lui affecte le code « Q ». Dans le cas contraire (il contient « Q »), nous sommes en train de cloner le document (donc de créer une réponse), et nous affecterons alors le code « R ».

Le champ Code Question est un champ qui contient le numéro chronologique du « fil de discussion » ; il sera partagé par la question et les réponses. Il ne doit donc être calculé que lors de création de la question et non lors du clonage d’un document (pour créer une réponse). Sa formule, plus complexe, est la suivante :

@ReturnIf(TYPE="R",CODEQUEST);
@ReturnIf(TYPE="Q" OR TYPE="",@Format(@ChronoGetNext("QUESTION"),"000"));

On utilise ici la capacité de Mezzoscript à pouvoir enchaîner plusieurs commandes dans un script. La formule @ReturnIf permet d’évaluer l’expression qu’elle contient, puis d’arrêter toute évaluation si la condition est vérifiée.

On vérifie d’abord si le document est une réponse (TYPE="R"), et si c’est le cas, on se contente de réaffecter le code récupéré lors du clonage de la question (ou d’une des réponses…). Si ce n’est pas le cas, on calcule un nouveau code question, que l’on formatte sur trois caractères.

Mais pourquoi ne pas utiliser @Ifs ?

Pourquoi utiliser @ReturnIf alors que @Ifs aurait apparemment pu faire l’affaire ? Tout simplement parce que si nous avions écrit cela :

@Ifs(TYPE="Q" OR TYPE="",@Format(@ChronoGetNext("QUESTION"),"000"),CODEQUEST)

L’ensemble de la formule aurait été évaluée à chaque fois, et notre chrono aurait été incrémenté à chaque fois que nous aurions créé une réponse (même si le numéro affiché dans le code question aurrait été correct !).

Le champ Numéro d’ordre va nous permettre de franchir encore un cap dans l’utilisation des chronos. Nous avions vu dans un précédent article que le paramètre de la formule @ChronoGetNext permettait de repérer uniquement le chrono dans la liste de ceux utilisés dans un espace de travail. Mais comme nous sommes dans MezzoScript, nous pouvons parfaitement calculer ce paramètre, afin de le rendre dynamique.

Et c’est exactement ce que nous allons faire avec le numéro d’ordre des fiches questions-réponses. En effet, ce numéro d’ordre doit se rapporter au code question, et non pas à l’ensemble des questions posées ; ainsi il sera vu comme un « indice » du code question, avec la question portant le numéro « 00 », et les réponses commençant à « 01 ».

@ReturnIf(TYPE="Q","00");
@Format(@ChronoGetNext("QUESTION"&CODEQUEST),"00")

Sur la première ligne, nous évaluons si nous avons à faire à une question, auquel cas nous lui affectons le numéro « 00 ». Dans le cas contraire, nous construisons le code du chrono du nuéméro à partir du nom de la famille documentaire et du code question de la fiche à laquelle nous répondons.

Nous n’avons plus qu’à composer le code en choisissant les champs correspondant dans l’identifiant, puis à positionner les champs Titre et Sous-titre dans le masque, puisqu’ils sont les seuls à être saisissables.

N’oubliez pas également de gérer les droits du documents, en n’affectant aucun droit de lecture particulier lorsque le document est signé (ainsi, seuls les lecteurs du document pourront répondre).