![]() |
+7 (495) 229-0436 | ![]() |
shopadmin@itshop.ru | 119334, г. Москва, ул. Бардина, д. 4, корп. 3 | ![]() |
![]() |
![]() |
|
|
Автоматическая отправка проблем приложения в TFS09.11.2011 15:44
Dmitry Andreev
Обратная связь между пользователями и группой разработки очень часто является важным фактором успех проекта, особенно на стадии пилотной эксплуатации. Заказная или внутренняя разработка приложений требует, чтобы проблемы, которые возникают у пользователей, решались как можно быстрее. Самым привычным способом коммуникаций при этом является телефон или электронная почта. Такой способ не всегда хорошо работает. Например, если идет пилотная эксплуатация, пользователи могут не знать куда звонить или отправлять письма с описанием проблем. К тому же, качество таких коммуникаций может сильно зависеть от опыта пользователей. Если команда использует TFS для организации процессов разработки, то идеально чтобы проблемы, которые возникают у пользователей регистрировались в TFS проекте в виде ошибок. В некоторых случаях возможно даже предоставление доступа к Team Web Access пользователям разрабатываемой системы, для того чтобы они сами могли создавать ошибки. Но это тоже не всегда удобно, так как пользователи могут не обладать необходимыми навыками. ![]() Очевидным выходом из положения является интеграция приложения с Team Foundation Server для предоставления пользователю возможности прямо из эксплуатируемой системы сообщить о возникших проблемах. При этом само ПО может собрать дополнительную диагностическую информацию и создать баг на сервере. TFS снабжен программным интерфейсом который позволяет работать практически со всеми компонентами, в том числе управлять рабочими элементами. В простейшем случае достаточно подключить две библиотеки Microsoft.TeamFoundation.Client.dll и Microsoft.TeamFoundation.WorkItemTracking.Client.dll и у вас уже будет возможность создавать и управлять рабочими элементами. Например, код который создет рабочий элемент очень краток: 1: projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://tfs_server_address:8080/tfs")); Подключить его к вашему приложению не составит никакого труда. ![]() Сложности и их решения В случае если вы разрабатываете настольное приложение, такой способ обладает рядом недостатков. В первую очередь они связаны с аутентификацией и авторизацией пользователя на сервере TFS, и требуют создания учетной записи на сервере, или его имперсонации. Так же на компьютер пользователя в обязательном порядке требуется установка Team Foundation Server Client, что может быть не всегда удобным. Таких недостатков лишено серверное приложение, например веб-сайт на базе ASP.NET. Самым очевидным решением в случае с настольными приложениями видится создание веб-сервиса и его вызов из приложения. В подготовленном примере можно увидеть реализацию трех вариантов взаимодействия обыкновенного пользователя с TFS В первом случае мы имеем следующую форму: ![]() Которая позволяет простому пользователю заполнить информацию не задумываясь о многих деталях как если бы это пришлось делать с помощью TFS Web Access. Эта форма в последствии вызывает код который и создает баг на сервере TFS. Для того чтобы проиллюстрировать последние два варианта подготовлен пример Windows Forms приложения которое при нажатии на кнопку генерирует исключение. ![]() В месте обработки исключения собирается информация о произошедшем (в нашем случае это просто StackTrace). ![]() Далее в зависимости от отмеченного checkbox вызываются методы отправки данных об ошибке с помощью реализованного нами веб-сервиса, либо напрямую в TFS с использованием имперсонации. ![]() Для того чтобы была возможна имперсонация текущего пользователя создан специальный класс ImpersonatedTFSCollection в котором напрямую задан пользователь от лица которого будет осуществляться соединение с TFS, потому что пользователь возможно не знает таких деталей. ![]() В дальнейшем работа с методами TFS ничем не будет отличаться от той которая реализована в примере на базе веб-сервисов. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
О нас |
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.
На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям. Хорошие отзывы постоянных клиентов и высокий уровень специалистов позволяет получить наивысший результат при совместной работе. В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.
|
119334, г. Москва, ул. Бардина, д. 4, корп. 3 +7 (495) 229-0436 shopadmin@itshop.ru |
|
© ООО "Interface Ltd." Продаем программное обеспечение с 1990 года |