Хорошие ресурсы для разработки инструмента отслеживания ошибок? - PullRequest
0 голосов
/ 18 февраля 2009

Я планирую написать инструмент отслеживания ошибок для компании. Я еще не принимал участие в проекте, но хотел бы узнать ваши мысли. Я довольно хорошо разбираюсь в C ++ и сейчас изучаю C #. Я также знаю немного Javascript.

Сколько времени потребуется для разработки базового инструмента отслеживания ошибок? (Со мной и младшим разработчиком, работающим над этим).

Есть ли хорошие ресурсы, чтобы узнать о том, как их написать? Есть ли какая-нибудь книга, которая объясняет основы? Любая онлайн-справка о том, как действовать?

Ответы [ 9 ]

10 голосов
/ 18 февраля 2009

Хотя я согласен с тем, что многие уже сказали - зачем изобретать велосипед? - ответ, который будет вам полезен, будет зависеть от того, что вы пытаетесь сделать.

Точка № 1:
Если [вы | ваша компания] просто нуждаетесь в инструменте отслеживания ошибок, существует множество инструментов, бесплатных и других, высококачественных и других, зачем программировать свои собственные?

Если вы ищете веб-сервис, вы можете использовать FogBugz по запросу, вы можете использовать http://www.clockingit.com/ или любой из ряда других источников. Клянусь, я видел по крайней мере дюжину вопросов с вдвое большим количеством предложений здесь. Ищите, и вы найдете.

Если вы ищете что-то для внутреннего использования, вы можете купить FogBugz (я все время упоминаю об этом, потому что я его использую и мне это нравится), вы можете использовать вышеупомянутый BugTracker.NET или любой из другие источники. Клянусь, я видел по крайней мере дюжину вопросов с вдвое большим количеством предложений здесь. Ищите, и вы найдете.

Точка № 2:
Если вы ищете учебный опыт, ищете что-то, с чем можно научиться [ChoiceLanguage], и ​​/ или просто хотите узнать больше о колесах , есть ряд статей - Джоэл написал один или два ... - и есть ряд проектов с открытым исходным кодом, которые вы можете посмотреть на код, чтобы увидеть, как они работают (или нет, как это может быть).

В конце концов:
Если последнее является вашей конечной целью, то непременно прочитайте статьи, проведите исследование и закодируйте.

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

В конечном счете, ответ, который вы получите, будет зависеть от вопроса, который вы задаете. Быть чистым с самого начала будет иметь большое значение. ;)

2 голосов
/ 18 февраля 2009

По каким причинам вы думаете, что ваш инструмент будет лучше, чем бесплатные или коммерческие инструменты? Если все, что вам нужно, это базовый инструмент, вы, вероятно, можете получить то, что вы уже сделали. Если вам нужно что-то еще, это будет вычислено как время, которое потребуется.

Базовое отслеживание ошибок - это просто база данных и веб-интерфейс. Сколько времени тебе понадобится, чтобы написать?

2 голосов
/ 18 февраля 2009

Я бы предложил что-то более современное, чем Bugzilla, такое как Trac или Lighthouse, хотя Bugzilla может соответствовать вашим требованиям. Я бы даже пошел дальше и предложил, чтобы вы поставили под сомнение даже решение запустить собственный трекер ошибок. Все больше и больше, это становится товаром, который вы можете приобрести по требованию по очень низкой цене. Есть много поставщиков, которые делают Trac / Bugzilla / другой хостинг для отслеживания ошибок. Использование одного из них позволит вам тратить свое время на написание кода, пишущего вещи, которые действительно продвигают потребности вашего бизнеса (полагаю, вы не планируете продавать этот баг-трекер).

1 голос
/ 19 февраля 2009

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

Я подозреваю, что есть другие проекты, над которыми вы можете работать или внести свой вклад, которые стоили бы больше времени.

Предполагая, что он на самом деле использует тот, который вы написали, вы действительно хотите поддерживать его годами? В конце концов, стоит ли это того?

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

некоторые простые вещи, которые вам нужно будет написать / рассмотреть

  • Пользовательский интерфейс (многие из них теперь основаны на браузере по разным причинам - независимость от платформы, легкая установка клиента и т. Д.)
  • база данных (масштабируемая, доступная и т. Д.)
  • многопользовательская сторона сервера
  • в сети - возможность использования из любой точки мира
  • отчетов - легко настраивается и прост в использовании
  • интеграция с электронной почтой - как разработчикам для информирования их о сроках, так и об ответах клиентам
  • Администратор для настройки пользователей, настройки проектов, рабочих процессов и т. Д.
  • интеграция с исходным хранилищем (ями)
  • резервных копий (может быть другой инструмент, но вы должны иметь это)
  • где его разместить. Существуют сайты, на которых размещено существующее программное обеспечение для ошибок, но они могут не позволять вам использовать ваш - вы ограничиваете себя собственными руками
  • у вас очень ограниченные решения по поддержке, когда пользователям нужна помощь или исправления. С другими решениями можно обратиться за помощью ко всему миру и большим сообществам
  • Я мог бы продолжать и продолжать
1 голос
/ 18 февраля 2009

FogBugz от Fog Creek - отличная штука.

Внутренне мы используем рабочие элементы BugTracker.NET и TFS.

1 голос
/ 18 февраля 2009

Вы можете проверить некоторые из приложений с открытым исходным кодом, такие как BugZilla, чтобы увидеть, как они работают.

0 голосов
/ 18 февраля 2009

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

Мне нравилось отслеживать ошибки Близнецов: http://countersoft.com/

Вы можете посмотреть, как работают другие баг-трекеры, и решить, хотите ли вы создать свой собственный или создать существующий.

Я действительно создал инструмент управления задачами, который похож на инструменты отслеживания ошибок. Мне потребовалось около 100 часов, чтобы сделать то, что я чувствовал, было пригодным для использования. С тех пор я потратил около 150 часов на его улучшение.

0 голосов
/ 18 февраля 2009

Проверьте BugTracker.NET. Это открытый исходный код, и он написан на C #, потому что это то, что вы изучаете. Это довольно хорошо, как есть, но вы также можете настроить его для своих нужд. Файл web.config прекрасно настроен для изменения многих функций приложения, таких как проверка учетной записи электронной почты POP3 для автоматической регистрации ошибок, и поддержка LDAP.

http://ifdefined.com/bugtrackernet.html

(РЕДАКТИРОВАНИЕ ОТ АВТОРА BugTracker.NET: стиль кодирования BugTracker.NET неортодоксален, поэтому вы можете не захотеть создавать паттерн для своего стиля кодирования после него ...)

0 голосов
/ 18 февраля 2009

Я бы рекомендовал использовать программное обеспечение с открытым исходным кодом Bugzilla. Мы используем его в моей компании, и, похоже, он работает довольно хорошо, кроме того, он хорошо работает с нашей программной средой Eclipse.

http://www.bugzilla.org/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...