La seule maîtrise des compétences ne suffit pas, à elle seule, pour garantir la réussite d’un projet. En plus d’une bonne méthodologie de gestion la réalisation doit s’appuyer sur un cadre concret où des outils sont mis à disposition des développeurs. Bien que ces outils ne participent pas directement à la valeur ajoutée du projet ils garantissent un environnement de développement stable et borné qui permet de maximiser la sécurité du projet.
C’est pourquoi nous sommes convaincus qu’un tel environnement est au moins aussi important que le développement du projet lui-même. Ainsi, dans le cadre de notre centre de services, nous avons mis en place toute l’infrastructure nécessaire pour concevoir une véritable usine logicielle. Celle-ci nous permet de réaliser vos projets dans les meilleures conditions.
Fort de notre expérience dans le développement d’applications nous avons identifiés six grandes thématiques qui se retrouvent dans chacun des projets informatiques auxquels nous avons participé. Notre usine logicielle, au travers de serveurs et de solutions déployées dans notre infrastructure vise à apporter des solutions concrètes et pragmatiques à chacune des thématiques suivantes :
- La gestion des sources du projet afin de suivre l’historique des changements, créer plusieurs versions, créer des branches de développement, mais aussi, et surtout, permettre un accès concurrentiel des ressources à une équipe composée de plusieurs développeurs.
- L’industrialisation du projet au travers d’un outil unique qui centralise les dépendances et permet également de compiler et construire l’application afin de produire les livrables
- Une plateforme de tests unitaires permettant à l’équipe de développement de pouvoir s’assurer de la qualité de ses développements et de la non régression du code au fur et à mesure des livraisons itératives
- Une plateforme permettant de mesurer la couverture de code par l’ensemble des tests unitaires. Celle-ci permettant entre autre d’effectuer plusieurs mesures sur la qualité générale du code du projet (règles checkstyle, PMD, bonnes pratiques, etc) et de fournir des métriques permettant de mesurer l‘évolution de la qualité du projet dans le temps
- Un moteur d’intégration continue qui s’appuie sur les outils précédents afin de les exécuter tous les jours puis de fournir un rapport après chacune des exécutions
- Enfin un outil de gestion et de suivi des changements et des défauts qui permet à nos clients comme à nos équipes de mettre en place des feuilles de route pour des livraisons correctives.