Et si votre code passait à la vitesse supérieure ?

N'attendez plus d'être en production pour détecter vos variations de performance.

Essayez calcite !
calcite illustration

Pourquoi nos clients ont-ils besoin de tests de performance?

Notre solution calcite répond aux exigences de nos clients et aux obstacles que nous avons rencontré lors du développement de solutions orientées performance.

Cluster illustration

La vitesse, en tant qu'avantage commercial

À grande échelle, la vitesse de votre application peut avoir un impact direct sur vos revenus.

  • Un site internet trop long à charger signifie de nombreux visiteurs en moins. Chaque seconde supplémentaire correspond à une augmentation importante du nombre d'abandons.
  • Dans le monde des applications PC et mobile, de meilleures performances signifient une audience plus large, et donc un marché plus grand (comme le domaine du jeu video)).

Parce que la vitesse de votre expérience utilisateur est fortement corrélée à la taille de votre audience, garder un oeil sur ses performances c'est optimiser un avantage commercial.

Cluster illustration

Les machines ne peuvent pas toujours être changées

Lorsque les besoins de votre application augmentent, vous avez deux options:

  • opter pour des machines plus puissantes
  • optimiser votre application

Lorsque vous ne pouvez pas mettre à niveau vos machines, votre code DOIT respecter les exigences de performance.

deployment truck illustration

Détecter les problèmes de performance avant le déploiement

Le Monitoring est un processus qui observe les résultats de votre application dans un environnement complet.
Cela intervient tard dans le cycle de développement d'une application, tout en s'avérant couteux à mettre en place.
Même si certaines entreprises se permettent des déploiements partiels (dits de Canary) auprès de leurs clients, le temps d'itération reste un coût important.

C'est pourquoi nous vous proposons d'intégrer au plus tôt une partie de l'enquête et du suivi de performance, directement au sein de votre intégration continue, et ce de manière automatisée.
Notre solution vous aide à réduire la durée de développement et à détecter au plus tôt les problèmes de performance, avant même qu'ils n'atteignent vos utilisateurs !

git branch illustration

Travail d'équipe

Nous n'avons pas tous la même sensibilité aux problématiques et objectifs de performances, selon notre expérience et nos domaines d'expertise.
Avec calcite, nous pensons que les standards sont une des clés pour résoudre ce problème.

Parce qu'un bon artisan possède de bons outils, nous vous proposons une méthode et des références à partager avec toute votre équipe.
L'intégration avec votre CI permet à vos utilisateurs de comprendre en quelques instants les impacts de leurs modifications sur les performances.

skills requirements illustration

Suivre les performances en continu n'est pas trivial

À la différence des tests unitaires, un test de régression ne donne pas de résultat binaire : valide ou non.
Plusieurs exécutions d'un même test de performance peuvent donner des résultats différents.

  • Êtes-vous sûr de disposer d'un environnement de test reproductible ?
  • Mesurez-vous le bon élément ?
  • Combien de données avez-vous besoin pour obtenir des résultats représentatifs ?

En nous appuyant sur des algorithmes statistiques à l'état de l'art, nous limitons le nombre de faux positifs.
La pédagogie étant notre leitmotiv, nous ne vous laissons pas seuls devant la diversité des informations et des indicateurs de performance.

L'approche calcite

De la collecte à l'alerte, restez informés.

calcite illustration

Exécutez vos tests de performance dans la CI, nous nous occupons du reste.

Vous pouvez connecter votre outil de CI préféré avec calcite pour collecter et stocker vos données de tests.

Nous sommes déjà compatibles avec la plupart d'entre eux (Github, Gitlab, CircleCI, AppVeyor, Azure DevOps...).

À chaque étape,
nous comparons les résultats

Détecter des anomalies dans de grandes series temporelles, en particulier avec des tests de performance, n'est pas une tâche aisée.

Avec calcite, nous adaptons notre technologie, pour détecter le plus rapidement possible toute évolution au sein de vos données.

Notre objectif ?
Que vous n'ayez pas besoin d'être un expert en statistique pour réaliser une analyse de performance pertinente.

detection
alerts

Une anomalie a été détectée ?
Soyez avertis dans l'instant !

calcite est intégré avec vos plateformes Git préférées (Github, Gitlab, Azure DevOps...).
Toutes les évolutions sont signalées directement dans vos pull requests !

Vous préfèrez un message ?
calcite est compatible Slack, E-Mail et SMS !

Alors, prêt pour le développement dirigé par la performance  ?

Plus qu'un outil, calcite est une méthode qui place la performance au cœur de votre cycle de développement.

rocket

Comment l'utiliser ?

Tout simplement, avec une interface console survitaminée (CLI) et une application web dynamique.

cli app screenshot

Formattez et uploadez vos données avec notre application CLI

Avec calcite CLI, un seul fichier de configuration dans votre projet suffit à extraire vos données depuis vos rapports de performance.

Parce que nous aimons vous rendre la vie plus simple, nous avons déjà des fichiers de configuration pour de nombreux formats de rapports! (JMeter, Gatling, Google benchmark...)

Et ensuite ?
En une seule commande, c'est parti pour l'upload !

Configurez, explorez et enquêtez avec notre application Web

Vous voulez plus d'informations qu'un tableau dans une console ?
Essayez donc notre application web.

Avec elle, plongez au coeur de vos données.
Nous fournissons de nombreux utilitaires pour étudier, comparer et analyser.

Comprendre les régressions de performances et leurs origines n'aura jamais été aussi simple.

L'application web est également le meilleur endroit pour configurer votre workflow et pour partager vos rapports de performance avec votre équipe ou vos clients.

web app screenshot

Envie d'en voir plus ?

Nous sommes actuellement en pleine alpha fermée.
Contactez-nous pour discuter de votre projet et essayer notre approche !

Quelques cas d'utilisation

Aujourd'hui, calcite répond à de nombreux besoins en terme de suivis de tests de performances.

microchip

Systèmes embarqués

Les systèmes embarqués ont des contraintes fortes concernant la performance, jusqu'aux exigences du temps réel.
Non seulement les logiciels doivent être rapides, mais ils doivent également composer avec des ressources limitées.

En plaçant la performance au cœur de votre cycle de développement, vous vous assurerez le respect de votre budget alloué et le fonctionnement de vos évolutions sur les machines déjà déployées.

function as a service

Cloud & Fonctions en tant que Service (FaaS)

Avec les offres AWS Lambda, Azure Functions, Google Cloud Functions, vous payez pour le temps et la mémoire nécessaires à votre programme.
Avec calcite, maîtrisez au plus tôt vos coûts d'exécution !

video game controller

Applications multimédia

60 images par seconde correspond aujourd'hui à la norme pour un joueur PC. Cela signifie que la boucle principale doit s'exécuter en moins de 16 ms.
Un seul dépassement sera considéré comme un bug pour vos utilisateurs. Dès lors, ils n'hésiteront pas à vous mettre sur la touche.

calcite s'inscrit en tant que partenaire idéal pour vous aider à détecter les régressions de performance et les changements de stabilité de votre application.

data processing

Traitements de données

Qu'il s'agisse de génération de fichiers PDF, d'importation de feuilles de calcul ou d'analyse d'images, le traitement et le chargement des données sont les principaux goulots d'étranglement de performance.
Ces opérations peuvent souvent avoir un impact clair sur la productivité des utilisateurs.

Avec calcite, préservez la productivité de vos utilisateurs en minimisant le temps d'attente de leurs résultats !