Какую информацию вы запрашиваете при решении проблемы на клиентском ящике с помощью настольного приложения?

StackOverflow https://stackoverflow.com/questions/2357639

Вопрос

Мы пишем настольное приложение для Windows, которое устанавливается на несколько тысяч компьютеров, к которым у нас нет доступа.Когда один из этих пользователей сообщает об ошибке, даже если описание достаточно подробное, есть и другая информация, которая может оказаться полезной.

Сейчас мы работаем над автоматизированным агентом обратной связи, а это значит, что у нас будет доступ к очень подробной информации.Но мы, как дети в кондитерской, не знаем, с чего начать. Какую информацию вы бы включили в свой пакет отзывов в том же случае? Что может помочь нам воспроизвести ошибку?

Что у нас есть на данный момент:

  • Номер версии нашего приложения,
  • ОС и номер версии ОС
  • Информация о прокси
  • Версия .NET и номер обновления
  • Информация, специфичная для нашего приложения (например.версии данных)
  • Журналы доступа и ошибок

Обратите внимание, что это похоже на этот вопрос, однако мы не столько заинтересованы в получении информации о сбое программы, сколько о том, когда у пользователя возникает ошибка.

Редактировать:Уточнение:не спрашивать, какую информацию пользователь должен предоставить в случае ошибки, а какую информацию мы должны собрать программно?

Это было полезно?

Решение

Даже если у вас есть вся эта информация, воспроизвести проблему может быть сложно.Когда пользователи описывают, как они создали ошибку, они часто ошибаются относительно ключевых шагов — им трудно понять, какие области являются критическими, если они не знают внутренней работы приложения.Возможно, вы захотите реализовать способ отслеживания действий пользователя, например, обработку событий корневого уровня или какие-либо другие средства - если у вас есть функция отмены/повтора, то я уверен, что этого будет достаточно.Затем вы можете включить последние (x) шагов цепочки действий в отчет об ошибках.

Другие советы

Редактировать:Мне кажется, я неправильно понял ваш вопрос.Я думал, вы говорите о том, какую информацию следует получить от клиента, сообщившего об ошибке, а не уже планируете то, что я здесь описываю.В любом случае оставлю это для справки.

В аналогичной ситуации, несмотря на меньшее количество пользователей, в нашем приложении появилась кнопка «Журналы пакетов для поддержки», которая создаст zip-файл со всеми файлами журналов и открытым в данный момент файлом проекта, если таковой имеется.Вся остальная информация, которую вы описали, уже является частью одного из файлов журналов.Таким образом, клиент может удобно отправить нам ZIP-файл, что можно сделать из главного окна приложения, не открывая файл проекта и не подключаясь к сетевому интерфейсу, что является двумя основными моментами, когда что-то может пойти не так.Это делает работу намного проще, чем полагаться на то, что пользователь предоставит обратную связь «вручную».

Помимо этого, должны быть доступны точные действия по воспроизведению проблемы.Большая часть этого обычно находится в самом файле проекта (который находится в полученном нами ZIP-файле), при этом отсутствует всего несколько шагов.

Вещи, которые кажутся важными для этого, кроме того, что вы уже перечислили:

  • Информация о пользователе/аккаунте.Это может помочь решить проблемы с разрешениями.Возможно, вы захотите включить такие вещи, как часовой пояс, локаль, тему Windows.
  • Конфигурация приложения, включая место его установки.
  • Как уже было сказано, текущий файл, с которым работает пользователь, ведь это может быть причиной проблемы.
  • Пользовательские настройки, т.е.данные, которые приложение хранит для каждого пользователя.Видел странные вещи с ними.Список MRU также может быть полезен.

Помимо основного состояния приложения (версия, конфигурация и т. д.), наиболее важной информацией является:

  • Шаг(и), необходимый(ые) для воспроизведения ошибки или ошибки, включая используемые входные данные, если это возможно.
  • Ожидаемый результат
  • Фактический результат
  • Контактная информация на случай, если вам понадобится связаться (если ваше программное обеспечение используется анонимно)

Этой информации будет достаточно, чтобы решить 99,9% проблем.В остальном, следите за ситуацией и получайте любую подробную информацию, которая, по вашему мнению, поможет решить проблему (которая, будем надеяться, на этом этапе будет гораздо лучше понята).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top