Lancement de projet agile, comment s’orienter ?

Agaetis vous propose, sous un format packagé, en 2 à 4 semaines, un accompagnement organisationnel pour co-construire les conditions optimales du lancement de votre projet. Nous embarquons l’expertise pour identifier et maîtriser les contraintes liées à votre contexte, puis déployer le socle technologique adapté, avec votre équipe.

Jean-Michel Gourbeau, coach agile chez Agaetis répond à toutes les questions que vous pouvez vous poser autour de cet accompagnement !

En quelques mots, quel est l’objectif de l’offre Scoping360 proposée par Agaetis ?

Cette offre a pour but de permettre à nos clients de disposer d’un package complet et autoporteur pour assurer le lancement d’un projet agile dans les meilleures conditions possibles. Réalisé sur un cycle de temps court, le Scoping360 est une démarche qui initialise et cadre cette première phase de projet.

Lors d’une reprise de projet, d’une refonte, chaque brique composant cette offre sera adaptée aux contraintes et à ce qui doit être conservé de l’existant.

Qu’est-ce qui se cache derrière le terme Scoping360 ? Qu’est ce qui motive cette offre ?

Plaçons-nous au centre de l’espace qui sera dédié à votre futur projet ; de quoi avez-vous besoin ? Qu’est ce qui doit être préparé ? Qu’est ce qu’il ne faut pas oublier ? Ces différents composants, à disposer “autour de vous”, voilà l’essence de notre démarche, l’ADN du projet et le pourquoi du 360.

Nous proposons l’accompagnement organisationnel et embarquons l’expertise technologique pour exprimer, jauger, préparer et affiner le besoin de nos clients, la vision du produit. L’idée est de transformer cet entrant clé en un projet itératif à haute valeur ajoutée, sur un délai de 2 à 4 semaines selon la disponibilité des différents participants.

En synthèse, les objectifs du Scoping360 sont :

– assurer le lien entre une idée et son implémentation à venir ;

– engager les parties prenantes sur un objectif commun ;

– déployer le cadre de travail adapté.

Dernier point, il est important pour nous d’intégrer et de mentorer notre client dans la préparation et le déroulé de la démarche, pour que ce Scoping360 puisse être rejoué en autonomie.

Comment le cycle du Scoping360 est-il alimenté ? 

L’idée, ou la vision, d’un produit doit servir la stratégie d’entreprise ;  portée par les instances dirigeantes, elle sera un entrant fort de cette démarche. Ce premier lien légitime le projet à venir, en assurant un bon niveau de sponsorship. 

Parmi les autres éléments importants qui viennent alimenter notre cadrage, bien entendu, l’écosystème, son organisation et ses contraintes sont des éléments clés. On intègre aussi d’éventuels retours d’expériences précédentes, et ceux d’une équipe support s’il s’agit d’un produit déjà exploité.

Enfin, un Scoping360 se voulant itératif, les livrables produits, les retours d’expériences, les différents ressentis et les axes d’améliorations identifiés seront autant d’entrants pour une prochaine session de cadrage.

Quelles sont les lignes directrices qui guident cette offre ? 

Passer d’une vision à sa réalisation, c’est d’abord bien orienter son projet. Nous déroulons cette démarche selon trois grande lignes directrices :

Focus produit ! 

Travailler l’ADN de la solution à réaliser : cela sous-entend d’engager l’équipe métier, cadrer la vision associée et ensuite identifier et impliquer les utilisateurs, autour d’une planification partagée.

Focus technologie ! 

Identifier les briques technologiques qui composent l’architecture dont nous avons besoin pour servir le produit. Il s’agit également d’identifier une éventuelle dette technique et fonctionnelle, puis d’intégrer notre approche “security by design”.

Focus humain !

Identifier l’organisation d’équipe adaptée, sans superflu, préparer et faciliter sa mise en place. Sa sérénité est clé ; un haut niveau de confiance est une aide précieuse pour atteindre ses objectifs.

Cette offre se découpe donc en plusieurs axes d’actions, quelle est la promesse ? Quelle expertise y est engagée ? 

Reprenons chaque grand axe de travail :

L’ADN de la solution à réaliser :

Nous pouvons illustrer ce point avec un entonnoir : nous décomposons une idée en une multitude de fonctionnalités et d’éléments les plus fins possibles… En sortie, tous ces composants sont priorisés et organisés sur une échelle de temps, avec le positionnement des contraintes temporelles et des jalons (si besoin). Nous construisons donc notre roadmap et notre planification.

Sur cet axe, nous engageons notre expertise de coaching Agile, d’idéation, de structuration et de gestion de projet.

Le volet technologique et sécurité :

En fonction des contraintes techniques connues et de l’attendu (exemple d’un niveau de performance ou de la pérennité espérée), nous devons définir  les architectures matérielles, logicielles et l’outillage qui seront les plus adaptées. À cela s’ajoute l’audit préalable des usages et la définition d’une stratégie de sécurité. L’ensemble de ces activités aboutissent à la livraison de la documentation technique, fonctionnelle et de sécurité.

Sur cet axe, nous faisons appel à nos expertises d’architecture solution et IT d’entreprise, ainsi qu’une partie de celles de notre offre cybersécurité.

Déploiement d’une organisation adaptée, lean :

Généralement en fin de cadrage, nous définissons le cadre de travail Agile, les KPI utiles et la stratégie de gestion des risques, en fonction des contraintes organisationnelles et de l’écosystème opérationnel de l’équipe. Enfin, afin de la structurer, nous définissons ses rituels, ses règles de vie, nous ajustons le périmètre de chaque rôle, la comitologie, la stratégie de communication… Le tout compose la documentation de vie de l’équipe, voire même une partie de son management visuel.

Sur cet axe, c’est l’expertise des coachs et le mentoring d’équipe qui prime, avec l’animation d’ateliers et du conseil sur les outils adaptés.

Pour rentrer dans les détails, en quoi consiste le scoping d’un produit ? 

C’est un cheminement qui se déroule via une séquence d’ateliers de travail : de la vision macro à l’activité opérationnelle, en passant par la construction d’un lien renforcé entre équipes métier et IT, alignées sur un objectif commun.

Première étape: rassembler les participants clés du futur projet, même si les membres de l’équipe qui réalisera le produit ne sont pas tous connus. Ensemble, nous planifions dans le détail chaque atelier, en identifiant quelles parties prenantes du projet il est pertinent et constructif d’inviter. À chaque étape du Scoping360, un ou plusieurs livrables seront produits, sur mesure pour le projet et le client dont il est question.

De ce point de départ, le coach responsable de l’ensemble du cycle prépare et anime les différentes sessions de travail, il les adapte et il itère si besoin. Au moins une personne de l’équipe client participe à ces phases préparatoires et aux animations, aux présentations, aux restitutions. L’objectif est pour nous de transmettre les bases du savoir-faire nécessaire, induire de la confiance et un processus d’autonomisation sur cette pratique.

Pourquoi est-il primordial de savoir organiser son projet agile ? 

Une organisation soignée dès le départ permet de créer une base solide, d’éviter des pertes de temps, un certain nombre d’incompréhensions et de frustration par la suite. Cela semble simple mais c’est une étape à anticiper et à ne pas rater, particulièrement avec nos processus itératifs qui atteignent des rythmes soutenus. 

Voici quelques gains, communs aux expériences réussies :

– une maîtrise forte de ce qui est produit par l’équipe,

– une limitation des incertitudes,

– beaucoup de sérénité, chère au focus humain évoqué plus haut (et nos principes d’agiliste).

Il faut savoir investir ce temps de cadrage et de préparation pour ensuite en gagner et assurer la réussite du projet.

Au passage,  le pilotage de projet se doit d’entretenir la confiance entre les parties prenantes, via une grande transparence et le maintien d’échanges constructifs, garants de cycles vertueux.

Quel est l’intérêt de l’offre Scoping360 pour un projet ? 

Au lancement d’un projet Agile, d’autant plus si c’est le premier, il est souvent compliqué d’identifier les actions à mener pour garantir les meilleures conditions de travail pour son équipe. Notre offre Scoping360 apporte ce package complet, cette base organisationnelle nécessaire, avec l’accompagnement de nos coachs en incluant l’expertise de nos experts et de nos architectes. L’accompagnement est, pour nous, indissociable de cette démarche et garantit en grande partie son succès. 

Enfin, le mentoring permet d’aller plus loin qu’une simple prestation. C’est à nos yeux tout aussi enrichissant et important de partager les clés de cette pratique.

Quelles sont les clés d’un cadrage 360 réussi ? 

Plusieurs facteurs facilitent le bon déroulement d’un Scoping360. 

Un soutien fort de l’équipe dirigeante est plus qu’important, cela légitime la démarche et le projet à venir. Autre point d’attention : il faut s’assurer de l’implication des parties prenantes et que les participants disposent du temps nécessaire au succès des ateliers.  La valeur du Scoping360 n’en sera que plus grande si un climat de confiance se crée pour promouvoir et protéger des échanges constructifs.

Par ailleurs, si nous devons déterminer les marqueurs de réussite d’un tel cadrage, le premier serait l’alignement et la compréhension de tous sur la vision, que tous aient compris pourquoi ce projet se lance, qu’il ait du sens pour l’équipe de réalisation. En plus d’une mise en confiance pour produire dans de bonnes conditions, les liens sont renforcés entre équipes métier et IT, avec des pratiques partagées, dans un esprit de co-construction. 

Autre indicateur de réussite : des managers qui adoptent une posture de soutien, de proximité avec l’équipe, plus que la simple validation d’une idée business, d’un budget et de contrôle de la production.

Et pour terminer, pourquoi choisir Agaetis pour m’accompagner dans mes projets agiles ? 

Chez Agaetis, notre guilde d’agiliste, particulièrement nos 3 coachs expérimentés maîtrisent la démarche et l’accompagnement des équipes projet agile. Au-delà des échanges, challenges et de l’entraide que cela induit, ils savent activer et utiliser l’ensemble des offres que propose notre entreprise, adaptées au projet qui se lance. 

Software Craftsmanship, Data Storming, Piloter son Cloud, Cybersécurité, Adopter K8S… en sont quelques-unes.

Le Story Point n’est pas Scrum ; bonne pratique ou illusion ?

La majorité des activités de nos sociétés modernes est régie par des systèmes numériques. Les chiffres et les nombres pilotent notre quotidien et constituent le socle de la gestion de projet. Le scrum, ce cadre de travail agile aux pratiques claires, avec ses cérémonies et ses rituels, n’échappe pas à la règle. 

Lors d’une récente expérience professionnelle, une équipe Scrum a dû évoluer, s’adapter et pallier au départ de son PO. Dans ce contexte déséquilibré, certains repères habituels, notamment les story points, ne faisaient plus sens dans le processus de production. Pour autant, cette équipe a réussi à revenir à l’essentiel, redéfinir ses pratiques et travailler en co-construction directe avec les équipes métier. Cette expérience est le point de départ de cet article et a nourri cette réflexion autour de l’estimation numérique. 

Aujourd’hui, pour la majorité des équipes, le story point semble être le socle numérique pour le suivi et la maîtrise d’un projet. Mais qu’en est il de ses origines, ses liens avec le produit, ses apports mais aussi ses inconvénients… Faut-il continuer à utiliser le story point ? 

Back to basics ; c’est quoi un story point ?

Dans le monde de l’Agilité, adaptée à l’IT, il est commun d’estimer l’effort nécessaire pour construire une fonctionnalité ou réaliser une tâche. Si l’on met volontairement de côté les estimations de type « dimensionnement », telles que les tailles de T-shirt, un système numérique comporte de nombreux avantages :

– être en mesure de calculer un ROI approximatif, comme le rapport entre la somme des estimations de tâches, en unité de temps, et le gain chiffré d’une fonctionnalité.

– définir le potentiel d’une fonctionnalité, comme le ratio entre la valeur métier d’une fonctionnalité et l’effort nécessaire pour la produire.

Élément numérique clé en Agile, le story point (SP) est une unité de mesure composite, couramment utilisée. Derrière cette dénomination, chère au jargon des agilistes, se cache un mix de plusieurs concepts :

– La complexité technique à produire.

– La durée de réalisation.

– L’incertitude ou le risque embarqué pour cette réalisation.

Quantifier et synthétiser ces éléments en une seule valeur nous simplifie l’existence. Au-delà de faciliter un calcul de potentialité ou un ROI, évoqués précédemment, le story point permet d’évaluer relativement les fonctionnalités, les unes par rapport aux autres. L’équipe détermine la valeur en story points d’une fonctionnalité qu’elle maîtrise parfaitement, et évalue les suivantes en fonction de cette dernière. 

Soit dit en passant, cette valeur étalon importe peu et sera propre à chaque équipe, comme le reste de l’échelle de notation.

Bien que l’on puisse utiliser une échelle de valeurs via une notation sur 10 ou un pourcentage, c’est généralement la suite de Fibonacci adaptée qui est associée au story point Agile. Déclinée sous un format de carte de poker pour une utilisation facile en équipe, on la retrouve donc sous la forme suivante: 0/0.5/1/2/3/5/8/13/20/40/100…

A noter que l’utilisation de cette échelle numérique est d’ailleurs corrélable avec la durée d’une itération, d’un sprint. On constate qu’en travaillant sur des cycles courts (2 semaines), naturellement l’équipe n’utilise pas les grandes valeurs, ce qui induit et valorise le travail de découpage du product owner et la gestion fine de son backlog de produit.

Story Point versus Scrum !

Lorsqu’une équipe travaille en respectant le cadre Scrum, il est généralement admis et accepté sans condition particulière que le story point est utilisé pour estimer les éléments du backlog.

En plus de concrétiser les notions d’effort, de complexité et d’incertitude, son format numérique est également pratique en termes de gestion de projet et facilite la mise en place des indicateurs associés. Le story point devient la base du calcul de la vélocité d’équipe, sa prédictivité, sa productivité, etc. Il permet même la construction du burn up chart, assurant au product owner le suivi de l’évolution de son backlog, donc l’avancement de la construction du produit.

Finalement, en Scrum, le story point est de facto associé au backlog, à l’échelle des fonctionnalités, à l’instar de l’unité de temps qui est utilisée pour chacune des tâches opérationnelles de l’équipe.

Facilitant le story point ? Assurément…. Mais si l’on revient aux basiques, à la littérature et notamment le Scrum Guide de Ken Schwaber et Jeff Sutherland, le story point, cet élément si commun aujourd’hui, n’est pas du tout mentionné. Seule l’estimation des tâches est une pratique décrite dans le document. Ce constat pousse à la réflexion autour du lien entre l’agilité au sens d’état d’esprit, et cette gestion très chiffrée que l’on fait de Scrum aujourd’hui.

Un story point, oui mais…

À l’échelle d’une fonctionnalité, la combinaison des complexités, durées et incertitudes est généralement difficile à déterminer pour une équipe. Bien que l’attendu ne soit pas une science exacte, ce besoin de traduire en temps et en coût au plus tôt nous amène à apporter plus d’importance aux story points donnés à chaque élément de backlog, en oubliant un peu qu’il s’agit d’une estimation complexe, mais qui est surtout relative, appuyée et confirmée par ce qui est déjà produit.  

Ce système numérique rassure ; il est concret, familier et paraît simple. L’équipe et son product owner développe une confiance excessive envers cette pratique (biais de la loi de l’instrument), le story point se substituant même à la valeur métier.

Puisqu’on attend d’elle un chiffre ou un nombre, l’équipe va naturellement se concentrer sur ce qu’elle peut quantifier, à savoir une durée et un effort à produire, reflétant la complexité. Naturellement, ce biais d’ancrage influence la prise de décision de l’équipe. L’incertitude (ou le risque), notion abstraite, se retrouve peu dans ces estimations chiffrées. C’est d’ailleurs souvent ce qui amène aux nombres les plus forts de la suite de Fibonacci (40 et 100), qui provoque ensuite une crainte quant à l’implémentation de ces éléments.

L’Agile met en avant l’empirisme, la confiance et les sentiments, or avec une telle dérive du nombre, on observe une baisse de la compréhension naturelle de l’équipe. Victime d’un biais de justification du système, elle fait le focus sur l’exactitude de son estimation, dédie une part de son énergie pour les améliorer, plutôt que de garder son attention sur le produit.

Cette perte de sens autour du produit amène l’équipe à travailler au service de ses indicateurs basés sur le story point, un résultat de vélocité devenant l’objectif principale d’une itération (biais d’actualisation hyperbolique).

Dernier point lié au management, les indicateurs de productivité, facilement calculable à partir du story point (estimation parfaitement inexacte) deviennent un levier de pression et de contrôle. Ce biais d’autorité est néfaste pour le fonctionnement d’une équipe qui subit un système de punition/récompense, plutôt que de profiter d’un climat de confiance. Dans les cas les plus grave, par la crainte du jugement du management, un biais de négativité se développe, bridant ainsi la capacité de progrès et d’innovation de l’équipe, au profit d’un résultat chiffré en fin d’itération et au dépend parfois de la satisfaction de l’utilisateur.

Stop aux story points ?

Cette réflexion amène naturellement la question du #NoEstimates. Il n’est pas ici question d’arrêter purement et simplement l’estimation des fonctionnalités à produire, mais plutôt de stopper un dimensionnement numérique des user stories, revenir ainsi à la priorisation métier et la valeur ajoutée du travail engagé.

Plus simple, pleine de bon sens, cette pratique ne répond plus au besoin de savoir, d’estimer, combien le développement du produit va coûter et sa durée… Mais cela n’est-il pas le propre de l’agilité ; fixer en amont budget et délai, pour se concentrer pleinement sur la priorisation pour maximiser la valeur ajoutée ?

Alors oui, pour assurer le suivi au product owner, informer le management et les sponsors, il est nécessaire de revoir les indicateurs utilisés et les construire à partir d’élément plus simple comme un simple comptage du nombre de user stories.

Avec de l’accompagnement, l’expérience et un niveau de maturité suffisant, une équipe pourra se passer du story point mais ce dernier reste rassurant pour une équipe jeune, et viendra parfaitement compléter le cadre Scrum.

En conclusion, l’utilisation du story point est une pratique répandue et particulièrement utilisée avec Scrum puisqu’elle apporte le socle chiffré nécessaire. Devenu commun, le story point semble faire partie du cadre, sauf que le scrum guide n’y fait jamais mention et ce qui apparaît comme un élément facilitant, peut rapidement devenir encombrant et limitant. L’équipe dont il était question dans l’introduction devait évoluer et s’adapter pour faire face à un contexte déséquilibré.

Pratique pour une Scrum qui se construit, relativement facile à enseigner, l’utilisation des story points est rassurante pour tout l’écosystème. Mais, accompagnée par un coach ou son manager agile,  il est important qu’elle soit en capacité de challenger naturellement ses pratiques en toute confiance. Elles doivent être challengées régulièrement, adaptées, voire même délaissées, moyennant les adaptations nécessaires afin de ne pas léser les autres parties prenantes de l’écosystème de l’équipe. Ne parle-t-on pas de lever les contraintes et d’adaptation au changement lorsque l’on pratique l’agilité ? 

Comment enclencher le chrono tout en sécurisant le Time to Market ?

Les projets de R&D ou d’innovations s’appuient de plus en plus sur des outils ou des solutions informatiques pour leur valorisation vers le monde économique. L’objectif de création de valeur et d’activités sur la base de ces travaux, demande une sécurisation des produits et des services issus de ces projets.

Cette phase d’industrialisation peut être ralentie, ou ne pas aboutir, si le produit est trop éloigné des standards informatiques du marché.

Les objectifs que nous poursuivons à travers nos prestations répondent à plusieurs desseins pour augmenter la probabilité de succès en maîtrisant les risques et en diminuant le Time to Market.

En collaborant avec les chercheurs nous leur permettons de se focaliser sur le cœur de leur savoir tout en co-construisant les outils numériques.

Nous poursuivons une vraie ambition, réussir la valorisation rapide des innovations dès les phases de développement. 

« Houston we have a problem » : Pourquoi je n’atteins pas mon marché ?

– Une technologie inadaptée ou obsolète,

– Une sous-évaluation économique du plan d’industrialisation,

– Un ramp up des effectifs et de l’organisation mal maîtrisé,

– Une stratégie marketing et commerciale qui adresse un segment de marché non mature,

– Une mauvaise valorisation de la propriété industrielle,

– Une perte de confiance des investisseurs pour accompagner le passage à l’échelle.

« One, two, One, this is just a test » : Nos préconisations technologiques pour accompagner la réussite du projet

Pour s’assurer de délivrer des solutions facilement interfaçables et intégrables dans l’écosystème technologique du marché, il est nécessaire de travailler sur une optimisation globale, notamment les algorithmes, les IHM et s’assurer de proposer des logiciels robustes et documentés. 

– Adopter une démarche de programmation s’appuyant sur le manifeste du Craftsmanship pour garantir la qualité, la fiabilité et la maintenabilité des applications tout au long de leur cycle de vie.

– Prendre en compte les exigences du Security by Design sur l’architecture et le logiciel proposé, pour limiter les failles et la vulnérabilité de la solution, est un impératif.

– Privilégier un pilotage du projet en co-construction, basé sur les pratiques agiles pour s’assurer, à chaque étape du plan d’industrialisation, de dérisquer rapidement et réorienter la roadmap si besoin.

Une approche 360° du projet est nécessaire pour le passage à l’échelle de la stack et de la direction technique. Elle permet de mettre en place l’organisation de demain et de répondre aux évolutions technologiques.

Qui est concerné ?

Les laboratoires de R&D, les industriels portant ou recevant l’innovation, les start-up souhaitant lever des fonds, sont de potentiels partenaires.

Lorsque les cellules de R&D académiques souhaitent déployer leurs travaux vers le marché (c.-à-d. Early Market), elles peuvent avoir besoin de standardiser et diffuser les outils numériques à une large échelle, notamment au passage sur le “vrai” marché (c.-à-d. Mainstream market).

Les industriels récepteurs des travaux de R&D ont la nécessité de s’assurer qu’en termes d’exploitation la solution est robuste, interfaçable et facilement maintenable.

Exemples de cas ayant bénéficiés de l’accompagnement d’Agaetis

– Développement d’une application pour l’optimisation des conditions de coupe en usinage, pour les portes d’avions basé sur les algorithmes génétiques,

– Consolider et optimiser un algorithme d’optimisation dynamique d’un schéma de réseau de distribution d’énergie issue d’un projet de recherche pour une ELD,

– Optimiser et industrialiser la version prototype d’un jumeau numérique permettant de proposer un dimensionnement optimal de l’hôpital en “lits chargés” (nombres de lits ouverts par service et par semaine).

Adopter une approche Kubernetes First

L’utilisation des containers est un sujet au cœur de l’actualité du monde informatique et de la sécurité ; ils sont de plus en plus utilisés dans les environnements de production. De nombreuses entreprises ont opté pour une solution Containers as a Service (CaaS) pour simplifier et mettre en œuvre leurs exigences d’infrastructure spécifiques pour répondre à leurs enjeux d’innovation et d’agilité. 

Dans le cadre de son offre “Adopter Kubernetes”, Agaetis propose de vous accompagner dans votre transition vers ce système open source dans le but d’automatiser le déploiement, la mise à l’échelle et la gestion de vos applications conteneurisées.

Pierre Pironin, architecte cloud et expert Kubernetes chez Agaetis, répond à toutes les questions que vous pouvez vous poser autour de cette solution.

Pour commencer, quel est l’intérêt des containers pour une infrastructure ?

L’intérêt principal des containers est de fournir une couche d’abstraction entre les applications et l’infrastructure qui les héberge. Ainsi chacun de ces deux écosystèmes peut évoluer à son rythme, sans être dépendant du cycle de vie de l’autre. Par exemple, la montée de version d’une bibliothèque se fait localement au niveau de l’application, sans besoin ni contrainte sur l’infrastructure. 

En quelques mots qu’est-ce que Kubernetes (K8S) et qu’est-ce qui le différencie des autres solutions du marché ?

Les containers seuls ne peuvent garantir le passage à l’échelle dès lors que le SI d’une entreprise devient conséquent. Pour cela, on a besoin d’un orchestrateur de containers qui va venir piloter le cycle de vie de ces containers. Et sur ce point, Kubernetes s’est imposé depuis plusieurs années comme LA solution d’orchestration incontestée. 

Soutenu par l’une des plus importantes communautés open source au monde, il a su rallier ses concurrents à sa cause afin de fournir au monde informatique un standard commun à tous, où les énergies de chacun poussent globalement dans le même sens.

Concrètement, qu’est-ce que Kubernetes apporte à l’organisation d’une infrastructure ?

De par ces capacités de self-healing, de load balancing et de gestion efficace des ressources, Kubernetes apporte naturellement résilience, haute disponibilité et scalabilité aux applications. Ces propriétés sont la clé de succès pour garantir à l’utilisateur final une expérience optimale, une efficience des équipes de développement pour déployer ses applications, ainsi qu’une maîtrise fine des coûts d’infrastructure.

Quels sont les défis à relever pour opérer une transition vers une approche Kubernetes first ?

Les promesses portées par un système tel que Kubernetes ne sont pas neutres en termes de coût, aussi bien d’un point de vue humain que des ressources à déployer. 

Il faut réfléchir dès le début au fait de vouloir internaliser, ou non les compétences, comment déployer Kubernetes, car il existe une infinité de possibilités adaptées à chaque besoin : 

– comment l’intégrer à l’écosystème existant comme par exemple la stack de monitoring et la chaîne de CI/CD ;

– comment élaborer une stratégie de communication pour former une communauté K8S en interne ;

– …

Quelles sont les étapes clés de cette transition vers Kubernetes ? 

Il faut que cette transition vers Kubernetes soit douce, réfléchie et adaptée au besoin. Le fait que Kubernetes soit à la mode et très exposé médiatiquement n’est pas une raison suffisante pour en faire un choix technologique pertinent.

Cette transition doit être une véritable adoption, en partant d’une phase d’étude où l’on se pose les bonnes questions, suivie d’un pilote pour se tester et valider les hypothèses initiales. Une fois l’opportunité démontrée, il s’agira d’atteindre rapidement une masse critique afin d’amortir le “ticket d’entrée” et enfin de pérenniser la plateforme pour l’intégrer pleinement dans le monde Cloud Native.

Comment Agaetis accompagne les organisations désireuses d’adopter la solution Kubernetes ?

Forts de notre expertise et de nos expériences Kubernetes chez nos clients, nous avons décidé, chez Agaetis, de capitaliser ce savoir-faire dans une offre “Adopter Kubernetes” afin  de proposer différents accompagnements aux entreprises se posant la question d’oser Kubernetes ou non.

Cette offre repose sur un accompagnement de bout en bout (Be Ready, Test & Learn, Grow, Enrich) afin d’aider les entreprises à se poser les bonnes questions, mesurer les investissements, les aider à démarrer lorsque Kubernetes s’avère un choix pertinent, pérenniser la plateforme (notamment d’un point de vue sécurité) et bien sûr former les utilisateurs. 

Le tout dans une volonté de co-construire à chaque étape afin de permettre une véritable montée en compétences et une appropriation de la technologie par nos clients.

Risques cyber, le plus dur est devant nous…

Les conséquences de la crise du Covid et du confinement forcé sont pour l’instant peu visibles dans les budgets des DSI. Toutefois une forte crainte de réduction de budget pèse sur les budgets SI pour 2021 avec des conséquences directes sur leur fonctionnement et notamment pour ce qui est lié à la sécurisation des systèmes d’informations ayant vécu une transformation plus ou moins aboutie depuis Mars 2020.

Une gestion de crise à marche forcée

L’un des premiers objectifs lors du confinement a été pour les entreprises de garder une activité en s’adaptant à la contrainte de ne pas être physiquement dans leurs locaux. Si certaines entreprises étaient préparées ou avaient déjà engagé des moyens d’accès au SI depuis l’extérieur, d’autres ont dû faire face à un besoin d’accès aux ressources informatiques de l’entreprise depuis des lieux inhabituels.

Elles ont été confrontées à gérer rapidement différentes problématiques :

– ouverture du SI à l’ensemble de l’entreprise,

– adaptation des droits et privilèges,

– données partagées et accessibles sur des équipements personnels,

– partage des informations avec des sous-traitants et tiers.

Des solutions plus ou moins adaptées

Peu préparées à gérer cette crise, les entreprises ont dû répondre dans l’urgence avec des solutions techniques et dépenses engagées sans réflexion. L’objectif principal fut de répondre au besoin d’accès de l’information afin de ne pas ralentir ou bloquer l’activité de l’entreprise.  Les exigences de sécurité initiales non pas toujours été respectées, voire contournées, pour laisser place à des solutions non qualifiées, avec des exigences de sécurité faible, quand certains SI se voyaient même déjà infiltrés par des pirates.

Exemple Zoom: L’application de visioconférence Zoom s’excuse pour des failles informatiques

Toutes les entreprises n’ont pas le même niveau de maturité en cyber sécurité sur l’ouverture et l’accès de son SI vers l’extérieur.

Les habitudes prises lors de la phase de gestion de crise seront difficiles à changer, de même pour les retours arrières qui seront eux presque impossibles. Il sera alors nécessaire d’intégrer ses nouvelles expositions vers le monde extérieur dans son plan de défense du SI. Pour les entreprises ayant déjà engagées des processus de gestion du SI (ISO 27001) il sera alors facile d’intégrer ces nouveaux usages et services. Pour les autres il est vivement conseillé d’établir un audit précis du SI, sa sécurité et de mesurer le niveau de risque sur ces nouvelles habitudes.

Pour réduire les risques, les investissements seront nécessaires, car les nouveaux usages et nouveaux services ont déplacé les enjeux de sécurité.

Les enjeux d’une sécurité autour du zéro trust seront accélérés par les besoins d’accès aux services et du partage de l’information. Un nouveau paradigme apparaît avec le contrôle des équipements, des habitudes et des services en périphérie du SI. Les investissements en sécurité réalisés ne sont ou ne seront pas capables de garantir une vision à 360° du niveau de sécurité de l’entreprise. 

La crise sanitaire a permis de gagner entre 2 et 3 ans en maturité digitale dans certains secteurs. Pour autant les exigences de sécurité et la couverture des risques ne se sont pas adaptées à la même vitesse que les métiers. 

Les nouveaux enjeux seront focalisés sur la protection du poste client et sa conformité, de l’analyse comportementale et le renforcement du principe du moindre privilège. De nouvelles sources de journaux seront générées, liées aux applicatifs et équipements de sécurité pour prendre en compte la sécurité périphérique. Cela implique une gestion centralisée de ces événements avec des objectifs de détection des menaces et comportements anormaux.

Des enjeux vers l’automatisation

Le monde de la sécurité devra apprendre vite et s’adapter à ses nouveaux besoins, hébergés dans des infrastructures hybrides voir collaboratives. Le niveau de confiance donné aux utilisateurs et à leurs pratiques sera un élément clé dans la réussite de sécurisation du SI.

Notre réponse : réduire les coûts en apportant des solutions alternatives.

L’empilement de briques de sécurité n’est pas gage d’une sécurité maîtrisée à 100 %. Aujourd’hui il est difficile de maîtriser pleinement les solutions techniques déployées sur son infrastructure qui sont souvent configurées par défaut ou avec des templates non adaptés aux enjeux et actifs à protéger dans les entreprises. C’est pourquoi nous avons décrit une approche à base de solutions open source pour permettre au TPE, PME, ETI de pouvoir accéder à des solutions technologiques pour véritablement établir un plan de défense de leur SI robuste et adapté au contexte des entreprises. 

Nous vous invitons à prendre connaissance de notre vision d’un plan de défense aux meilleurs coûts.

Nous l’avons baptisé plan Marshall pour permettre une gestion des cyber risques accessibles à tous ! 

Progressive Web App (PWA) : explications et cas pratique

Chez Agaetis nous pensons que les PWA sont une alternative performante à une partie des applications natives. Ce sont des programmes que l’on peut installer sur un ordinateur, un smartphone, aussi appelés client lourd (ex : Word ou Whatsapp). 

Pourquoi une alternative ? Elles ne demandent pas de processus d’installation, de mises à jour manuelles et fonctionnent sur tous les appareils quel que soit le système d’exploitation.  

Notre site web est désormais une « Progressive web App » (PWA), un cas concret parfait pour expliquer la technique et détailler les avantages et inconvénients.

Qu’est-ce qu’une Progressive Web App ?

Le terme PWA désigne un concept ou une norme d’applications web, poussé par Google. À l’origine, la légende dit que Steve Jobs est le premier à en avoir eu l’idée peu après l’apparition de l’IPhone en 2007. Mais c’est bien un concept poussé par Google de nos jours avant tout, à travers Chrome (en réalité Chromium et tous ses dérivés évidemment). Le concept est encore très récent mais se développe de plus en plus, Firefox et Safari implémentent d’ailleurs les mêmes fonctionnalités pour suivre.

Des PWA de sites connus ? Twitter, Spotify, Instagram ou encore Pinterest. Chacun de ces sites a communiqué une amélioration des taux de conversion suite à l’implémentation. Pourquoi ? Parce qu’une PWA c’est avant tout un cache sur l’appareil de l’utilisateur, il y a donc un gain de performances. Mais c’est aussi bien plus que cela !

Une PWA c’est un site web installable qui peut fonctionner en hors ligne

Concrètement, on installe la PWA sur un PC ou un smartphone et elle peut fonctionner hors ligne. Préalablement il faut accéder au site pour qu’il soit mis en cache, ce n’est pas magique !

N’étant pas réellement installée, la PWA prend moins d’espace pour son fonctionnement et s’exécute plus rapidement. On ajoute une simple icône qui permet de pointer vers la web app. Elle donne l’impression d’utiliser une application native alors qu’elle fonctionne à travers le navigateur. La PWA n’a pas besoin d’être téléchargée ou maintenue à jour.

Un site qui implémente la norme PWA a l’autre particularité de pouvoir accéder aux commandes « natives » de nos systèmes d’exploitation, comme la caméra sur smartphone, le bluetooth, ou encore les notifications. Il est nécessaire de donner l’autorisation au préalable tout comme une application native.
N’importe quel site ou application Web peut être converti en PWA : un WordPress, une application React ou encore un site PHP « old school » (MVC). Cet ajout est plus utile pour une application web que l’on souhaite rendre accessible sur mobile, plutôt que pour un site vitrine. On note tout de même un gain de performance important sur les pages déjà parcourues, plus la possibilité de pouvoir « sauvegarder » un article ou une offre pour y accéder en hors ligne (pour le lire dans le métro par exemple).

Exemple concret avec le site d’Agaetis

Pour mieux comprendre voici un exemple concret avec ce site, qui vient tout juste de devenir une PWA.

Première connexion sur le site : ce qu’il se passe dans les coulisses

La première fois que vous accédez au site, il est chargé normalement comme tout autre site Web. Cependant à la fin de ce chargement initial, un fichier spécial appelé « service-worker.js » va être téléchargé et activé dans votre navigateur. C’est ce fichier qui opère la « magie » pour que les PWA soient possibles. 

Si vous rafraîchissez la page, votre navigateur va re-télécharger tous les fichiers qui la composent depuis notre serveur. Cette fois-ci le service-worker enregistrera la plupart de ces fichiers dans votre navigateur. Nous gardons toujours la main sur la configuration et ce qu’il doit enregistrer de façon transparente et invisible pour vous. 

C’est là qu’il va devenir utile, si vous rafraîchissez la page encore une fois, les fichiers du site seront servis depuis le service-worker et non plus depuis le serveur. Vous permettant ainsi de gagner toute la latence induite par une requête sur Internet. Pour un seul fichier le résultat peut sembler maigre, mais si votre navigateur a besoin de 10 fichiers interdépendants, ou plus comme ici, vous gagnez rapidement 1 seconde sur le chargement de la page ! C’est à partir de là que le mode hors ligne est rendu possible.

À noter qu’en parallèle, le service-worker va effectuer les vraies requêtes sur notre serveur pour récupérer d’éventuels changements de contenu et au cas échéant, mettre à jour son cache. Vous aurez ainsi accès aux nouveautés au prochain rafraîchissement (ou lorsque vous ré-accéderez aux pages correspondantes). Si le site en lui-même est modifié il vous affichera un message vous informant qu’une mise à jour est disponible.

Chaque page que vous parcourez au préalable est mise en cache et accessible en hors ligne

Maintenant que les fichiers sont mis en cache, si vous perdez la connexion, la page sera toujours accessible même si vous la rafraîchissez ou si vous avez fermé l’onglet et le rouvrez. Vous pouvez essayer vous-même en déconnectant volontairement votre ordinateur/smartphone (mode avion par exemple). Si vous avez parcouru plusieurs pages du site ainsi que la page d’accueil, vous pourrez faire de même hors connexion, y compris en ayant éteint votre appareil entre temps !

Vous pouvez utiliser cette fonctionnalité à votre avantage en parcourant les pages ou articles que vous souhaitez lire plus tard. Chargez juste leur page et ils seront accessibles en hors ligne. 

Le cache a néanmoins une limite de taille : s’il manque une page c’est que vous en avez parcouru beaucoup et que celle-ci a été écrasée. Il y a également une limite de temps de 30 jours, au-delà les enregistrements sont supprimés.

N’hésitez pas à « l’installer » sur votre appareil !

Les PWA sont donc installables, c’est ce qui les distingue des sites utilisant les service-worker seuls. Sur Chrome et ses dérivés sur PC (Opéra, Brave, Edge etc), une petite icône est présente à cet effet, à droite de la barre d’url. Il suffit de cliquer dessus pour voir le site avec une icône séparée sur la barre des tâches :

Ici, le petit plus à côté de l’étoile.
On obtient une fenêtre avec le site, vous pouvez l’ouvrir depuis Windows comme n’importe quelle application (depuis la barre de recherche).

Pour la désinstaller il suffit d’aller dans les paramètres de cette fenêtre, vous ne pouvez pas le faire depuis Windows (pour l’instant en tout cas).

Ici, en haut à droite de la fenêtre.

Sur mobile ou d’autres navigateurs comme Firefox, cherchez dans le menu quelque chose comme « Ajouter à l’écran d’accueil » ou « installer l’application » et vous aurez le même rendu.

Pourquoi les « Progressives Web Apps » sont probablement une bonne alternative aux applications natives ?

Cette partie est plus subjective, nous pensons que les PWA ont beaucoup de potentiel pour simplifier le développement d’applications multiplateformes. Voici notre point de vue sur les PWA face aux clients lourds sous la forme avantages/inconvénients.

Avantages des PWA face aux applications natives

– Le défaut principal des applications natives : elles demandent à être téléchargées et installées. Or la capacité de stockage peut être rapidement limitée, surtout sur smartphone… les Messengers qui font 500Mo, non merci ! Le problème ne se pose pas avec les PWA bien conçues. On parle d’une réduction de taille d’un rapport de 1 à 20 ou 25 en moyenne.

– De la même manière les clients lourds demandent à être mis à jour manuellement (et jusqu’à peu sur Android il était nécessaire de re-télécharger l’entièreté de l’application à chaque fois), c’est laborieux et ça consomme de la data, encore une fois gênant, surtout sur mobile ! Vous l’aurez compris les PWA sont majoritairement orientées mobile first. En parallèle ce système de mise à jour peut gêner les développements, les utilisateurs choisissant de garder une ancienne version (problématiques de rétrocompatibilité).

– Les applications natives posent de nombreux problèmes pour les développeurs et/ou les entreprises qui les créent, puisqu’il faut quasiment les développer en autant de fois qu’il y a de systèmes d’exploitation (Android, iOS, Windows, Mac, ChromeOS etc). C’est ici le gros avantage du Web sur le reste, au niveau technique, d’autant plus que la tendance est au remplacement justement à cause de ces contraintes économiques.

Quelques inconvénients des PWA

– Les PWA peuvent fonctionner en hors ligne mais restent plutôt orientées sur un mode connecté (cette innovation vient du Web, ce n’est pas pour rien). Il faut s’y être connecté au moins une fois pour que le mode hors-ligne fonctionne. Cela peut être une limite à l’installation depuis un « store », mais il faut également être connecté pour télécharger une application donc en soi rien de vraiment problématique. En revanche, d’un point de vue développeur il faut posséder un serveur pour la rendre accessible, alors qu’une application mobile n’a pas cette contrainte.

– Elles ne sont pas encore entièrement implémentées comme il faut d’un point de vue des API natives (les accès hardware), surtout sur les navigateurs autres que Chrome et ses dérivés. Pour l’instant, il est encore un peu risqué pour une entreprise de se lancer sur une PWA en souhaitant toutes les fonctionnalités d’une application native. Mais dans un futur assez proche cela ne devrait plus être le cas et le problème ne se pose que si l’on souhaite faire appel à des fonctionnalités spécifiques (téléphonie, NFC notamment).

Il faut garder en tête que cette technologie est encore en partie expérimentale. Dans notre cas, il nous a fallu participer à la librairie next-pwa pour l’implémenter.

– Côté performances, il est évident que rien ne vaut une application native. Mais rares sont les cas d’usage sur mobile qui requièrent autant de performances au point que ça pose un réel problème.

En conclusion

Depuis quelques années, on a constaté l’apparition d’outils éditeurs de texte en ligne, à travers Google drive d’abord, puis avec la suite Office, elle aussi entièrement disponible en ligne (à travers Office 365). En plus d’être accessibles très rapidement sans demander d’installation spécifique, ils sont gratuits et déjà en train de tuer la suite office classique. Chez Agaetis tout passe maintenant par ces outils sur le Web ! Signe de plus que les PWA sont des concurrents sérieux aux applications natives, notamment grâce au fonctionnement hors-ligne, maintenant possible.

Dernier argument en leur faveur, depuis mai 2019 environ, il est possible d’ajouter une PWA sur le Google Store après quelques manipulations assez simples, d’ailleurs Google priorise les PWA sur ChromeOS face aux applications Android depuis quelque temps. De même sur l’Apple Store (après des manipulations un peu plus complexes) et c’est sur le Store Microsoft depuis quelque temps déjà (pour Windows 10). Et d’ailleurs depuis le début de cette année, Bing, le moteur de recherche de Microsoft, indexe tout seul les PWA pour pouvoir les ajouter automatiquement dans leur store dans un futur proche. Que demander de plus ?

Alors qu’en pensez-vous ? N’hésitez pas à nous donner votre avis !

Investisseurs, entrepreneurs, comment sécuriser votre levée de fonds ?

Investir dans un projet innovant nécessite d’être bien accompagné, notamment dans cette période de crise, de doutes et d’incertitudes.

Chaque investisseur a besoin d’être éclairé et conforté quant à la viabilité de ses décisions. Notre offre de sécurisation des investissements pour les projets novateurs permettra de vous sécuriser dans votre prise de position.

Nicolas Roux, Directeur général, partage sa vision d’une démarche vous permettant de prendre les bonnes décisions et de pérenniser vos choix face au marché actuel.

En quelques mots, qu’est-ce que l’offre de “sécurisation des investissements” proposée par Agaetis ? 

Les sciences informatiques (technologies, data, IA, IoT, …) sont au cœur des projets innovants, tous secteurs confondus. Ce sont des activités complexes, tant sur l’aspect technique que humain, soumises à des évolutions très rapides et qui représentent une part importante des capitaux engagés.

Notre offre a été spécialement créée pour aider les investisseurs et les porteurs de projets au moment de la levée de fonds. Elle permet d’évaluer les risques, les opportunités, d’établir le plan d’amélioration et de mettre en œuvre nos préconisations pour accélérer le “time to market”.

A qui s’adresse cette offre ? 

Cette offre s’adresse aux différentes parties prenantes lors d’une levée de fonds : porteurs de projets, leveurs de fonds ou investisseurs.

Les porteurs de projets et les leveurs de fonds ont besoin de se préparer au “due diligence” (ndlr la due diligence est une vérification pré-transaction), les investisseurs ont également besoin d’évaluer la pertinence des technologies choisies avec le plan d’investissement et de suivre chaque phase du projet.

Quels sont les objectifs de cette offre ? 

L’objectif est de réunir les conditions de réussite du projet sur le volet technologique en répondant aux questions suivantes :

– Est-ce que la technologie permet de créer un avantage concurrentiel ?

– Est-ce que des technologies alternatives permettraient d’accélérer le time to market ?

– Est-ce que les investissements et les besoins en R&D ont bien été évalués ?

– Est-ce que les opportunités et les risques ont bien été identifiés ?

– Est-ce que les niveaux de maturité des technologies sont compatibles avec les objectifs du projet ?

– Est-ce que l’équipe est organisée pour assurer le déploiement et maintenir efficacement la solution ?

Qu’est-ce que Agaetis apporte de nouveau dans ce domaine ? 

L’offre se différencie sur 2 axes majeurs. Le premier est une approche à 360° où l’on challenge les volets technologique, organisationnel et méthodologique du projet ainsi que les bonnes pratiques de développement

Le deuxième axe est orienté sur la stratégie du projet; les contextes de marché et de concurrence, la gouvernance, la gestion long terme des compétences et le coaching.

Nous sommes impliqués fréquemment sur des projets associant les laboratoires de recherche publique et les sociétés privées. Les profils de nos collaborateurs sont à l’image des exigences de l’innovation, créatif et pragmatique. Nous baignons dans un écosystème de R&D stimulant.

Quels sont les périmètres de l’analyse de risques ? 

Notre étude porte sur les thèmes suivants :

– La valeur de l’innovation technologique et la pression concurrentielle,

– Les choix technologiques et leur maturité, la robustesse et l’évolutivité de la solution, la capacité à passer à l’échelle, l’évaluation du coût pour industrialiser la solution,

– Le respect des exigences en cyber-sécurité,

– Les besoins en R&D pour aller jusqu’à la mise sur le marché,

– La gestion des compétences et la stratégie de sous-traitance / partenariat,

– L’organisation de l’équipe impliquée sur le projet,

– La gestion du portefeuille projet, les méthodologies et les bonnes pratiques.

Quelles sont les pièges du développement d’un projet d’innovation numérique ? 

Ils sont nombreux, le premier étant de tomber amoureux de son projet ! Pour limiter ces risques, il faut confronter la solution au terrain. Des méthodes comme le lean-startup ou encore le service design aident à adopter de bons réflexes.

On observe également une sous-estimation des besoins en développement pour aller jusqu’à la mise sur le marché : l’IT comme support aux activités internes, la sécurité, l’interopérabilité, la robustesse, la dette technique … et parfois, certaines solutions ne peuvent pas passer du mode prototype à une solution industrielle sans une refonte complète.

La constitution de l’équipe technique est un facteur de réussite important, il faut évaluer sa capacité à grossir rapidement, à gérer le projet jusqu’à son terme.

Pour terminer, pourquoi faire appel à Agaetis pour accompagner les investisseurs ? 

Agaetis a une double culture : celle du conseil pour accompagner à la réalisation et une culture de faiseur où nous intervenons nous mêmes dans le développement. Nous avons une équipe pluridisciplinaire en termes d’expertises et d’expériences. Agaetis s’est construit en associant des expertises issues de différents horizons : start-up, PME, académique, grands groupes, ESN et cabinets de conseil. 

Nous partageons tous la même volonté de contribuer aux succès des innovations qui constitueront le monde de demain.

L’ENE et Agaetis vous accompagnent dans vos projets !

Vous êtes un industriel d’Auvergne Rhône Alpes et vous souhaitez être accompagné dans vos projets de modernisation et de numérisation de votre production ?

Agaetis a été référencé pour la Région Auvergne Rhône Alpes afin de vous accompagner dans le développement de solutions digitales autour des IoT, systèmes connectés, mais aussi, dans la réalisation de la cartographie de votre SI et la valorisation de vos données de production.

Ce référencement vous permet de bénéficier d’un co-financement lié aux coûts des prestations de conseil, des preuves de concepts et d’études, à hauteur de 50 % pour un accompagnement plafonné à 32 000 € par entreprise (subvention plafonnée à 16 000 €).

Les objectifs de nos interventions :

– Améliorer le pilotage, la fiabilité et la performance globale de la production grâce à l’exploitation des données process et procédés

– Anticiper les dysfonctionnements et les pannes.

– Baisser les couts de non-qualité et améliorer le ROI.

– Sécuriser vos accès et les informations de votre entreprise.

La cybersécurité et les établissements de santé

Les questions autour de la sécurité des systèmes d’information ont toujours été importantes mais depuis la crise sanitaire du COVID-19, elles prennent une tout autre dimension. 

Les établissements de santé sont en première ligne face aux cybers attaques. Mais pour quelles raisons et quelles sont les solutions qu’ils peuvent mettre en place pour assurer la pérennité de leur SI et de leur activité ? Cédric Lamouche, consultant en cyber défense chez Agaetis répond aux questions que vous pouvez vous poser.

Pour quelles raisons les établissements de santé se retrouvent-ils obligés de faire évoluer leur SI ? Quels sont les buts de toutes ces évolutions ? 

Il y a plusieurs raisons à une évolution du SI, les nouvelles réglementations sur la protection des données, la sécurisation des données de santé, des usages de plus en plus informatisés, des nouvelles technologies intégrées dans le traitement et la prise en charge des patients. Le SI doit perpétuellement évoluer afin de s’assurer d’être en capacité de traiter les nouvelles informations tout en gardant des pré requis au niveau sécurité.

Quel est le rôle du SI pour un établissement de santé ? 

Le SI doit permettre d’assurer l’activité de l’établissement pour cela il doit répondre à des exigences de sécurité, de disponibilité et de traçabilité.

Pourquoi les “cyber malveillants” attaquent-ils les SI des établissements de santé ? 

Les SI de santé sont composés de vastes infrastructures avec de multiples accès où la sécurité est un réel enjeu mais avec un périmètre difficile à couvrir. Ces attaques ont souvent un but lucratif et sont loin des préoccupations éthique. 

La crise sanitaire du Covid a forcé certaines structures à ouvrir leur SI pour permettre une continuité d’activité. Elles se sont exposées au monde extérieur avec une politique de sécurité non adaptée pour se prémunir de cyber attaque. Ces structures deviennent alors des cibles fragiles et parfaites pour mener ce genre d’actions en vue de compromettre les infrastructures et de rendre inopérant le SI.

Ces deux derniers mois, une cyberattaque visant les systèmes informatiques du secteur de la santé a eu lieu tous les trois jours dans le monde.

Europe 1 (2020, 26 mai).

Une fois le système attaqué, sur quoi l’établissement de santé peut-il compter pour s’en sortir ? 

Une politique de sauvegarde est essentielle pour retrouver rapidement son SI. Cette politique implique une prise en charge complète du SI avec des exigences de stockage afin d’assurer la disponibilité du support de sauvegarde et de son exploitabilité.

Quel est le rôle d’une PSSI (Politique de Sécurité des Systèmes d’Information) et comment se compose-t-elle ? 

Une PSSI régit les exigences de sécurité pour le SI. Elle doit couvrir l’ensemble du SI et définir des mesures de sécurité pour protéger les éléments, les actifs les plus importants pour l’établissement. Elle doit être unique et correspondre aux attentes en sécurité de l’établissement, elle est construite autour d’une analyse des risques qui définit les exigences à mettre en oeuvre pour assurer une gestion des cyber risques.

Quels sont les autres solutions à mettre en place pour protéger son SI ? 

Une fois la PSSI définie avec des exigences formulées il est nécessaire de mettre en place des solutions techniques pour couvrir les exigences et de pouvoir mesurer les niveaux de sécurité suite aux incidents et changements sur le SI.

Un plan de défense est aujourd’hui nécessaire pour assurer un bon niveau de résilience. Il doit être capable de répondre aux besoins de surveillance, de détections et de gestion des incidents. Il se construit pas à pas en fonction des priorités définies dans l’analyse de risques du SI.

Aujourd’hui, Agaetis accompagne ses clients dans une stratégie de défense de son SI. Nous nous appuyons sur des méthodologies reconnues et des approches de défense basées sur des scénarios d’attaques réelles. Notre savoir faire s’adapte aussi bien aux petites, qu’aux grandes structures en prenant en compte différents objectifs :  financiers, humains, organisationnels. 

Agaetis à Volcamp !

La participation d’Agaetis à Volcamp se précise, on espère que vous avez aussi hâte que nous et que vous avez bien noté les dates ! Au cas où, voici un petit rappel : rendez-vous le 15 et 16 Octobre au Hall 32 à Clermont-Ferrand pour rencontrer des passionnés de la tech et échanger avec eux dans le cadre de différents types d’interventions : Rex, Conf, Workshop, Lightning. 

Parmi les 191 propositions soumises au CFP ce sont 44 talks qui ont été sélectionnés dont deux sujets de Agaetis ! 🎉

Nous sommes très fiers de pouvoir intervenir lors de cette toute première édition ! Car en plus de nous retrouver sur notre stand, plusieurs membres de l’équipe vont pouvoir vous présenter des sujets qui nous tiennent à coeur via deux formats différents. 

Voici donc en quelques lignes les sujets de leurs interventions (juste un petit aperçu, on vous garde quelques surprises 😉).

Un premier sujet porté par François Travais, accompagné de Franck Marchand, deux de nos architectes, aura pour sujet un retour d’expérience sur ce qu’ils ont appris du CQRS au travers de différents projets et expérimentations : quand et pourquoi implémenter une saga ; comment implémenter CQRS/ES avec Kafka et en quoi le CQRS favorise le KISS (Keep It Simple Stupid).

Force est de constater que le nombre de projets impliquant Kafka et de l’event sourcing grandit de façon exponentielle dans les entreprises sous la pression de la data science, du besoin d’audit et de l’agilité. Il est alors souvent difficile de s’y retrouver dans la multiplication des événements supportés par des microservices et de comprendre les enchaînements entre ces événements. CQRS à la rescousse ! 

Dans un second temps Blandine Rondel, développeuse Front chez Agaetis, interviendra lors d’un lightning talk, le sujet : le choix de GatsbyJS, une solution open-source, plus simple, plus légère, plus rapide et plus sécurisée ; idéale pour créer un site moderne ! 

Nous sommes impatients de pouvoir échanger avec vous durant ces deux jours et de faire rayonner nos savoirs-faire. On vous attend donc très nombreux, ça va être volcanique ! 🌋😉

Pour réserver vos places et consulter le programme, rendez-vous sur le site de l’événement !

Statisticien et data scientist, deux métiers à ne pas confondre

La synonymie n’existe pas, et c’est peut-être bien là l’information fondamentale de cet article. Nous nous construisons avec l’idée que deux mots distincts peuvent avoir le même sens. Nous sommes régulièrement encouragés à éviter les répétitions par tous les moyens, quitte à utiliser un mot qui n’exprime pas tout à fait notre pensée. Nombreux sont pourtant les universitaires à répéter inlassablement que la langue française est riche et complexe, et qu’il serait absurde de créer deux mots différents ayant exactement le même sens.

Cet article a pour objectif d’expliquer pourquoi les métiers de data scientist et de statisticien ne peuvent pas être confondus ou considérés comme identiques. On parle donc de comparer un mot de la langue française et… un anglicisme. Le problème avec cette dernière catégorie, c’est qu’on se croit vite tout permis. Quand on sait en plus qu’il s’agit d’un anglicisme dont le sens est en constante évolution, on a envie de jeter le stylo (ou le clavier) et d’abandonner face à la difficulté de la tâche. Il est pourtant primordial de comprendre pourquoi le terme de data scientist a émergé et en quoi ce métier diffère des autres métiers existants, en particulier celui de statisticien.

Nous ne chercherons pas ici à comparer le champ des statistiques avec celui de la data science. Cette précision est importante car la data science n’est pas composée exclusivement de data scientists. On y trouve pêle-mêle des data engineers, des machine learning engineers, des data analysts, des products owners et même des statisticiens. C’est à s’y perdre n’est-ce pas ? On ne cherche pas non plus à comparer des outils de machine learning avec des outils statistiques. Non, il s’agit bien de traiter des différences entre deux métiers.

La première des différences est évidente : l’un de ces métiers est beaucoup plus ancien que l’autre. Les premiers statisticiens (1) sont apparus durant le XVIIIème siècle (Thomas Bayes pour n’en citer qu’un), avec une réelle émergence de la discipline le siècle suivant. Les termes de data science et data scientist ne sont utilisés que beaucoup plus tardivement à la fin du XXème siècle, en 1987 (2).

Une autre différence majeure est que les compétences de recherche sont indispensables pour exercer le métier de data scientist. La première raison à cela est la diversité et la constante augmentation du nombre d’outils. Un data scientist doit être en perpétuelle montée en compétences tout en maintenant une routine de veille sur toutes les innovations du domaine. Cela est en tout point comparable à la capacité d’un chercheur à effectuer l’état de l’art de son champ de recherche à tout moment. La seconde raison justifiant la nécessité de ces compétences est la structuration même des missions des data scientists. Ces dernières peuvent démarrer à un stade où le bénéficiaire n’a pas encore défini précisément son besoin ou que sa formulation n’est pas en adéquation avec les outils disponibles. Dire : “J’ai besoin de simuler l’ensemble de la société humaine à la maille de l’être humain” n’est pas un besoin en adéquation avec les possibilités de notre époque. C’est au data scientist d’accompagner ce dernier pour identifier les progressions possibles à l’aide des différentes sources de données voire parfois d’identifier de nouvelles sources de données que l’interlocuteur n’avait pas identifiées. Tout ce travail préliminaire est par nature absent du métier de statisticien dont le travail est d’appliquer des outils de statistiques à un problème cadré et bien défini.

Les outils du statisticien – le logiciel R étant l’un des plus connus – n’en restent pas moins inclus dans ceux du data scientist, qui doit par conséquent avoir des compétences en statistiques. La question qui vient immédiatement est celle de la nature des autres outils du data scientist. Ces derniers n’émergent pas directement du champ des statistiques mais de la théorie de l’apprentissage statistique. Vous l’aurez compris, ce sont ceux que nous regroupons habituellement dans le champ du machine learning. À la différence des outils du statisticien, les outils de machine learning ont pour objectif d’entraîner un algorithme pour prédire de futurs résultats (3), sans nécessairement que les étapes de calcul soient interprétables. Cette approche ayant été développée conjointement avec l’augmentation de la puissance de calcul informatique, aucun de ces outils ne peut être utilisé autrement qu’avec un ordinateur.

Outils statistiquesOutils de machine learning
Non prédictif (inférence statistique)Prédictif
Étapes lisiblesÉtapes pas nécessairement lisibles
Lisse les données du passéÉchantillons train/test (+cross validation)
Utilisation de l’informatique optionnelUtilisation de l’informatique indispensable

Une dernière grande différence entre le métier de data scientist et celui de statisticien est leur caractère pluridisciplinaire, beaucoup plus développé dans le premier cas que dans le second. Il est en effet requis pour un data scientist d’avoir une bonne connaissance d’un ou plusieurs champs disciplinaires scientifiques (physique, chimie, biologie…). Il est même de plus en plus fréquent d’étendre cette recherche de pluridisciplinarité au-delà des sciences dites “dures”, notamment du fait de l’émergence des systèmes complexes ou encore de l’éconophysique, pour n’en citer que deux. C’est d’ailleurs cette différence qui motive les entreprises à recruter des data scientists dans des domaines plus variés que le simple domaine des mathématiques ou de l’informatique.

Nous avons par cet article voulu évoquer brièvement les différences les plus importantes entre les deux métiers. Cela ne nous a pas empêché pour autant de faire ressortir les points communs qui les relient et de mettre en valeur le fait que le métier de data scientist ne pourrait exister sans l’émergence quelques siècles plus tôt du domaine des statistiques ou plus récemment de la forte augmentation de la puissance de calcul.

Gardons également à l’esprit que la Data Science tout entière est en perpétuelle évolution et qu’aucun consensus général n’existe sur sa définition. La réponse sera en effet différente que vous vous placiez dans un grand groupe ou une petite start up ou bien encore que vous vous attachiez plus à la sémantique qu’aux considérations des diverses personnes autour de vous.

(1) Bien que l’on pourrait dater la première apparition des statistiques à l’époque des mathématiques précolombiennes, nous n’évoquerons ici que les mathématiques modernes (qui correspond au réel avènement du champ des statistiques mathématiques).

(2) https://wordminer.org/wp-content/uploads/2014/04/Data-Science-and-Its-Applications-Preface-Academic-Press-1995.pdf

(3)  Il s’agit ici d’un constat global. Il existe en effet des algorithmes à la frontière entre statistique et machine learning, comme les algorithmes de clustering.

Volcamp is coming !

La planète Agaetis bouillonne d’excitation à l’annonce de la future conférence tech de Clermont-Ferrand. Volcamp est là ! 🎉 Enfin un évènement ambitieux qui permettra aux techs auvergnats de montrer de quoi ils sont capables. L’objectif est de créer une synergie entre les acteurs IT du bassin clermontois tout en faisant la promotion des savoirs-faire technologique et de la beauté du patrimoine local.

« Ici à Clermont, on sait aussi parler de la tech et on a de beaux projets pour le démontrer. »

Chez Agaetis, nous avons tous hâte d’y participer et de démontrer cette passion de la technologie qui nous anime au quotidien.

Les 15 et 16 Octobre prochain au Hall 32 de Clermont-Ferrand, se tiendra la première édition de Volcamp qu’il ne faudra manquer sous aucun prétexte. Marquez le dès à présent dans votre agenda ! Ce sera une formidable opportunité de rencontrer des échauffés de la tech et de parler des derniers frameworks à la mode, des nouveautés Big Data et IA et de ce qui se fait de mieux en terme d’architecture, d’orchestration et de sécurité.

La conférence accueillera une trentaine de speakers dont des têtes d’affiche nationales, il y aura également de la place pour de toutes nouvelles pépites.

Agaetis ne pouvait pas passer à côté de l’occasion et s’est donc engagée en tant que sponsor de l’événement et rejoint ainsi un lineup impressionnant d’entreprises, fleurons du savoir-faire auvergnat. Vous pourrez ainsi venir nous rencontrer sur notre stand.

Et pour l’organisation d’un tel évènement, nous pouvons compter sur une toute nouvelle équipe de choc : l’association “Geek & Terroir”. Une bande de passionnés dont plusieurs membres de Agaetis font partie. Merci à vous tous (un peu en avance) pour votre engagement et votre énergie. Ça va être volcanique 😉🌋

Le programme des deux jours est disponible sur le site de l’évènement !

Agaetis au Jam des Volcans


Du 25 au 27 janvier 2019 a eu lieu la première édition clermontoise du Global Game Jam, événement planétaire décliné chaque année en plus de 800 lieux à travers le monde. Le principe ? Sur un week-end, les concurrents doivent créer un jeu vidéo. Avec toutes sortes d’outils, de profils et de compétences, chaque équipe fait bouillonner ses idées, imagine, conçoit et développe. Les idées fusent, les jeux prennent forme.
Il faut imaginer une grande réunion à l’ONU. Sur l’écran qui fait face à la salle, l’image de l’orateur est coupée par celle d’un extraterrestre en tenue de chantier. Il annonce que la planète doit être évacuée sur le champ : elle sera bientôt détruite pour faire passer une autoroute intergalactique ! Un général apparaît sur le même écran et montre des vidéos en direct d’objets volants, plutôt mignons, mais fonçant sur la Terre. Dans l’assemblée sidérée, une personne de l’assistance s’écrie : « il faut protéger notre chez nous, déployez le S4, le Super Secret Space Shield ! »
Voici comment démarre le scénario écrit par l’équipe d’Agaetis pour le Game Jam 2019, inspiré de H2G2, le Guide du voyageur galactique. Cette année, l’événement a rassemblé une soixantaine de participants répartis en une dizaine d’équipes. Tous, à Clermont comme ailleurs, doivent créer un jeu autour du thème What Home means to you. Partenaire de la Jam des Volcans, Agaetis a constitué son équipe naturellement, en fonction des gens qui souhaitaient participer. Elle comprend Alexandre Fiale, Arnaud Ribeyrotte, Julien Usson et Simon Dujardin, tous développeurs full stack, ainsi que Bertrand Pelletier, data scientist, et Pierrick Revol, coordinateur.

Baptême du feu
Tous sont passionnés de jeux vidéos, mais aucun ne s’était vraiment frotté à la création, sauf Bertrand qui travaille sur des projets personnels. « J’ai toujours souhaité mélanger jeux vidéos et data science. En arrivant chez Agaetis, je me suis rendu compte qu’ici, il y a tous les talents techniques pour faire un jeu. Le jeu vidéo c’est un problème qui comprend des problèmes de codes, de graphisme, de scénario, de musique, de cohésion globale… L’idée était de voir ce qu’on pouvait faire en deux jours sur un sujet qu’on ne maîtrisait pas. »
Si Agaetis a participé, c’est avant tout pour la qualité du challenge proposé par le Game Jam. « On est des joueurs acharnés, des codeurs et des techniciens » ajoute Pierrick. « Mais on a toujours besoin de monter en compétence, même sur ce qui n’est pas forcément dans nos coeurs de métiers. Notre travail chez Agaetis consiste en partie à restituer ce que disent des données. Et typiquement, un jeu vidéo, c’est de la visualisation d’informations. On s’aperçoit qu’on doit aller chercher cette capacité dans les moteurs graphiques, et de plus en plus, ces technologies entrent dans nos métiers. »
Outre le challenge de créer un jeu vidéo, l’idée était aussi de perfectionner le travail en équipe. Mieux connaître les autres a été la motivation première d’Alexandre, « faire autre chose avec les collègues, passer du bon temps sur un projet commun. »

Vendredi soir
Le week-end se déroule à l’ISIMA d’Aubière. Ambiance Hackathon, tablées couvertes d’ordinateurs, de câbles, de post-it et de tasses à café, avec baby-foot et bien sûr, buffet généreux pour motiver les troupes. Le Game Jam des Volcans débute avec un briefing suivi de séances de jeu grandeur nature et d’un speed dating pour briser la glace entre les participants, même si beaucoup se connaissent déjà.
C’est ensuite seulement que le concours commence : idées mises sur la table, définition de la forme… Le jeu de la team Agaetis sera simple et sympa, en 2D façon Pixel art, pour être – autant que possible – livrable et jouable pour la fin du Game Jam.
En amont, les six partenaires ont échangé sur leurs envies créatives et listé les outils utiles pour le développement, le prototypage ou encore la création de musique. Le choix s’est porté sur Unity, capable de créer un jeu de A à Z. « Il fait de la 3D et peut servir à plein d’autres choses, on s’en sert dans l’industrie » précise Bertrand. « Unity est très complexe mais il permet une grosse montée en compétence » ajoute Arnaud. « Le but est ensuite de peaufiner notre savoir sur cet outil qui possède une grande communauté et qui est amené à évoluer ». Julien raconte s’être un peu préparé en regardant des tutoriels sur Youtube, « ça m’a aidé ! Unity a une logique très différente du développement web, il faut un peu retourner son cerveau. » Pour le prototypage, l’équipe a misé sur Construct, qui permet de faire l’ébauche du jeu, de tester les éléments de gameplay, de créer le storyboard.

Samedi matin
La nuit porte conseil. La narration est déjà bien ficelée. Face aux vagues d’attaques d’aliens, l’idée principale du jeu est de déployer un système de défense ou d’attaque autour de la Terre sous la forme d’un bouclier qui tourne autour de la planète. L’action est enrichie par un système de boss avec un QTE (Quick Time Event), plus ou moins difficile selon les performances du joueur sur la première phase.
« Le plus difficile dans ce genre de défi, c’est qu’on va vite imaginer des choses complètement farfelues sans aboutir à quoi que ce soit » commence Pierrick, dont la principale mission a été de définir la trame narrative du jeu, puis d’aider l’équipe à s’organiser. « Le plus important, c’est d’arriver à créer des moments où on se pose ensemble, on regarde où on en est pour se concentrer sur l’essentiel. »
Durant le Game Jam, Alexandre s’est penché sur les algorithmes qui définissent les attaques ennemies, la correction de bugs et l’ajout de sons. Arnaud a géré l’esthétique du jeu et son fonctionnement. En plus d’un peu de développement, Julien a créé la musique sur le logiciel Bosca Ceoil, les menus et la partie QTE. Simon s’est concentré sur le graphisme et les sprites (éléments graphiques qui se déplacent sur l’écran) via Aseprite. Enfin, Bertrand a assuré le prototypage afin de déterminer la direction pour le gameplay.
à midi, le prototype fonctionne, les développeurs commencent à coder, les autres se concentrent sur les sprites et la musique. La difficulté : Unity fourmille de subtilités. Pour éviter de s’embourber dans un codage sans fin, le groupe choisit de se concentrer sur l’histoire, le graphisme et une base de jeu simplifiée, et de bien distinguer dans le jeu la partie défense de la base de la partie boss et QTE.

Dimanche
C’est la phase du projet où le code s’impose pour corriger les bugs. Malgré tout, les choses avancent grâce à la simplicité du jeu et aux décisions prises. « J’ai vraiment découvert la compétence des développeurs durant la Jam » confie Bertrand, « ils ont des problématiques que je n’anticipais pas avant, et là je l’ai vécu avec eux. »
Avec un rendu prévu pour 15 heures avant présentation à tous les autres participants, la dernière ligne droite s’avère plus stressée voire électrique. Alexandre évoque un manque de communication nourri par l’urgence. « Il a fallu qu’on pose nos marques, et qu’on garde le bon côté de l’entreprise pour la coordination. »
Délai tenu pour l’équipe d’Agaetis qui parvient à présenter son jeu. Pour Arnaud, le cadrage du début a permis de partir sur une idée viable, sans perte de temps, « et le fait d’avoir une équipe polyvalente a contribué à faire quelque chose de sympa. »
« On a tous des caractères forts, mais on s’est écoutés, on a appris et on a fait ce qu’on a pu » termine Julien. « Je suis fier, vu qu’on était novices : on a fini notre jeu, il est jouable et présentable. C’est mon premier jeu, ce n’est peut-être pas le plus beau ou le plus original mais il est fini et il est fun. »
La Jam des Volcans ne désigne pas de vainqueur, mais le but du week-end est atteint : rencontrer, échanger, et créer l’effervescence. À l’unanimité, tous les membres de l’équipe sont prêts pour renouveler le défi.
Retrouver le jeu sur la page de la Jam et pour jouer à S4, c’est par ici.

12 clés de succès d'un projet Big Data

Les projets Big Data structurants pour les activités à venir de l’entreprise et dépassent donc l’enjeu technique. Il s’agit de mettre en place une démarche globale, transverse à tous les métiers, impliquant une nouvelle organisation, de nouvelles méthodes et des nouveaux outils. Voici, en résumé, quelques points essentiels à prendre compte pour créer les conditions de succès :
Technologie

  1. Prévoir l’intégration de plusieurs technologies à mettre en œuvre : chaque technologie apporte une fonctionnalité spécifique, et il faut souvent en utiliser plusieurs simultanément pour répondre à toutes les demandes (temps réel, analyse, IoT, volumétrie, format de stockage, …)
  2. Considérer que l’architecture doit être évolutive: les technologies évoluent très rapidement ainsi que les besoins, il faut prévoir une architecture offrant une souplesse à l’usage (API gateway, ESB, conteneurisation, …)
  3. Garantir la montée en compétence de tous les métiers techniques (développement, data science, infrastructure, maintenance, …) afin de bien exploiter le monde distribué
  4. Créer un univers de datascience avec des outils adaptés à l’exploration (python, jupyter, zeppelin, …)

Data

  1. Mettre en place une gouvernance autour de la data :
    • Garantir la sécurité
    • La qualité
    • La gestion des habilitations
    • Gérer les contrats avec les fournisseurs tierce
  2. Fiabiliser les sources des données: le plus gros coût dans le Big Data est le travail nécessaire pour disposer d’une donnée exploitable. Cela passe par :
    • Le choix des partenaires
    • La vérification de l’intégrité des données issues d’applicatifs internes (ex : ERP, CRM, …)
    • La mise en place d’exigence métrologie pour garantir que l’on mesure les bonnes informations (IoT)
    • Considérer les données brutes comme un patrimoine, la donnée une fois transformée est « corrompue » à jamais
  3. Tenir compte des contraintes de la GDPR dès le départ : répondre aux exigences à posteriori peut être très couteux
  4. Mettre en place une équipe de datascientists en tenant compte des spécialités et de l’expérience des profils

Organisation

  1. Adopter les méthodes et les outils permettant d’offrir une réactivité aux métiers et favoriser l’itération pour affiner les nouveaux produits / services :
    • Mettre en place des approches UX (service design, design thinking, …)
    • Favoriser les développements et déploiements rapides: l’objectif est de passer d’un prototype à une version industrialisée le plus rapidement possible.
    • Mettre en place des équipes pluridisciplinaires, intégrant les métiers, les utilisateurs, les développeurs et les datascientists avec des méthodes comme le BDD (Behavior Driven Development)
  2. Acculturer les métiers à l’innovation et la data: mettre en place des BBL, des ateliers, des formations, des datacamp, challenges internes
  3. Créer de la curiosité et de l’émulation autour des projets : la communication interne est importante pour comprendre ce qui est fait et ce que l’on peut faire avec la data
  4. Réussir les premiers cas : en général, on favorise dans un premier temps des projets permettant un « quick win» sans impact majeur sur l’activité de l’entreprise. Cela permet à la fois d’ajuster l’architecture et de rôder les outils, les méthodes et l’organisation.

Article LinkedIn

Start-ups BtoC : ce qui les freine ?

Réagissez directement sur l’article publié sur LinkedIn par Jérôme Didat
Ce soir, il y a un match de rugby. Je prévois de m’ennuyer devant le jeu des Bleus, sans même parler de gagner ou perdre …
Du coup, je voudrais intéragir pendant le match sur un sujet : « Ce qui freine l’emergence des start-ups BtoC ». Non, pas ce qui pourrait accélérer leur développement (méthodes, éco-système start-up, open innovation, etc) mais bien ce qui leur faire perdre du temps. J’ai listé 11 points : à vos commentaires pour en ajouter voire me dire combien je me suis trompé sur tel ou tel point ! Ce que j’en ferai : certainement vous inviter à co-construire un Skunk (httpss://en.wikipedia.org/wiki/Skunk_Works)
1/ Chercher des financements : faire des VC ses premiers clients, remplir des dossiers de financement, attendre les jurys d’un incubateur …
2/ Ne pas avoir assez de datas pour construire ses services / algorithmes / IA
4/ Devoir construire une architecture IT de développement /production : soit s’en passer au début … et refactoriser ensuite ; soit en construire une et perdre du temps par rapport au service visant les clients
5/ Commencer à tester uniquement après avoir finalisé son produit : surtout dans le cas du BtoC
6/ Se lancer et devoir consommer 50% de ses fonds sur google et facebook pour rallier des clients
7/ ne pas avoir les compétences IT / business / métiers réunies au départ
8/ ne pouvoir recruter que des juniors une fois lancée : par manque de moyens et difficulté à être compétitif avec les grands groupes
9/ être approchée par des grands groupes pour des accords et partir sur des temps longs de négociation : et du coup perdre énooooormément de temps en réunions et « développement powerpoint »
10/ chercher des solutions pour continuer à assumer vie personnelle et entrepreunariat
11/ avoir des prestataires et indépendants disséminés dans Paris et devoir les coordonner

Table Ronde • Transformation des organisations : La fin des managers ?

 “Nous sommes arrivés à un moment clé dans l’histoire du management” Gary Hamel, Président-fondateur de Strategos, cabinet international de conseil en management.

Cycles de décisions trop longs, lourdeurs bureaucratiques… l’entreprise telle que nous la connaissons serait en train de vivre ses dernières heures. Aujourd’hui, le partage de connaissances et des tâches serait le nouveau terreau des modes d’organisation du travail.

Les entreprises sont-elles prêtes à faire face à cette évolution ?

A l’instar de Michelin, aujourd’hui émergent des groupes qui laissent la liberté aux employés de décider de leur propre mode de fonctionnement. Dès lors on peut se poser plusieurs questions :

  • La hiérarchie pyramidale est-elle un frein à l’innovation ?
  • A-t-on encore besoin des managers ?
  • Faut-il transformer fondamentalement l’architecture des entreprises pour donner la chance aux talents individuels de s’exprimer ?
  • Quelles sont les expérimentations qui marchent ?
  • Le travail en réseau, est-ce l’avenir ?

Plusieurs experts issus de secteurs d’activité différents débattront lors d’une table ronde le 28 juin 2017 au Groupe ESC Clermont.

Avec la participation de :
Samuel Retière, Agile Coach – 16 ans d’expérience Transformation des organisations Speaker Lean & Agile
Luc Dagès, Agile Coach – 28 ans d’expérience Craft IT et transformation digitale Speaker Lean & Agile

Rendez-vous le 28 juin 2017 à 18h30

Entrée Libre

Groupe ESC Clermont

Auditorium Jean-Philippe Genova 4 boulevard Trudaine ∙ 63000 Clermont-Fd

• RENSEIGNEMENTS ET INSCRIPTION •

Contact : Laura Miton
04 73 98 24 27 ∙ laura.miton@esc-clermont.fr

-> Inscription obligatoire par retour de mail

L’innovation, ça marche comment ?

La première étape est d’essayer de détecter de nouveaux cas d’usage pour créer de nouveaux services. Une fois les usages détectés, on crée un écosystème, un terreau capable de faire émerger des pistes ou des idées pour répondre aux enjeux client. Au sein de cet écosystème, on retrouve des collaborateurs Métiers interne mais aussi des prestataires externes et évidemment une méthodologie, une démarche agile, de l’UX Design. En travaillant l’expérience utilisateur, on crée un MVP (minimum viable product) en un minimum de temps pour qu’on puisse le tester rapidement. Ce n’est qu’au cas où certains services fonctionnent que j’itère ! En somme, dans la conception d’un nouveau produit, dans une démarche d’innovation tout le monde doit comprendre que le produit est un être vivant.

Big Data : IT / METIERS, et si on se parlait ?

Mauvaise(s) synergie(s), projets au long cours, perte de sens et de motivation… Il semblerait que les équipes IT et Métiers ont du mal à s’accorder sur le concept d’innovation. Mettre en place des briques technologiques ne serait donc pas la condition sine qua none au succès des projets Big Data. Pour que ces projets conduisent les organisations sur le chemin du succès, il est temps que l’IT et les Métiers trouvent un espace de jeu afin d’expérimenter ensemble la co-construction.
Notre expert Nicolas Roux, Directeur Agaetis et Directeur Innovation Novencia Group, revient sur les principales raisons de l’échec de la majorité des projets Big Data mais aussi sur les méthodes à mettre en place pour créer des synergies. Entretien.

Selon un analyste de Gartner, 70% des projets Hadoop échouent en raison d’un manque de compétences et d’attentes trop élevées des organisations. Donc près des 3/4 des projets big data Hadoop sont voués à l’échec ?

Il y a deux raisons majeures à l’échec des projets big data.
Lorsqu’on évoque l’échec de 3/4 des projets big data, on confond souvent ces échecs avec les mauvais retours d’expérience sur les datalake. En rassemblant les données dans une énorme base, en faisant travailler un data scientist sur l’exploitation des données, les entreprises ont cru mettre en œuvre des projets Big Data. Par ailleurs, depuis 2012, le buzz autour du Big data et l’injonction à l’innovation, ont poussé les entreprises à réduire le concept d’innovation à l’installation de briques technologiques par la DSI. Jusqu’en 2015, la vision des Big Data était donc trop technophile avec une DSI qui montait des projets avec de gros budgets sans avoir réfléchi à la gouvernance des données ou à quoi allait concrètement servir ces nouvelles technologies. Je compare souvent cette démarche en citant l’exemple de Renault qui s’est amusée à fabriquer un Renault espace en mettant un moteur de formule 1. Résultat, la firme au losange disposait d’un véhicule ultra performant dont la réalité économique s’est limitée au buzz. On est dans la même configuration pour le big data. En interne, les DSI ont mis en place des technologies trop complexes et les Métiers ont été incapables de les exploiter. C’est de cette décorrélation qu’est né ce premier constat d’échec.
Le deuxième échec concerne la démarche innovation.
Traditionnellement comment était-elle abordée ? Une entreprise lambda se disait experte sur le marché d’un type de produits, elle investissait en R&D (Recherche et développement) et du coup, naturellement, elle avait le rôle de créateur d’innovation. Aujourd’hui, la tendance c’est de dire j’ai compris que mon produit n’est qu’une brique et je dois faire en sorte qu’il corresponde à des usages. La tendance est donc au « customer centric » qui prend en compte les besoins clients dès le départ du projet.
En ce sens, dans l’innovation digitale, on construit un produit vivant. Tous les 6 mois, tous les mois, voire tous les jours dans certains cas, le produit doit être amélioré, doit offrir de nouvelles fonctionnalités. Le dialogue de sourds entre IT et métiers résulte, en dehors de l’aspect technologie, du manque de démarche et de méthodologie générales qui doit être véhiculée par une approche innovation.

Comment identifie t-on un dialogue de sourds ?

Comment on identifie rapidement un dialogue de sourd ? Dès qu’on arrive chez un client et qu’on s’aperçoit, d’une part que, la DSI a investi des sommes énormes sur son SI pour pouvoir mettre en place des briques technos type big data. Et d’autre part, que les Métiers ne comprennent pas la valeur ajoutée et le temps perdu à monter un tel projet. C’est une situation coutumière des grands groupes. On la retrouve plus rarement au sein des nouvelles directions digitales.
Autre cas de figure, un produit a été fabriqué dans une démarche d’innovation. Sauf que le bât blesse quand la DSI s’aperçoit qu’elle n’a pas été consultée et qu’elle met son veto au moment d’industrialiser en estimant que le produit ne correspond en rien à l’architecture cible, ni aux contraintes sécuritaires. Donc, on se retrouve avec un produit construit qui ne correspond à aucune règles internes du SI.

Comment amorcer le dialogue ?

En somme, il manque un espace de jeu entre la DSI et le Métier pour qu’ils expérimentent ensemble. Les DSI traditionnelles doivent comprendre qu’elles ne prennent pas de risques si elles apprennent à fonctionner autrement. A contrario, au sein des start-ups industrialisées comme Vente Privée par exemple, ces problématiques n’existent pas car elles ont une vraie culture du digital et de l’innovation. Elles se sont développées sur ce modèle de co-construction dès le départ.

Réussir un projet Big data c’est donc une question de mentalités ?

Au niveau des organisations, certains de nos clients sont dans une dynamique transverse et agile, et ont donc atteint un bon niveau de maturité par rapport à ces problématiques. A contrario, certains de nos clients n’ont pas d’approche disprutive par rapport à leur marché.
Concernant l’IT, il faut prendre en compte qu’à l’origine, la DSI est le garant d’un SI fiable, sécuritaire qui doit offrir un SLA (Service Level Agreement) de plus de 99%, et assurer la maintenance en cas de panne. Son rôle est de faire des choix techniques et de garantir la gestion d’un ensemble d’applicatifs qui va permettre à la société de fonctionner au quotidien. Sauf que, c’est antinomique avec les approches d’innovation car, dans une démarche d’innovation on utilise des technologies très récentes et non usitées. Et il est fréquent qu’un DSI refuse de mettre en en place certaines technologies car les éditeurs sont inconnus.
Enfin, coté Métiers, ils s’épuisent et se découragent car chaque projet fait l’objet d’un développement long qui s’étale de 6 mois à un an. Or, dans une démarche d’innovation, un cycle de test ne doit pas dépasser les 4 mois. Au delà, le terme d’innovation est galvaudé.
Donc oui, changer les mentalités, vivre avec son temps, prendre des risques sur de nouvelles technologies, tester, industrialiser tout en préservant la sécurité du système informatique permettrait de mener au succès un projet Big data.

L’Innovation n’est donc pas qu’une question de temps ?

Quand on veut innover, on prend en considération plusieurs facteurs : l’organisation des équipes, les méthodologies et les outils à mettre en œuvre . Quand on veut que ça fonctionne bien on se monte une « feature team » c’est à dire une équipe pluridisciplinaire, de taille réduite, qui va travailler sous un mode collaboratif.
Dans ces équipes, on retrouve des développeurs ultra expérimentés. Ces artisans du code, appelés craftsmans, sont capables de mener un projet de A à Z tout en appliquant de très bonnes pratiques afin que l’applicatif puisse évoluer facilement grâce à des test produit tous les 4 mois. Aujourd’hui, on n’a plus besoin d’une équipe de 20 personnes pour réaliser un produit car les craftsman savent utiliser les bons outils comme la livraison continue par exemple. Grâce à cette méthodologie, on peut réduire les coûts et envisager l’industrialisation au fur et à mesure des succès rencontrés.

La data est-elle la passerelle pour améliorer le dialogue ?

Aujourd’hui la data est un moteur de l’innovation. A partir de son exploitation, on va pouvoir répondre aux problématiques d’un client et de ses usages. L’enjeu, c’est réussir de mettre dans la même pièce IT et Métier pour qu’il discute ensemble d’une bonne exploitation de cette data et de la mise en place de bons outils.
Auparavant, on faisait le choix d’une base de données qui devait répondre à 90% des cas d’usages. Aujourd’hui, tout est différent car avec des feature team, on peut gérer 10 projets différents avec 10 équipes différentes et si ça se trouve dans ces 10 projets, il y aura des briques technos communes à l’ensemble des 10 projets et des briques spécifiques communes à seulement 2 projets. Le dialogue est donc extrêmement important car si tout le monde travaille sur le customer centric la matière première c’est la data. C’est donc le point commun entre l’IT et les Métiers.
Dans des entreprises comme Facebook, on innove par le code, le Métier a une idée, l’IT développe un bout de code.

Doit-on former les collaborateurs ?

Les collaborateurs doivent être formés et coachés sur les méthodologies et les outils. Aujourd’hui on parle beaucoup de coach agile car les entreprises ont besoin de personnes qui sont à la pointe des nouvelles technologies et de leurs utilisations, IoT, applicatif, chatbot, blockchain… La veille technologique et sectorielle doit être très forte et il est nécessaire que le niveau d’acculturation des collaborateurs soit forte. En somme, les collaborateurs doivent être formés sur comment on passe de l’idée à l’applicatif.

Quels sont les avantages que les équipes IT & Métiers peuvent tirer d’une co-construction ?

L’enjeu encore une fois c’est les feature team mais un autre enjeu c’est aussi de décloisonner les équipes et d’impliquer les IT sur la conception de produit. Une équipe pluridisciplinaire est selon moi, un facteur de succès.
Concrètement, un projet big data est souvent lié à un projet innovation c’est pourquoi j’ai insisté sur le concept d’innovation. Car le but ultime, c’est l’expérience utilisateur, c’est comment faire que son organisation soit plus performante, que les collaborateurs soient impliqués, comment faire en sorte que les technologies facilitent le quotidien des collaborateurs sans passer nécessairement par de la formation au logiciel… Aujourd’hui, il faut inverser ce qu’on connait dans l’entreprise. Il faut concevoir des logiciels qui collent aux besoins en interne, des nouveaux produits qui correspondent aux utilisateurs et non l’inverse.

Pour encourager le dialogue peut-on évoquer le facteur de réduction de coût ?

L’enjeu pour moi n’est pas là. L’enjeu est d’être disruptif et de véritablement se transformer digitalement.

Chez AGAETIS, quelle est votre approche ?

Notre approche c’est de proposer une start-up interne. On n’est pas là pour tout transformer, on est là pour montrer l’exemple. En faisant de l’évangélisation par l’exemple, on co-construit avec le client. Notre objectif est de partir d’un use case. A partir de là, on explique au client comment aller, comment communiquer autour du projet et obtenir l’adhésion de l’ensemble des collaborateurs, y compris ceux qui ne font pas partie du projet. On crée de la curiosité dans l’entreprise et on emporte avec nous toutes les équipes qui attendent du coup, les améliorations.
AGAETIS vous accompagne pour mener à bien vos projets !

Agaetis recherche des artisans développeurs

Envie de réellement mettre en pratique les dernières technos « hype » sur des projets innovants et challengeants ?
Chez Agaetis, depuis 10 ans, nous accompagnons nos clients dans leurs projets Big Data et Data Science, de l’idée jusqu’à la mise en production : idéation, lab, architecture, développement, ops.
Nous recherchons un artisan développeur pour intégrer notre équipe d’experts !
JavaScript, Angular, React, Spring Boot, Node Js, MongoDb, ElasticSearch, GIT, intégration continue et bien d’autres seront de la partie.
Même si tu ne maîtrises pas l’intégralité de cette stack, nous t’accompagnerons dans ta montée en compétences.
Intéressé(e) !? Expérimenté(e) ou Junior ?
Viens en discuter avec nous autour d’un café ou contacte-nous via recrutement@agaetis.fr ou au 04 73 35 47 51.
La société
Agaetis est spécialisée dans les analyses de données et les technologies Big Data. Depuis 2007, nos experts accompagnent les grands comptes et les PME dans les projets innovants et stratégiques dont l’exploitation des données est un critère de succès.
Agaetis dispose d’une forte expérience dans le traitement de données d’objets communicants (télématique embarquée sur les véhicules, machines, capteurs, …) et l’exploitation de données scientifiques (agriculture, environnement, industrie).

Partenariat Cloudera

Depuis 2016, Agaetis est partenaire de Cloudera, un acteur majeur du big data.

Grâce aux solutions Cloudera, Agaetis renforce son offre big data pour accompagner ses clients grands comptes. L’éditeur propose une plateforme permettant de traiter, d’analyser des volumes de données importants.

Partenariat Datastax – Cassandra

Depuis 2015, Agaetis est partenaire de Datastax, principal contributeur de Apache Cassandra.
Agaetis utilise Cassandra dans des projets nécessitant le traitement de gros volumes de données en temps réel, tel que la gestion d’objets connectés. Cassandra est reconnue pour sa capacité à enregistrer des données massives, sa haute disponibilité et son intégration avec Apache Spark pour l’analyse de données.
Ce partenariat permet de répondre aux plus grandes exigences techniques (architecture, sécurité, monitoring, …) et opérationnelles (support, formations, …).

Partenariat mongoDB

Depuis début 2015, Agaetis est partenaire mongoDB, leader des bases de données orientée document.
Agaetis a utilisé mongoDB dans de nombreux projets depuis sa sortie en 2009. Cette technologie apporte une grande souplesse dans la gestion de données hétérogènes, une mise en oeuvre rapide dans les phases de prototypage et une capacité à gérer des gros volumes de données.
Ce partenariat permet de répondre aux plus grandes exigences techniques (sécurité, sauvegarde, monitoring, …) et opérationnelles (support, formations, …).
MongoDB est utilisé dans des gros projets (Adobe, Amadeus, Linkedin, eBay, SAP, …) et a été financé à hauteur de 231 M$.

Agaetis partenaire mongoDB

L'avenir de l'industrie est dans le big data

Dans une interview accordée à Télérama, l’économiste américain Jeremy Rifkin explique que l’avenir de l’industrie est dans la gestion du Big Data :

Certains s’y mettent, en particulier dans le domaine de l’énergie. Et mieux vaut ne pas trop tarder. Car, comme je l’ai dit aux cinq plus gros groupes énergétiques allemands devant la chancelière Angela Merkel, et aux dirigeants d’EDF : « vous allez changer de métier ».
Quand des millions d’individus produiront leur propre énergie gratuitement et l’échangeront sur Internet, ne comptez pas gagner de l’argent en fabriquant du courant électrique : votre job, ce sera de gérer le Big Data de l’énergie pour faciliter la circulation des flux entre particuliers et entreprises

https://www.telerama.fr/idees/jeremy-rifkin-ce-qui-a-permis-le-succes-inoui-du-capitalisme-va-se-retourner-contre-lui,117006.php
 

Exemple de requête géolocalisée avec Spring Data Elasticsearch

Elasticsearch maintenant supporté par Spring Data

L’un des nouveaux modules intégré dans la nouvelle version de Spring Data est spring-data-elasticsearch. Il permet, comme son nom l’indique, de requêter un serveur/cluster Elasticsearch. Franck de Agaetis est un contributeur du projet.
Dans la liste des fonctionalités apportées par ce projet communautaire de Spring Data, il existe celle de faire des requêtes géolocalisées. Pour être plus clair, il est possible de retrouver, par exemple, toutes les personnes dont le nom contient « blaise » et qui habitent à Clermont-ferrand.

Plusieurs saveurs de requête : « Criteria » ou « Repository »

Il existe plusieurs manières de faire une requête dans le monde de Spring Data :

  • Utilisation des Criteria, où l’on construit la requête gâce à une API « fluent ».
  • Un repository où le nom des méthodes et leurs paramètres permettent de construire la requête.

Spring Data est très selectif : il faut respecter ses « Criteria »

Voici un exemple qui permet d’illustrer la manière de construire des requêtes Spring Data Elasticsearch avec les « Criteria » :
Dans le cas de cet exemple, les données sont des noms de personnes associés à un identifiant et des coordonnées géographiques.
Voici comment on indexe ces données :
[java]

List<IndexQuery> indexQueries = new ArrayList<IndexQuery>();
// Blaise PASCAL in Clermont-Ferrand
indexQueries.add(new AuthorMarkerEntityBuilder(« 1 »)
.name(« Blaise PASCAL »)
.location(45.7806d, 3.0875d)
.buildIndex());
// and Isaac NEWTON in London
indexQueries.add(new AuthorMarkerEntityBuilder(« 2 »)
.name(« Isaac NEWTON »)
.location(51.5171d, 0.1062d)
.buildIndex());
esTemplate.bulkIndex(indexQueries);

[/java]
Voici la classe AuthorMarkerEntity qui permet de transformer et de récupérer les résultats de requête (marshal/unmarshal).
[java]
@Document(indexName = « test-geo-index », type = « geo-class-point-type », indexStoreType = « memory », shards = 1, replicas = 0, refreshInterval = « -1 »)
public class AuthorMarkerEntity {
@Id
private String id;
private String name;
private GeoPoint location;
private AuthorMarkerEntity() {
}
public AuthorMarkerEntity(String id) {
this.id = id;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public GeoPoint getLocation() {
return location;
}
public void setLocation(GeoPoint location) {
this.location = location;
}
}
[/java]
Ensuite, un exemple de requête pour trouver toutes les personnes qui vivent à moins de 20 kilomètres de Clermont-ferrand :
[java]
CriteriaQuery criteriaQuery = new CriteriaQuery(
new Criteria(« location »)
.within(new GeoPoint(45.7806d, 3.0875d), « 20km »));
List<AuthorMarkerEntity> result = esTemplate.queryForList(criteriaQuery, AuthorMarkerEntity.class);
[/java]
Cela devrait renvoyer uniquement « Blaise PASCAL ».
Il est aussi possible de combiner les critères de recherche. Par exemple : la requête ci-dessous retrouve toutes les personnes dont le nom contient « Isaac » ET qui habitent à moins de 20 kilomètres de Londres.
[java]
CriteriaQuery criteriaQuery = new CriteriaQuery(
new Criteria(« name »)
.is(« Isaac »)
.and(« location »)
.within(new GeoPoint(51.5171d, 0.1062d), « 20km »));
List<AuthorMarkerEntity> result = esTemplate.queryForList(criteriaQuery, AuthorMarkerEntity.class);
[/java]

Des noms de méthode qui définissent une requête : pas bête la bête !

Spring Data peut utiliser le nom d’une méthode et la valeur des paramètres fournis pour contruire une requête.
Pour commencer voici un extrait de la classe SampleEntity :
[java]
@Document(indexName = « test-index », type = « test-type », indexStoreType = « memory », shards = 1, replicas = 0, refreshInterval = « -1 »)
public class SampleEntity {

@Id
private String id;

private GeoPoint location;
public GeoPoint getLocation() {
return location;
}
public void setLocation(GeoPoint location) {
this.location = location;
}

}
[/java]
Voici un extrait du « repository » qui pourrait être utilisé pour requêter des « SampleEntity ».
[java]
public interface SampleCustomMethodRepository extends ElasticsearchRepository<SampleEntity, String> {
Page<SampleEntity> findByLocationWithin(GeoPoint point, String distance, Pageable pageable);
}
[/java]
Ainsi quand la méthode « findByLocationWithin » sera appelée, une requête pour retrouver tous les « SampleEntity » autour des coordonnées passées en argument, sera contruite et executée.
Voici deux écritures équivalentes :
[java]
CriteriaQuery criteriaQuery = new CriteriaQuery(
new Criteria(« location »)
.within(new GeoPoint(45.7806d, 3.0875d), « 20km »));
List<AuthorMarkerEntity> result = esTemplate.queryForList(criteriaQuery, AuthorMarkerEntity.class);
[/java]
[java]
Page<SampleEntity> page = repository.findByLocationWithin(new GeoPoint(45.7806d, 3.0875d), « 20km », new PageRequest(0, 10));
[/java]


Pour plus d’informations sur le projet : httpss://github.com/spring-projects/spring-data-elasticsearch

Contribution à Spring Data Elasticsearch

Des sources de données hétérogènes : une problématique bien connue.

Beaucoup de projets nécessitent l’utilisation et la transformation de données hétérogènes. Si les outils utilisés ne sont pas judicieusement choisis, le projet peut vite devenir un calvaire à maintenir ou à faire évoluer.

Gérer plusieurs types de base : Spring à la rescousse !

Pour cela, GoPivotal (anciennement SpringSource) a créé Spring Data : une librairie générique pour l’accès aux données. On peut ainsi accéder à des base orientées « document », « graphe » ou « clé-valeur » de manière unifiée. Cela permet d’avoir la même API que ce soit pour une base MongoDB ou une base Neo4j, par exemple.

Pourquoi avons-nous contribué ?

Dans le cadre d’un de nos projets, nous avons pu explorer différents aspects d’Elasticsearch (souvent considéré comme une base NoSQL). Nous utilisions déjà Spring Data pour les bases Redis (clé-valeur), Neo4j (graphe) et MongoDB (document) mais Elasticsearch ne faisait malheureusement pas encore partie de l’écosystème de Spring Data. Après quelques recherches rapides, un projet existait en open source. La partie géo-localisation était manquante et nous en avions besoin. Nous avons donc contribué à ce projet qui au fil du temps a été intégré à Spring Data Dijkstra.

Pour ceux qui codent : des exemples !

Voici comment faire des requêtes géolocalisées avec Spring Data Elasticsearch : Exemples de requête géolocalisée avec Spring Data Elasticsearch

 
Pour plus d’informations sur le projet : httpss://github.com/spring-projects/spring-data-elasticsearch

Monitoring des applications avec Kibana et logstash

Dans les environnements avec de nombreuses applications ou dans les applications avec une architecture en microservice, il est important de mettre en place les bons outils pour surveiller les applications.

Surveiller les défaillances

Toutes les applications, sites web ou services peuvent défaillir. Il est important d’être capable de détecter rapidement la panne et si possible de restaurer le service, donc il faut disposer d’un outil de monitoring en temps réel.

Avoir les bonnes mesures

Pour faire les bons diagnostics, on doit disposer d’indicateurs qui sont à la fois informatique et business, comme par exemple:

  • nombre d’appels à un service
  • temps de réponse des services
  • sollicitation des bases de données
  • nombre de message
  • nombre de commandes par minutes
  • actions des utilisateurs

La solution Kibana / Logstash

Nous avions déjà testé cette solution lors d’un POC, et depuis nous avons déployons cette solution pour nos clients.

Pourquoi utiliser les microservices pour une application?

Une architecture en micro service (également appelé micro application ou encore small app) est une façon de concevoir les applications. Le principe est de créer un ensemble de petites applications (ou services) autonomes qui communiquent entre elles par un protocole simple (ex par API Rest). Elles sont conçues pour répondre à une fonction business spécifique et doivent pouvoir être déployées facilement et indépendamment. Chaque microservice peut être écrit dans un langage de programmation différent ou utiliser des bases de données spécifiques.
Les retours d’expérience sur ce type d’architecture sont positifs et de plus en plus utilisés, au point où cela devient un standard pour les gros applicatifs.

Comparaison avec une architecture monolithique

Habituellement, les applications sont en 3 parties différentes: l’interface utilisateur (développée en HTML / javascript), une base de données (habituellement une base SQL) et une application côté serveur (développé en PHP, Java, Ruby, …). L’application côté serveur est responsable du stockage de la données et de la génération de l’HTML pour le front. Cela présente les inconvénients suivants:

  • toute la logique de l’application se retrouve donc dans une seule application, écrite dans un seul langage de programmation. On n’exploite pas les capacités des différents (ex: R pour les statistiques)
  • les modifications sur l’application peuvent impacter d’autres modules
  • pour assurer la montée en charge, il faut une montée à l’échelle horizontale en déployant l’application au complet sur plusieurs serveurs
  • à chaque modification apportée à l’application, le cycle de développement est long (définition du fonctionnel, développement, tests, déploiement)
  • au fil du temps, il est de plus en plus difficile de garder l’architecture modulaire prévue à l’origine
  • chaque développeur doit avoir l’application au complet dans son environnement de développement et doit comprendre la majeure partie de l’application

Ces inconvénients ont conduit à penser les modules comme des services et l’application comme une suite de services. Chaque service est indépendant, avec une montée à l’échelle indépendamment, écrit dans différents langages et par des équipes différentes. La complexité de l’application est cassée en un ensemble de modules facile à maintenir. Certains architectes expliquent que le problème résolu par un service doit pouvoir être mentalement représenté.

Idéal pour les évolutions fréquentes

De plus en plus d’applicatifs et de sites web doivent évoluer constamment. L’architecture en microservice répond à l’enjeu qui repose sur l’équipe informatique qui doit pouvoir apporter des modifications sans ralentir les temps de développement. L’architecture se prête même très bienà la création des services « brouillons », idéal pour le lean startup.

Architecture idéale pour la tolérance aux pannes

Lorsqu’on développe une application en microservice, cela oblige à prévoir dans l’application qu’un service puisse être défaillant. D’abord, l’application peut continuer à fonctionner dans un mode dégradé. Ensuite, les services étant plus simples, il est plus facile de les restaurer. Une brique importante dans cette architecture est le monitoring en temps réel des services. Le monitoring doit fournir les bonnes mesures pour surveiller les échanges entre services.

L’avenir de l’architecture en microservices

Cette architecture est de plus en plus utilisée et a déjà mise en place avec succés pour de nombreuses applications et sites web. Cependant, ce design est encore récent et la durée de vie des applications n’ont pas encore atteind celle de certaines applications monolithiques.


Voir un exemple d’architecture en microservice pour un job board


 
Des questions, des remarques ou vous voulez tout simplement échanger? Appelez nous au 04 73 44 56 40

Spécialistes Data et Big Data à Clermont-Ferrand

Agaetis est une société spécialisée dans les solutions logicielles de stockage et d’analyse de données.

Notre service

Nous concevons, développons et maintenons des applications pour traiter la donnée. Notre expertise sur les technologies Big Data et les outils de fouille de données nous permet de répondre aux attentes suivantes:

Nos compétences

D’un point de vue technique, nous travaillons avec les technologies noSQL les plus utilisées aujourd’hui : ElasticsearchmongoDB, Hadoop, neo4jCephRedis, Cassandra. Pour le développement d’application, nous travaillons avec Python et Java.

Notre expérience

Notre équipe est composée d’ingénieurs ayant plus de 10 ans d’expérience. Les parcours sont hétérogènes, puisque certains ont évolué dans des startup, d’autres dans des SSII, à l’étranger ou en France. Agaetis existe depuis 2007 et nous avons pu intervenir sur de nombreux projets en région.

Implanté en Auvergne

Basée à Clermont-Ferrand, notre équipe intervient, pour les grands comptes régionaux, les SSII et les PME. Nous développons le plus de collaborations possible avec d’autres entreprises régionales dont les spécialités sont complémentaires aux nôtres: objets connectés, référencement, développement mobile, spécialistes Javascript, Ruby, infrastructure, graphisme, …
Cette approche collaborative nous permet de rester réactifs et de garantir un très bon niveau d’expertise.
Agaetis est également sponsor de Clermont’ech et membre du cluster Auvergne TIC.

Réalisation d'un prototype / preuve de concept sur le Big Data

La preuve de concept (POC)

Réaliser un POC permet de conforter les choix technologiques avant de consacrer des ressources à un projet (formation des équipes, recrutement, investissement matériel, …).
Cette étape est très utile dans les projets Big Data car elle permet de révéler rapidement les points sensibles (ex: volumétrie, évolution de la structure de donnée, traitements à mettre en oeuvre, …) et de caractériser les contraintes et objectifs. Au terme de cette étape, les décideurs doivent disposer d’éléments factuels pour poursuivre les investissements.

Le prototype

Dans le cycle de développement d’un nouveau projet, il est nécessaire d’avoir des développeurs expérimentés lors du prototypage. Ils sont la garantie d’une bonne architecture logicielle et de la mise en place correcte des briques technologiques.
Pendant la réalisation du prototype, l’équipe Agaetis intègre et forme les développeurs qui assureront la maintenance et les évolutions de l’application développée. C’est une garantie pour le porteur de projet que la connaissance technique ne soit pas uniquement chez son prestataire.

Adopter les méthodes agiles et le « lean startup »

Dans les projets innovants, les besoins et contraintes s’affinent au fur et à mesure de l’avancement du projet. Il faut un pilotage permettant à la fois de faire des itérations courtes entre chaque livraison et maîtriser les coûts de développement.
L’équipe d’Agaetis travaille avec les méthodes agiles, comprend les enjeux business d’un projet. Cela lui permet de faire les bons arbitrages entre les développements et le coût, et surtout d’être réactive et efficace.

Prestations pour les projets innovants

Pour une entreprise, le caractère innovant d’un projet se définit souvent par la création d’un produit ou d’un service nouveau sur son marché. Lorsque ce projet nécessite la création d’un outil informatique (application, logiciel, service web, …), il faut investir sur un développement sur mesure. Si l’innovation se repose sur des concepts récents (ex: big data, objets connectés, …), le risque technique doit être maîtrisé pour éviter la dérive du projet.
L’équipe d’Agaetis a développé un savoir faire et une expérience sur les projets innovants et offre une prestation sur mesure:

  • une intervention dès les premières étapes du projet jusqu’à la commercialisation
  • un accompagnement tout au long du projet par des développeurs expérimentés
  • la réalisation de preuve de concept
  • un développement avec les méthodes agiles et l’approche « lean startup »
  • l’intégration et la formation de développeurs embauchés par le porteur de projet qui assureront la maintenance et les évolutions après la commercialisation
  • l’aide pour recruter les meilleurs profils techniques pour la continuité du projet
  • le lien avec les laboratoires de recherche

A lire également, notre décryptage du cycle de vie d’un projet informatique innovant, les risques techniques et les solutions.

Enjeux techniques d’un projet innovant

L’innovation dans les différents secteurs d’activité se repose très souvent sur le développement d’une technologie informatique. Voici quelques exemples de thèmes abordés dans les projets :

  • traitement de données
  • analyse d’information
  • outils décisionnels
  • objets communicants (objets connectés, capteurs, …)
  • réseaux sociaux
  • applications mobiles
  • vente en ligne

Les entreprises ont une très bonne compréhension des enjeux techniques mais, au lancement du projet, ils n’ont pas les moyens humains pour y répondre. Ils doivent alors recruter, sous traiter ou encore s’associer avec des partenaires techniques.
Dans tous les cas, la solution est rarement idéale pour équilibrer les différentes variables: compétence technique, expérience, coût, délai de réalisation, confidentialité. De plus, lorsque l’entreprise fait appel à des fonds extérieurs, les investisseurs attendent également une garantie sur la réalisation de la partie technique.

Cycle de vie du projet d’un point de vue technique

Etude de faisabilité technique
La première étape du projet consiste à faire appel à un ou plusieurs experts pour évaluer la faisabilité du projet, d’estimer le développement nécessaire, d’identifier les verrous technologiques. Cela permet d’évaluer les délais de réalisation, le nombre de personnes et qualification, et les moyens techniques nécessaires
Choix technologiques
Avec l’aide des experts (base de données, algorithmes, …), et en fonction de la facilité à trouver des personnes qualifiées, l’architecte logiciel propose la solution technique pour réaliser le projet.
Développement du prototype
L’objectif de la première étape de développement est de lever les principaux verrous technologiques et de faire la preuve de concept. L’équipe technique qui travaille sur cette première version doit être compétente et expérimentée.
La compétence est nécessaire car l’architecture posée lors de cette étape devra servir le plus longtemps possible. Une mauvaise architecture conduit généralement à une explosion des coûts et une limitation dans l’ajout de fonctionnalités.
Idéalement, l’architecte logiciel et le chef de projet doivent être expérimentés. L’expérience garantit en général les bons choix et une bonne gestion du temps et des dépenses.
Développement de la première version commercialisable
A partir du prototype, on complète le développement avec tous les éléments qui permettent d’exploiter la technologie en opérationnel : interfaces utilisateurs, gestion des erreurs, traçabilité, optimisation, etc …
C’est une étape souvent chronophage mais nécessitant moins de compétences. Idéalement l’équipe est complétée avec des juniors.
Maintenance et évolutions
Une fois la technologie en exploitation, une équipe réduite s’occupe de la maintenance et des petites évolutions.

Profil d’une équipe de développement sur un projet innovant

Etude des différentes solutions pour réaliser techniquement un projet

Recrutement

Avantages
Une équipe travaillant en interne garantit la maîtrise et la connaissance du projet
Coût maîtrisé une fois que la technologie est en exploitation

Inconvénients
Difficulté à recruter des personnes compétentes et expérimentées, difficulté accrue dans certaines régions comme en Auvergne
Le recrutement de personnes techniques nécessite une bonne connaissance technique de la part du recruteur
Difficulté à donner la souplesse nécessaire à l’équipe (nombre de personnes, compétence, expérience) jusqu’à la mise en exploitation. Comme il est très difficile de recruter des personnes qualifiées en CDD, il faut donc faire appel à des indépendants, consultants ou des SSII pour avoir des personnes en régie.

Sous-traitance

Avantages
Prise en charge complète du projet par le prestataire
Obligation de moyen pour réaliser la prestation dans le délai imparti

Inconvénients
Tarif
Nécessite une personne dédiée au suivi de projet et une plus grande formalisation des échanges (contrat, cahier des charges, compte-rendus, comité de pilotage, …) entre les porteurs de projet et le prestataire
Le savoir faire technique et la connaissance de la technologie est chez le prestataire, même avec la rédaction de documents.

La solution Agaetis

Agaetis propose une offre dédiée à la réalisation de projets innovants:

  • une intervention dès les premières étapes du projet jusqu’à la commercialisation
  • un rôle de partenaire auprès des différents acteurs (banques, investisseurs, …)
  • le recrutement et la formation des techniciens qui feront partis de l’équipe de développement et qui assureront la maintenance et les évolutions après la commercialisation

Une équipe compétente et expérimentée

  • plus de 10 ans d’expérience
  • les membres de l’équipe ont travaillé dans des startup et des grand-comptes

Une expérience dans les projets innovants

  • Depuis 2009, Agaetis gère régulièrement des projets innovants
  • Plusieurs projets étaient supérieurs à 6 mois

En lien avec les laboratoires de recherche

  • Relation privilégiée avec LIMOS et CEMAGREF/IRSTEA
  • Possibilité de créer des projets collaboratifs avec ces laboratoires

Recrutement et gestion des compétences

  • Grâce aux liens avec les universités et les écoles (plusieurs personnes d’Agaetis donnent des cours à l’Université, rencontrent avec les directeurs d’écoles par Auvergne TIC, …), Agaetis assure le recrutement de juniors
  • Les techniciens recrutés sont intégrés à l’équipe d’Agaetis où ils sont formés, ils contribuent au développement afin d’être autonome à la livraison finale
  • Les nouvelles embauches peuvent être subventionnées en région Auvergne

Crédibilité auprès des investisseurs
Agaetis travaille à créer un rapport de confiance avec les financeurs et se porte caution sur la technique

Référence : analyse et visualisation de données spatiales complexes – bourse innovation

L’objectif du projet est de proposer de nouveaux composants informatiques pour permettre l’intégration, l’analyse et la visualisation des données spatiales complexes (grille). Continuer la lecture de « Référence : analyse et visualisation de données spatiales complexes – bourse innovation »

Moteur de recherche Full Text (Recherche Plein Texte)

Nous fournissons, sous forme de service ou d’accompagnement, une solution de moteur de recherche Full Text avec Elastic Search.
Un moteur de recherche Full Text, ou Plein Texte, est un outil conçu pour indexer les contenus textuels, tel que des articles de blog, des descriptions de produits ou encore des annonces.

Auto-complétion, suggestions et corrections

Pour améliorer l’ergonomie du site ou pour guider simplement l’utilisateur dans sa recherche, les outils suivants peuvent être mis en place:

  • auto-complétion : le moteur suggère des mots clés au fur et à mesure que l’utilisateur tape dans la boite de dialogue
  • suggestion: au résultat d’une recherche, le moteur propose des mots clés alternatifs, complémentaires ou plus restrictifs
  • correction: le moteur suggère des mots avec la correction des erreurs de frappe

Des résultats plus pertinents

Le moteur permet de répondre rapidement à différents type de requêtes telles que :

  • la recherche d’expression (ex: « améliorer son site web »). Elle diffère de la recherche exacte car le moteur prendra en compte des textes qui contiennent des espaces en trop.
  • la recherche de proximité (ex : améliorer site). Le moteur affichera en premier lieu les textes dont les mots sont les plus proches.
  • la recherche floue (ex: améliore site). Le moteur peut rendre des résultats dont la syntaxe est proche.

Des critères plus variés

Le moteur permet de restreindre ou filter les résultats grâce à des critères complémentaires, comme par exemple:

  • une période temporelle 
  • une localisation ou un périmètre géographique
  • des catégories

Catégorisation des résultats

Afin d’aider l’utilisateur à affiner sa recherche, le moteur liste les catégories auxquelles les résultats appartiennent.

Des temps de réponses plus rapides

Que ce soit le volume de données à traiter ou le nombre de requêtes qui augmentent, la solution Elastic Search a été conçue pour être facilement dimensionnée.

Intégration technique facile

Grâce à une API REST, l’intégration technique de ce moteur de recherche se fait facilement grâce au javascript.

Préservation des performances du site web

Les serveurs Elastic Search sont complètement autonomes, ce qui permet de préserver les ressources des serveurs du site web. Peu importe le nombre de recherches effectuées, le reste du site n’est pas impacté en terme de performances.