• English
  • Français
Retour à la page d'accueil
demo
evaluation
sabonner
FAQ

De manière schématique, on trouve deux catégories de produits concurrents au Cockpit :

  • des outils techniques réservés aux développeurs. Certains de ces outils sont parfois gratuits, mais leur coût de mise en place ne doit pas être négligé : appropriation de l'outil, sélection et paramétrage des règles, paramétrage pour le projet, formation des développeurs, ... Nos retours d'expérience montrent qu'en plus du coût caché, il est difficile de mettre en place un processus pragmatique qui soit réellement suivi par les développeurs.
  • des solutions commerciales avec une couverture fonctionnelle plus large et qui s'adressent aux manageurs comme au développeurs. Deux écueils récurrents apparaissent pour ce type de solutions : leur coût, qui les réserve aux projets les plus conséquents, et leur complexité. Cette complexité se traduit à l'installation, effectuée chez le client généralement à l'aide d'un consultant, à la configuration et à l'utilisation.

Le Cockpit a été conçu dès le départ avec des objectifs qui le rendent unique :

  • il propose une démarche pragmatique : plutôt que de noyer les acteurs du projet sous des flots de chiffres et de leur imposer des règles de qualité théoriques et parfois sur-dimensionnées par rapport à leurs besoins, les exigences techniques sont définies de telle sorte qu'elles puissent être réellement suivies ;
  • il s'adresse autant aux manageurs qu'aux développeurs. Les manageurs trouveront des tableaux de bord leur donnant une vision synthétique et les développeurs pourront accèder aux détails des violations, jusqu'aux lignes de code concernées
  • il ne nécessite aucune installation chez le client et n'impose aucune contrainte d'intégration gràce à son modèle SaaS (Sofware as a Service). L'initialisation de la première analyse prend moins de 2 heures, les suivantes pourront être automatisées.
  • le Cockpit est proposé selon un mode d'abonnement mensuel avec des prix hyper-compétitifs. Aucun coût caché d'installation voire de résiliation, le client peut arrêter ou suspendre son abonnement à tout moment.
Le Cockpit supporte actuellement les deux technologies de développement modernes les plus courantes, dans leurs différentes versions :

D'autres langages seront supportés par la suite, mais notre expertise sur ces 2 technologies majeures garantit à nos clients des règles pertinentes.

Nous analysons le code source ainsi que le code compilé.

Le code source est utile pour des règles qui doivent être appliquées avant les éventuelles optimisations du compilateur. Il est également utilisé pour vous aider à localiser les alertes au sein de votre code

Certaines règles se basent plutôt sur le code compilé parce qu'elles introspectent l'état du programme lors de son exécution. Nous analysons donc le code compilé en plus du code source.

Enfin, nous nous basons aussi sur les bibliothèques tierces utilisées par le programme afin d'être plus précis pour des règles nécessitant des informations complémentaires, par exemple liées à l'héritage ou aux arbres d'appels entre les différentes classes.

En partenariat avec le laboratoire LIESP de l'INSA de Lyon ainsi que du centre de recherche CETIC, nous avons réalisé une sélection des règles qui nous paraissent les plus pertinentes parmi les centaines de mesures que nous recueillons

On trouve notamment les catégories suivantes :

  • des mauvaises pratiques : écritures de code qui entraînent des bugs, qui ne sont pas conformes aux standards, qui nuisent à la maintenabilité, ...
  • des métriques : mesures quantititatives telles que des nombres d'instructions, la complexité cyclomatique, des mesures de couplage/dépendances, des taux de commentaires, ...
  • des duplications : copiers/collers au sein du code, strictement identiques ou avec des variantes mineures

Le Cockpit propose également des règles constituées à partir d'autres règles unitaires, pour croiser les résultats et proposer ainsi des mesures plus fines et consolidées.

Le travail de mise au point des règles a nécessité des investissements en terme de recherche, d'implémentation, de paramétrage et de tests. Plusieurs facteurs ont guidé ce travail :

  • nous avons bénéficié de l'apport théorique et de recherche du laboratoire LIESP de l'INSA de Lyon ainsi que du centre de recherche CETIC
  • nous nous sommes appuyés sur des standards prévalant pour les différentes technologies (tels que MSDN pour C#/.Net).
  • nous avons retenu des bonnes pratiques émises par des experts des communautés techologiques
  • enfin, nous avons sollicité nos propres expériences de développement effectuées dans de très nombreux projets et continuons à alimenter le référentiel de règles avec notre expertise. Nous sommes aussi les premiers utilisateurs du Cockpit :-)

Suivant l'importance du projet, la complexité du paramétrage et la charge liées aux autres analyses en cours, la durée de traitement d'une analyse se chiffre en dizaines de minutes voire en quelques heures.

Nous nous engageons dans tous les cas à fournir les résultats sous 24 heures, même si ces résultats sont généralement accessibles bien avant.

Un premier niveau de paramétrage est déjà effectué par Kalistick à l'initialisation du projet. Le responsable du projet remplit en effet un questionnaire utilisé pour cibler son profil qualité. Les règles de détection sont alors automatiquement sélectionnées et paramétrées suivant les résultat de ce questionnaire.

Par la suite, le responsable du projet peut affiner ce paramétrage à tout moment directement sur le Cockpit, à l'aide d'une IHM simple. Il peut par exemple désactiver des règles qu'il ne juge pas importun de corriger. Ces désactivations peuvent porter sur tout le code du projet, ou sur certaines parties seulement, par exemple sur du code généré.

Le pilotage de la qualité du code devrait toujours être initié dès les premiers développements. Plus il est intégré tard dans le projet, plus les actions correctives sont complexes à mener :

  • les violations sont généralement nombreuses, il est difficile de tout corriger et la progression semble lente pour les développeurs et les manageurs ;
  • les corrections sont souvent risquées en terme de régression : il est délicat de modifier le code d'une application qui fonctionne sans maîtriser toutes les répercussions possibles. La charge de test devient très lourde.

Cependant, le Cockpit propose une fonctionnalité novatrice pour faciliter la mise en oeuvre progressive d'une démarche qualité : le mode RAZ (remise à zéro). Le principe consiste à "oublier" les violations existantes et ne vérifier que les nouvelles violations. Les risques de régression sont évités et la qualité des nouveaux développements reste garantie.

Le paramétrage du mode RAZ est géré par le client directement dans l'IHM du Cockpit, à partir des résultats d'analyse de son existant. Au fur et à mesure des évolutions de son projet, le client pourra modifier son paramétrage de désactivation pour s'efforcer de corriger peu à peu le code existant par lots successifs.

Nous avons choisi de n'imposer aucune installation chez le client. De ce fait, les analyses sont intégralement traitées sur nos serveurs à partir du code source du projet, qui est donc stocké sur nos serveurs sécurisés.

La sécurité maximale des sources de nos clients constitue l'une de nos préoccupations majeures. Plusieurs mécanismes de sécurité ont été mis en place pour répondre à cette problématique, certains sont cités sur la page Sécurité.

De manière générale, on retiendra que les sources sont toujours stockés de manière cryptée sur nos serveurs sécurisés à partir d'un mécanisme de sécurité basée sur une paire certificat/clé privée. De plus, le client peut décider à tout moment (et même automatiquement) de supprimer ses sources sur nos serveurs.

Le Cockpit dispose d'une gestion d'accès évoluée. Les utilisateurs sont évidemment restreints à leur(s) projet(s), mais au sein d'un projet, chaque utilisateur dispose de droits qui lui sont propres. Il faut par exemple disposer de droits spécifiques pour lancer une nouvelle analyse, paramétrer des masques pour désactiver des règles, lancer la suppression des sources sur le serveur, ...

Nous conseillons donc à nos clients d'utiliser un compte d'accès indépendant pour chaque utilisateur afin de mieux sécuriser les actions effectuées.

Les analyses proposées par le Cockpit sont encore mieux valorisées quand elles sont intégrées au processus d' intégration continue du client car elles fournissent des indicateurs qui permettent de juger de la qualité du livrable.

Le Cockpit a été conçu pour s'intégrer le plus facilement possible dans les solutions d'intégration continue. Cette intégration est réalisable au travers de plugins proposés pour les serveurs les plus courants : Visual Studio Team System, CruiseControl, Hudson, ...)

De plus, des extensions à des outils de construction du type MsBuild, Ant ou Maven, sont également disponibles.

Le Cockpit fournit des flux RSS/Atom qui peuvent être intégrés dans un portail interne ou public (iGoogle, Netvibes, ...) ou n'importe quel aggrégateur RSS (dont la plupart des navigateurs web actuels).

Chaque utilisateur peut s'abonner à des flux pour récupérer une sélection d'indicateurs ou un suivi des analyses

Le Cockpit a été conçu pour accepter de nouvelles règles très facilement. Ces règles sont définies dans un format qui nous est propre mais notre architecture accepte également des règles d'outils tiers tels que Gendarme, FindBugs, PMD...

De plus, nous pouvons également proposer d'intégrer des règles spécifiques à votre projet dans le cadre d'une prestation complémentaire.

Kalistick est une jeune entreprise mais avec un potentiel déjà reconnu et qui offre déjà des garanties.

Kalistick a été primée par deux fois au concours national d'aide à la création d'entreprises de technologies innovantes du ministère de la recherche, avec à la clé des aides financières conséquentes qui ont renforcé son développement à venir. Elle a également été labellisée Jeune Entreprise Innovante (JEI).

Kalistick a bénéficié du soutien de Créalys, d'OSEO et de Novacité.

De plus Kalistick est membre du Réseau Entreprendre et a été retenu par Microsoft dans le cadre de son programme IDEES.

Enfin, parmi nos clients qui ont choisi de nous faire confiance se trouvent des grands comptes tels que la Société Générale, la SNCF, Schneider Electric ou Bayer Crop Science

Notre objectif principal est de concentrer nos efforts autour du Cockpit pour enrichir constamment ses fonctionnalités et le référentiel de règles. A ce jour, nous n'avons pas vocation de développer une activité de services type SSII en marge de cet objectif.

Cependant, l'accompagnement de nos clients dans la compréhension des résultats d'analyse et dans la conception d'un plan d'amélioration est pour nous une priorité. Nos experts peuvent ainsi vous conseiller et assister vos équipes de développement.