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 🙂


Related Posts



2 comments

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

Leave a Reply

Your email address will not be published. Required fields are marked *