Silverlight Analytics Framework
Faire une application Silverlight c’est bien.
L’exposer sur le web, c’est mieux.
Avoir des utilisateurs c’est top.
…Mais combien d’utilisateur j’ai ? Et que font-ils sur mon application ?
Genre la feature de la mort qui tue que j’ai mis 2 semaines à dev est-elle utilisée ?
Appart aller faire du porte à porte auprès de vos utilisateurs, ce genre d’informations n’est pas facile à obtenir (quoique le porte à porte ne l’est pas non plus)
Bien sûr il est possible d’envisager de se recoder une petite librairie qui va loguer l’ensemble des actions de vos visiteurs et ensuite passer encore des jours entiers à vous faire un panel pour voir l’ensemble de ces informations de façon pratique.
Ou bien…il vous suffit d’utiliser Silverlight Analytics Framework qui fait le café pour vous.
Ce Framework est juste bien fait
.
Son nom devrait je trouve évoluer car même si au départ penser pour du Silverlight, il est maintenant compatible avec l’ensemble des technologies WP/E (WPF, Silverlight, WP7).
Son but est d’offrir de manière très simple une manière de logguer les actions des utilisateurs sur nos applications et au lieu de refaire le monde, utilisez les panels qui existent déjà pour nous afficher l’ensemble des informations collectées.
Prenons un exemple concret :
Vous avez une page de votre application qui porte le doux nom de MyKillerFeature qui contient un truc qui déchire tout sur le plan technique, il serait bon de savoir si vos utilisateurs s’en servent.
Le Framework va vous permettre de savoir d’un part si vos utilisateurs cliquent sur le lien de votre page mais également le temps qu’ils passent dedans et/ou les actions qu’ils font dedans.
Et c’est là que vous allez vous rendre compte que même pas 10% vont voir et qu’en moyenne ils y restent moins de 5 secondes tellement la KillerFeature est sans intérêt pour eux, simple et pauvre user lambda:).
Mais comment cela marche me direz-vous ?
Simplement je répondrais !
Tout ce fait dans Blend (rien ne vous empêche de loguer des choses dans le code-behind !) d’une façon vraiment simple et a la porté du premier designer venu !
Comme nous l’avons vue, la force du Framework est de se reposer sur l’existant en termes d’outil d’analyse, donc avec un peu de chance, votre favori est déjà géré par le Framework.
Une fois le Framework installé, ouvrez votre page xaml puis glisser le behavior d’analyse qui vous convient sur le layout principal, pour ma part je vais prendre googleAnalytics et le configurer avec le code UA obtenu sur mon compte Google.com/analytics.
La marche à suivre étant la même avec les autres outils d’analyse, il vous suffit de rentrer votre code de tracking(ou identifiants divers).
Voilà, nous avons maintenant fait le plus dur, oui oui !
Lors de l’ouverture du menu behavior vous avez pu voir qu’il en existe beaucoup :
· Plusieurs du type *Analytics, comme nous l’avons vu ce sont nos outils d’analyse et rien ne vous empêche d’en mettre plusieurs à la fois.
· Des Track*, ce sont ces behaviors qui vous permettent…et bien de tracker les actions utilisateurs.
Prenez un exemple simple, glissez un TrackAction vers vos boutons de menu, vérifiez que leur events sont bien réglés sur « Click » et…et bien c’est tout.
Au runtime, les behaviors vont « communiquer » ensemble pour transmettre les informations vers votre interface d’analyse, dans mon cas Google analytics.
A noter que lors de la collection des events, chaque Track* remonte le nom du contrôle auquel le behavior est attaché, il est donc judicieux de donner des noms « propres » a ses contrôles
.
Je ne vais pas répéter longuement la doc en vous listant l’ensemble des behaviors disponible mais en bref :
-actions de type event classique
-action de navigation
-action de formulaire (quelles sont le top5 des recherches faites ?)
-action de type Media (combien de temps l’user moyen regarde ma vidéo avant de la stopper ?, est-il passé en fullscreen ?)
-bien d’autre (et rien ne vous empêche bien sûr d’ajouter les vôtres au besoin.
Voilà un Framework qu’il est bon et pratique
.
Qui plus est, bien fait, on y retrouve des fonctionnalités agréable telles que :
· Gestion des applications Out of Browser
· Gestion du mode offline (envois des stats une fois online)
· Gestion totalement par behavior, ne réclame aucune ligne de code
· Gestion du A/B Testing (offrir une interface particulière (VisualState powered) à 10% de ses users et voir leurs réactions)
Et une liste d’outils d’analyse qui s’agrandit encore régulièrement :
La liste ne vous convient pas ? Votre outil n’est pas dessus ?
Un behavior vous permet d’indiquer un endpoint « home-made » pour les datas donc ajouter votre panel d’analyse perso ne devrait pas être bien long.
Et ensuite rien ne vous empêche de faire un behavior spécial pour votre panel et l’offrir (ou non) a d’autre utilisateur.
Le résultat ? Dans le cas de Google analytics, les statistiques sont disponible chaque nuit sur les coups de minuit, voici celle que j’ai récupéré pour mon petit sample :
On retrouve les catégories que j’ai indiquées dans mes behavior et la répartition du type d’action qui ont été logués.
Si on explore un peu les sous menu, on peut avoir de nombreux détails.
A vous d’avoir une nomination correcte pour vous y retrouver.
Voilà, je pense que nous avons fait un tour rapide de qu’est-ce que Silverlight Analytics Framework et comment l’utiliser pour obtenir un maximum d’information sur ses utilisateurs.
Mettre en place une solution de surveillance sur ses sites est devenu une habitude/obligation depuis quelques années maintenant mais ce n’est pas encore un réflexe au niveau applicatif.
Pourtant nous avons beaucoup à apprendre des habitudes de nos utilisateurs
.
Je vous invite tout de même a prévenir sur vos applications que des informations quand a son utilisation sont envoyées
, offrir un moyen d’activer ou non cette option est également des plus conseillé pour éviter tout ennuis.
L’activation ou non peut ce faire simplement avec quelques lignes de code.