Reputation:
Can you suggest a library I could use to instrument my .NET desktop applications to collect the UI usage information from users - how and when they move the mouse, navigate menus, click buttons, work with combo and list boxes, etc.
So after each user session or some period of time I could have a snapshot information about all user actions with my application.
If that library would come with the analysis module which could help to analyse the usage data, build a heat map and provide some recomendations on how to change the UI to make it better. That is - the "UI profiler". Or at the very least if it provide a "usage data player", so I could re-play the user session using the application on my local PC or in some schematic way.
The library itself should be a non-intrusive to allow "injecting" the UI stat collection code without changing the existing application (.NET) much.
If you could recomend a free/opensource library which does that - it would be great, but I don't mind to buy a commercial one if it does what I need.
Upvotes: 19
Views: 2498
Reputation: 4895
Disclaimer: I am the author for Gappalytics
You could use Gappalytics for code/UI event tracking, it is a very simple library which unlocks you a full potential of Google analytics.
Upvotes: 0
Reputation: 484
The Microsoft Silverlight Analytics Framework was ported over to WPF by Michael Scherotter.
If it works exactly the same as the SL version the it's fairly straight forward: you basically use analytics behaviors and triggers capturing the event you're interested in, e.g. button click. Behind the scenes it then captures data and sends this as an HTTP GET to the Url you specify when you hook up the root analytics endpoint.
Infragistics did their own implementation with custom events in controls like XamGrid and storing the data in SQL Server: http://igaf.codeplex.com/. Again this is SL-specific but the endpoint code shows you how they store the data in the db and the dashboard would give you some reporting ideas.
There is some documentation on the MSAF but it comes with the Silverlight installer so to get at it you may need to run the msi.
Upvotes: 0
Reputation: 14574
I'm not aware of anything that builds a visual "heat map" of an application in the way you are describing, so you would probably need to build something custom. The team I work on is currently building something for collecting analytics for one of our .NET WPF applications. We basically create custom events for different user interactions and state changes and send them to Mixpanel.
Mixpanel supports a lot of different types of analysis like funnels and segmentation which can be useful when trying to evaluate the value of new features or changes to a UI.
I've created a Mixpanel wrapper for .NET which is available on nuget for sending the data.
http://github.com/lucisferre/Mixpanel.NET
http://nuget.org/List/Packages/Mixpanel.NET
Upvotes: 2