[JSS 2013] Session : Pratiques et expériences du Projet BI Agile (BIML/NBI)

Speakers: Florian Eiden, Jordan Mootoosamy, Thomas Morisson
Level: 300

Cette session commence par un retour expérience d’implémentation de la technologie SCRUM chez un client, puis une démonstration des outils BIML et MIST, et enfin les automatisés via NBI.

Retour d’expérience :

Le processus agile appliqué sur ce projet de 13 personnes est SCRUM qui est une méthode itérative (livraison du besoin au cours du temps), incrémentale (Livraison des dev au cours du temps), adaptive (Adaptabilité aux nouveaux besoins). Ce processus permet aussi une proximité pour l’utilisateur. La technologie utilisée est la suite MS BI.

L’équipe type d’un projet SCRUM est :

– SCRUM Master : ici 1 personne – pas forcément le chef du projet = facilitateur du projet

  • Garant du respect des principes d’agilités
  • Anime les différents évènements

– Product Owner (PO) ici 1 personne

  • Définit les users story en collaboration avec les utilisateurs

– Développeurs : ici 11 personnes, composés de  développeur, lead  technique et d’architectes

  • Réalisent les US
  • Équipe indépendantes techniquement

Le cœur de fonctionnement d’un projet Agile est le tableau de Post-it avec 3 segmentations : A faire, En cours et Fini. Cet élément visuel de l’avancement apporte un sentiment d’appartenance aux différents participants car il leur permet de déplacer leurs tâches en fonction de leur avancement.  Version numérique du mur de post-it : Mingle http://www.thoughtworks.com/products/mingle-agile-project-management

Le projet avance en sprint de 3 semaines comprenant :

  • Revue de sprint : 0,5 jours : présenter les US, chiffrage, définir objectif principal ( SCRUM Master, PO et Dev). Les développeurs font l’estimation  de la charge.
  • Planification 0,5 jours : (Dev) création des posts-it et attribution des tâches
  • Stand up meeting  – quotidien: (Scrum M, PO, Dev) : avancement  et attribution des tâches (réunion informelle debout ou chaque personne parle de son activité de veille et du jour) – développeur mono tache, si bloqué il laisse en cours et s’assigne une autre tâche
  • Rétrospective – 0,5 jours  ( Scrum ,PO, dev) : Bilan, présentations, axes positifs / à améliorer

En synthèse de ce retour d’expérience, le management était satisfait du  chiffrage collégial et de la vision globale du sprint grâce au mur  de post, permettant un  bon pilotage à l itération. Par contre il ne faut pas perdre de vue les fonctionnalités futures

Du côté des développeurs, les interventions lors des stand-up meeting est très gratifiant, facilitant le partage de la connaissance.

BIML / MIST :

Contexte : Certains aspects freinent le respect des best practices : SSIS ne facilite pas la réutilisation du code et ne permet pas réellement une abstraction du développement

Outils présentés :

BIML : Business Intelligence Markup langage

  • XML crée par Varigence
  • On peut faire tout ce que fait dans SSDT sauf SSRS
  • BimlScript injecté pour générer dynamiquement des objets
  • Integré à BIDS Helper depuis 2011

MIST : IDE crée par Varigence pour solutions MSBI

  • Versionning et source control – compatible TFS ou SVN
  • Permet de rajouter un niveau d’abstraction entre le design des packages et leur implémentation
  • Reprise existant (packages)

MIST : Interface plaisante avec interface graphique et code en BIML => double vision

  • Balise annotations pour être réutilisée lors de la génération du package
  • Table BIML ou les tables et colonnes sont définies

On peut définir le mode d enchainement des tâches : linéaire ou parallèle

  • On peut exporter vers SSIS en 1 clic et reconstituer sur SSIS par la suite
  • Création de packages de tables de façon automatiques
  • Modification des codes BIML via intellisense (table.Name, table.getTag(« Nom »)/>
  • Select <#table.getColumnList() From <#table.getTag(« Source »)/>
  • Une fois buildé, on obtient une solution SSIS complète et modifiable via SSDT ou Visual Studio

– Conclusion

  • Compétences préalables nécessaires
  • Temps apprentissage du langage
  • Abstraction du code pour réutilisation facilité
  • Cout réduit du changement sur les packages déjà développé
  • Permet une qualité de développement constante
  • Cout de licence MIST 250$/ mois par développeur
  • Abonnement perpétuel 4000$
  • Démo sur : http://www.varigence.com/Products/Mist/Capabilities

Tests automatisés :

– New features = test

  • Plus le projet avance plus l’impact est important
  • Test en 1 clic, si valide déployé en 1 clic
  • Réutilisable 6 mois plus tard mm lorsqu’on a oublié le fonctionnement

– Outils :

  • Frameworks open source : BI.Quality : bien mais abandonné
  • NBI : vivant développé par un français
  • Visual Studio : prix licence, intégration ALM

– NBI :

  • Framework .NET

– Nunit : Framework test unitaire open source pour Microsoft, Outil permettant de valider la non régression

  • ADOMD.net
  • NBI : merge pour faire des tests unitaires sur SSIS et SSAS, SSRS encore oublié
  • Install peut être pénible

– Projets de test : structure du projet de test

  • Création des tests : notepad++ ou éditeur XML (.nbits documenté sur nbi.codeplex.com)

– Exécution des tests : Nunit avec des requêtes supportant (SQL, MDX, DAX)

Dans un test : deux éléments, system under test et Assert

– Nunit permet aussi l’industrialisation :

  • Scripter exécution
  • Métadonnées de tests
  • Paramétrer les requêtes
  • Partage des sources
  • Génération automatique de tests : Genbi

– Stratégies de test :

  • Cycle v : cahier de tests, recette
  • Approche exhaustive
    • Flux
    • DWH vs Cube
  • Scénarios de références

Synthèse – tests automatisés:

  • Méthodologie projet : enfin la légitimé
  • Alternatives externe à Microsoft, pas dans le scope de Microsoft, Quid des nouveaux produits (suite Power BI), Quid de SSRS?

Synthèse personnelle :

Session très dense autour de l’agilité dans les projets BI. Les 3 intervenants étaient dynamiques et clair dans leurs explications. MIST m’a vraiment plu jusqu’à ce que le prix des licences soit évoqué. La suite BI  Microsoft ne semble toujours pas être prioritaire dans les intégrations aux bonnes pratiques (ALM et agilité).

MIST mérite le coup d’œil mais je ne sais pas s’il existe de version d’essai.

Marc – Consultant décisionnel MCNEXT

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s