samedi 24 juin 2017

Business vs IT : l'impossible réconciliation ?

Modification : Samedi 24 Juin 2017 - 19h48 (ajout webcast Pinterest Growth Team)
Modification : Dimanche 25 Juin 2017 - 22h35 (ajout Dual-Track Scrum)

Je suis actuellement en train de vivre une aventure passionnante au sein de l'entreprise que j'ai rejointe, il y a tout juste 1 an.

En route pour l'aventure !


Cette aventure est synonyme de nouveaux défis à relever avec de nouvelles offres et produits (digitaux) à imaginer qui :
  1. enthousiasmeront les différents clients que nous servons (ça c'est la dimension Business)
  2. s'intégreront avec le reste des offres existantes dans un tout cohérent (ça c'est la dimension IT / Digital [je ne rentrerai pas dans le débat sur cette différenciation dans ce billet...]).

Un chemin semé d'embûches


Les ambitions sont grandes... et les obstacles aussi :


Problème Description Moyen de surmonter
Concurrence externe nombreux concurrents (startups très actives) qui savent réagir vite en étant disruptives agilité,
position dominante
Concurrence interne offres très complémentaires mais avec des zones de friction management,
redéfinition des offres,
offres transverses, …
Organisationnel* être agile mais pas au sacrifice de la maintenabilité fédérer les acteurs internes autour d’un projet,
architecture performante,
maîtrise de la dette technique

(*) je vous recommande la lecture de l'article "Vers une entreprise agile : la sauvegarde des mammouths ou la nécessaire transformation des DSI"

Attardons-nous sur ce dernier problème : l'Organisation et commençons par la fameuse Agilité

Agilité : une main de velours dans... une chape de plomb ? 


En tant qu'ancien consultant, j'ai croisé beaucoup (plusieurs dizaines) d'entreprises et pu voir plusieurs modèles d'organisation. Au cours de ces dernières années, j'ai vu déferler la méthodologie Agile au sein de ces organisations et ça ressemble plutôt à ça :

Source : http://www.commitstrip.com/fr/2017/01/09/that-little-problem-with-agile/


Bref, l'agilité n'est pas facilement embrassée... C'est que les anciens modèles d'organisation ont la vie dure

Pour 1€ symbolique : mon ancienne DSI 1 fois, mon ancienne DSI 2 fois, ... 


Afin de rationaliser l'outil de production IT, on a rassemblé les compétences au sein de DSI (les équipes de "Prod")

Source : "Vers une entreprise agile..."

Toute la difficulté (voire la schizophrénie) des métiers est qu'elles doivent :
  1. innover rapidement au risque d'être dépasser de perdre leur avantage concurrentiel
  2. respecter des contraintes budgétaires fortes (au risque de perdre un budget parfois serré)

Externalisation : égarement ou vraie solution ?



C'est ainsi qu'on a pu voir des sociétés externaliser leur DSI (cession vers des sociétés de services telles que SSII - appelées désormais ESN pour ceux qui ont suivi l'actualité de ces dernières années). Et bien oui, dans certains groupes aux conventions collectives très favorables, un informaticien coûte fort cher comparé à ceux qu'on peut avoir via le Syntec !
J'ai également pu observé un recours très fort aux prestataires de services (toujours les mêmes ESN) avec une montée en gamme par le biais du BPO (Business Process Outsourcing), c'est-à-dire le fait de déléguer une partie de ses processus non critiques à un tiers.

Je suis convaincu que disposer de compétences en interne pour accompagner le Business est un atout majeur. Néanmoins, pour les entreprises qui font le (bon) choix de garder leur DSI, m'est avis qu'il ne faut pas tomber dans le schéma MOA vs MOE, ces 2 entités ne se parlant qu'à coups de spécifications et de SLA.

Et c'est souvent là que ça tiraille un peu : le Business veut pouvoir développer et tester (A/B testing...) de nouvelles fonctionnalités en mode "Quick & Dirty" (ex: Pinterest et sa Growth Team)


et la DSI a besoin de pouvoir assurer les correctifs et réintégrer ces nouvelles fonctionnalités quand elles auront été validées.

S'organiser autrement


Les organisations modernes l'ont bien compris en montant leurs projets autour d'équipe "pluri-disciplinaires" rassemblant : métier, UX/UI designer, développeurs, chef de projet, ... et en faisant sauter les barrières entre les équipes que ce soit :

  • Scrum : agilité entre métier (MOA) et études (Dev)
  • DevOps : agilité entre études (Dev) et équipe de de production (Ops)


Source : "Vers une entreprise agile..."

Mais il est possible d'aller bien plus loin !

Un modèle qui commence à faire du bruit est le Dual-Track Scrum (lire https://www.devbridge.com/articles/how-to-set-up-dual-track-scrum-in-jira) (voir aussi Dual-Track Product Development) où - à l'instar de ce que fait Pinterest dans le webcast ci-dessus) - on distingue 2 phases dans la mise en oeuvre du produit :
  1. Discovery
  2. Delivery
la première alimentant la seconde via des stories déjà testées auprès des utilisateurs finaux.

Schématiquement :

Source : https://www.devbridge.com/articles/how-to-set-up-dual-track-scrum-in-jira/

Je serais enclin à croire que c'est vers ce modèle qu'il faut s'orienter, et vous ?




samedi 8 octobre 2016

Un premier galop d'essai avec Neo4j


Neo4j est une base orientée graphe, qui excelle dans le parcours des relations entre objets là où les bases de données relationnelles peinent avec leurs multiples jointures.

Les cas d'usage des bases orientées graphe sont nombreuses :

  • réseaux sociaux (nous pensons que vous pourriez connaître untel, ...)
  • moteurs de recommandations (les personnes qui ont acheté cet artcile ont aussi acheté...)
  • logistique (le meilleur chemin de livraison est celui-ci, ...)
  • ...
Après téléchargement, la base de données s'installe en quelques clics. Vous disposez ensuite d'une interface Web très intuitive et accompagnée d'un tutoriel non moins clair.

Cette même interface permet de charger les données, requêter - à l'aide du langage Cypher - et de visualiser le résultat sous forme de :
 - table
 - graphe

Voici un petit exemple d'une base déposée sur GrapheneDB, une plategorme d'hébergement, et disponible publiquement et gratuitement (jusqu'à 1k noeuds, 10K relations max). (User / Mdp : cigref / Ain2qRe75aTewcZ1vq9h)



Pour aller plus loin
Je vous recommande la vidéo de Nicole White qui exploite les données des vols commerciaux américains pour illustrer les capacités de Neo4j





lundi 8 février 2016

Compensaticity : les augmentations en 2 clics de souris ?

J'ai récemment développé un petit proof of concept dans le domaine de la gestion de la rémunération.
Pas un brin de SAP pour changer mais plutôt du Web : AngularJS + Rickshaw.js + Intro.js.



De quoi essayer de concurrencer SuccessFactors...  avec une future intégration SAP HCM  ;)

AngularJS: le framework MV*  de Google


Rickshaw.js : un des nombreux frameworks permettant de réaliser des graphiques en utilisant D3.js. Les 2 graphiques sont manipulables à l'aide des 2 sliders "Salaire fixe" et "Bonus". Le manager ou le RH peut ainsi visualiser en temps réel l'influence des augmentations qu'il/elle octroie au niveau de l'historique du collaborateur ou dans le graphe d'ensemble des collaborateurs occupant des fonctions similaires.

Intro.js : un outil de "onboarding" (simplissime de mise en oeuvre !) qui permet une prise en main assistée de l'outil. Vous pouvez le rappeler à l'aide du lien Help dans le coin supérieur droit.



Je pense avoir déjà parlé de Mockaroo et c'est grâce à ce service en ligne (gratuit pour le faible volume de données de la démo) que j'ai généré les mockup data pour ce PoC


Vous trouverez la démo en ligne ici. (merci à Codio)