Late March 2011 AzureAppSpy appeared in the Windows Phone Marketplace. It was one of the employee-powered projects done in order to conquer the new platform and learn new experience for the company. The app tracks the health of your Azure applications using Windows Azure Diagnostics. Folks who tried the app are really excited about it, so we decided to share some insider perspective on the making of the AzureAppSpy.
I guess coming up with an idea was easy. Currently there are two clear trends on the market – “go Clouds” and “go Mobile”. At the same time VIAcode is also well known for the Manageability and Application Performance Management expertise (remember the AVIcode Intercept Studio which is the part of the System Center now?). The intersection of these three resulted in this idea: what if we create an app for developers, QA engineers or analysts who work with Azure, so that they know how their app runs, what is the load, is it ready for demo, etc. They twist is being able to do this on the go, right from your windows phone.
My experience on this project suggests that Microsoft not only invested in making MVVM pattern a great fit for Silverlight and WindowsPhone, they also did a fair amount of work to discourage the use of other ways to do things. I had to sacrifice some stereotypes I developed over the years of coding in .NET. For instance, it does take a different mind-set to accept the face that asynchronously started method won’t start till the caller method exits. I learned a few new things and my overall experience was rather enjoyable. I guess it all works out just fine if you stick with the best practices and read the docs.
Initially I looked at this project as a way to build some Windows Phone development expertise. I did not share the Vlad’s excitement about the idea, nor the whole application appeared to be an extremely useful from the Azure developer perspective. Nevertheless few iterations down the road (especially when an desktop agent, error and alert filtering came around) it started to look a real thing. Right now it does look like a solid tool for both developers and administrators and I we are looking forward to receiving feedback from the end-users to make the app even better.
Being a QA engineer you never do just QA stuff. It is always some lateral work and therefore an opportunity to gain valuable experience. Besides applying a variety of the testing techniques (such as functional, integration, localization and usability testing), I had to deal with the Windows Phone Marketplace apps certification and publishing, wrote the manuals, etc. New experience comes with the greater responsibilities. In VIAcode it is common practice to plug in everyone into the process. Everyone has unique personal experience and therefore is perceived as a valuable contributor.
As for certification for Windows Phone Marketplace, we made it in with the 2nd attempt. Turns out Microsoft wants to have a test account for certifying the app. I was rather surprised by how thoroughly they were testing it, apparently they downloaded the app 14 times during the tests.
AzureAppSpy is our first application in Metro style, using REST API from the mobile platform, certified and distributed through Windows Phone Marketplace. It was a great experience for the team, and now we are looking forward to hear from the real users of the AzureAppSpy in Microsoft and beyond.
VIAcode AzureAppSpy team, cross-post from VIAcode employee blog.