La révolution industrielle du 18è siècle a impacté de manière significative la performance de milliers de métiers.
L’industrialisation a été extrêmement bénéfique et a permis, 200 ans plus tard, la création de tout ce que nous utilisons aujourd’hui au quotidien.
Mais en informatique, la rationalisation drastique de la production de logiciel permettant de réduire les actions manuelles, répétitives et sans intérêt n’en est qu’à ses prémices. En effet, en dépit d’une innovation technologique permanente, le développement logiciel demeure sur le terrain un processus long, coûteux, à l’issue parfois incertaine, et très dépendant de facteurs humains.
A l’ère de l’agilité et des démarches DevOps, l’automatisation est plus que jamais d’actualité et, par conséquent, l’automatisation des développements également.
Pourquoi ?
Les bénéfices liés à l’industrialisation des développements et des processus associés sont multiples. On pense bien évidemment à la réduction des temps de déploiement et donc des coûts des projets de développement. L’enjeu est également de réduire l’intervention humaine sur les tâches répétitives, de limiter les risques d’erreurs et, surtout, de permettre aux développeurs de se focaliser sur des tâches à plus haute valeur ajoutée.
Convaincus que le métier du développement logiciel reste encore trop largement artisanal, SoftFluent s’est donné l’ambition de contribuer à son industrialisation.
Nous avons donc développé notre fabrique logicielle orientée modèle (historiquement CodeFluent Entities et désormais SoftFluent CodeModeler). L’outil est intégré à Visual Studio (à partir de 2008) et permet de générer une partie significative des applications (scripts, code, web services, interfaces utilisateurs) avec une qualité d’éditeur de logiciels, ce qui assure une capacité à évoluer optimale et une maintenance facilitée et réduite.
L’industrialisation permet d’automatiser les tâches de programmation qui devraient être faites à la main notamment lorsqu’il y a nécessité de suivre une structure et d’implémenter des motifs (« patterns« ) de la même manière pour un nombre significatif d’éléments.
Cela constitue non seulement un gain de temps non négligeable mais limite grandement le risque d’erreurs et réduit considérablement la dette applicative.
Comment ça marche ?
A partir d’un modèle classique entité-relation qui est bien connu et maitrisé des développeurs, SoftFluent CodeModeler génère automatiquement le code source .NET couvrant les problématiques techniques transverses telles que la sécurité, la persistance des données, la localisation, le cache de données, les règles métier, la convention de nommage, les propriétés… Le code est généré de manière continue sur toutes les couches de votre application en préservant votre code spécifique et permet aisément l’adoption des méthodologies agiles.
Il est utile, à l’état de l’art technologique, déjà testé, déjà éprouvé en production, documenté et n’aura aucune conséquence néfaste sur la maintenance. Rien qu’en relisant le code généré, on apprend énormément sur les best-practices de code en .NET et c’est un excellent moyen de monter progressivement en compétence.
Intégré à Visual Studio, SoftFluent CodeModeler génère les fondations de votre application. En générant les couches d’accès aux données en C# avec les scripts de base de données SQL Server, SoftFluent CodeModeler permet de minimiser les tâches répétitives voire le développement de Framework internes. Résultat : votre besoin métier est toujours en adéquation avec le code de votre application et vous pouvez vous concentrer sur les parties les plus intéressantes qui font votre valeur ajoutée.
N’hésitez pas à tester ce nouveau produit, SoftFluent Code Modeler, qui cible les architectures .NET les plus récentes et en particulier .NET Core.