6 апреля 2012 г.

VIAcode AzureAppSpy for Windows Phone. Взгляд на разработку изнутри.


В конце марта компания VIAcode опубликовала в Windows Phone Marketplace новый проект AzureAppSpy. Идея продукта состоит в том, чтобы следить за здоровьем Azure-приложений через содержимое диагностического хранилища (Windows Azure Diagnostics).

Возникновение идеи

Владимир:  Идея возникла легко. Сейчас на рынке программного обеспечения два тренда -  в “Облака” и в мобильные приложения. Мы хотели сделать что-нибудь полезное на стыке этих двух направлений в знакомой для нас области Manageability и Application Performance Management (все знают наш флагманский продукт AVIcode Intercept, который теперь входит в состав MS System Center). Пересечение и дало идею - написать приложение, которое будет полезно любому разработчику, тестировщику или бизнес аналитику, работающему для Azure. Все они хотят знать, работает ли их приложение, с какой нагрузкой, и готово ли оно к демонстрации. И это стало возможно прямо с Windows Phone без дополнительной конфигурации.

Разработка
 
Игорь:  С точки зрения разработчика имею сказать, что компания Microsoft в архитектуре Silverlight приложений для Windows Phone сделала всё не только для того, чтобы использование MVVM-паттерна было максимально удобным, но и чтобы отбить желание использовать какие-либо другие подходы. Также особенности платформы рушат многие .NET стереотипы – требуется некоторая перестройка сознания, чтобы ужиться с тем фактом, что асинхронно запущенный метод не стартует, пока не завершит работу запускающий метод, например. В целом же узнал много нового и в целом программировать под WP весьма приятно, особенно если не отступать от Best Practices, коих документацией предусмотрено для практически любой задачи.


Роман:  Изначально я рассматривал этот проект в большей степени как возможность для компании получить некоторый опыт в построении приложений для Windows Phone, потому как функционал самого приложения не казался реально полезным для разработчиков Windows Azure приложений. Однако после пары итераций - появления Desktop агента, появления возможности настраивать фильтры для ошибок и предупреждений - AzureAppSpy стало выглядеть как реальный дополнительный инструмент, полезный как для разработчиков, так и для администраторов. Надеюсь, что им будут пользоваться и оставлять отзывы, по результатам которых мы сможем дальше развивать приложение.


Тестирование 
Юлия: Не секрет, что в немногочисленной команде разработки приходиться выполнять, помимо прямых обязанностей, разнообразные дополнительные функции. А это уже бесценный опыт  :) 
На данном проекте я не только занималась разного вида тестированием (функциональным, интеграционным, локализационным, юзабилити и т.п.), но и изучала требования к публикации в Windows Phone Marketplace, помогала писать инструкции пользователю, что, скажу я вам, дело не только очень увлекательное, но и ответственное.
У нас в проекте принято подключать к работе всю команду – у каждого свой уникальный опыт, поэтому любые комментарии и замечания  всегда принимаются во внимание.
Что касается сертификации, то она была пройдена со второго раза - оказалось, что для тестирования Microsoft требует тестовый аккаунт. Зато ребята там подходят к этому делу серьезно – приложение в тестовых целях ими скачивалось 14 раз :)
  
Результаты

Владимир: Мы применили новые подходы и можем отметить следующие достижения:
  • AzureAppSpy - наше первое приложение, выполненное в стиле Metro;
  • AzureAppSpy - наше первое приложение, использующее REST API с мобильной платформы;
  • AzureAppSpy - наше первое сертифицированное приложение, распространяемое через Windows Phone Marketplace.
Проект прошел важный этап - публикацию, теперь мы будем собирать отзывы и  рекламировать наш опыт в разработке Azure и Windows Phone приложений. Возможно даже,что AzureAppSpy попадет в TOP 10, ведь наши потенциальные пользователи - Azure разработчики, использующие Windows Phone :)

2 комментария:

  1. а что такое стиль Metro ? В чём особенность тестирования и публикации по сравнению с iTunes и GooglePlay ?

    ОтветитьУдалить
  2. >а что такое стиль Metro ?
    http://en.wikipedia.org/wiki/Metro_Design_Language

    ОтветитьУдалить