Оценка количества дефектов в проекте
#1
Отправлено 25 сентября 2006 - 09:39
Вот столкнулся с достаточно необычной для меня задачей написания estimate на то, сколько будет багов в проекте. Надеюсь, я не первый такой, возможно кто-нибудь сталкивался с этим, если да, то в какой форме это проводилось, и какие методологии для использовались?
RR
#2
Отправлено 25 сентября 2006 - 09:46
Редактор портала www.it4business.ru
#4
Отправлено 25 сентября 2006 - 10:26
Строк кода неизвестно сколько будет. У нас применяется оценка по временным затратам, если она интересует, то цифры примерно такие-
Requirements: 450
Design: 450
Build: 2000
Test: 2000
Manage: 500
RR
#7
Отправлено 25 сентября 2006 - 11:02
RR
#8
Отправлено 25 сентября 2006 - 11:18
Тогда надо ещё предположить что у вас примерно 4-й уровень CMMI. Как оценивать? Собираете в кучу необходимые данные (метрики) и оцениваете. "Вообще все метрики" это примерно как "вообще все книги" или "вообще все фильмы" ну, или, "вообще все деньги". Нужные вам метрики вы наверное можете получить из результатов уже выполненых похожих проектов. Оценка - задачка по математике уровня 6 класса, сложение умножение и деление и т.д.А как можно оценить с наличием метрик? Предположим вообще все метрики.
RR
Количество ошибок на 10000 строк кода - может быть одной из метрик. А может и не быть.
Я сам никогда количество багов не предсказывал, но думаю, можно попытаться вычислить таким способом.
#9
Отправлено 25 сентября 2006 - 11:46
А на общий вопрос: "Сколько ошибок будет в проекте?", - отвечаем так же обще: "Столько, каков пробег у автомобиля." У какого автомобиля, выражено в дюймах или парсеках - это уже не важно. Общий вопрос - общий ответ.
Ну или оцените так: каждые Х часов программист будет делать 1 ошибку. Х находится в пределах от 0.1 до 100.
--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#10
Отправлено 25 сентября 2006 - 13:22
Нужные вам метрики вы наверное можете получить из результатов уже выполненых похожих проектов. Оценка - задачка по математике уровня 6 класса, сложение умножение и деление и т.д.
Безусловно нужные метрики мы не только можем получить, но более того я подозреваю они у нас уже есть.
Вопрос в том что если задачка для 6го класса, то возможно не займет много времени написать тут решение.
RR
#11
Отправлено 25 сентября 2006 - 14:09
Берёте метрику: среднее количество ошибок за час написания кода и умножаете на запланированное количество часов кодописания.Безусловно нужные метрики мы не только можем получить, но более того я подозреваю они у нас уже есть.
Вопрос в том что если задачка для 6го класса, то возможно не займет много времени написать тут решение.
RR
#12
Отправлено 25 сентября 2006 - 14:34
127 ошибок на 1000 кода. Где то была такая оценка. Только вот для какого проекта это справедливо?
А на общий вопрос: "Сколько ошибок будет в проекте?", - отвечаем так же обще: "Столько, каков пробег у автомобиля." У какого автомобиля, выражено в дюймах или парсеках - это уже не важно. Общий вопрос - общий ответ.
Ну или оцените так: каждые Х часов программист будет делать 1 ошибку. Х находится в пределах от 0.1 до 100.
Мне кажется вот это еще куда не шло Ну или оцените так: каждые Х часов программист будет делать 1 ошибку. Х находится в пределах от 0.1 до 100.
А оценить количество дефектов по количеству строк в проге - это глупость несуразная. Конечно, если проект маленький - то, может, и имеет смысл.. Но в большом проекте на n-ой итерации - абсолютно бесполезные подсчеты.
Мне кажется, наиболее логичный выход - это аналитическая оценка.
#13
Отправлено 25 сентября 2006 - 14:42
Если чуть чуть усложнить, тоБерёте метрику: среднее количество ошибок за час написания кода и умножаете на запланированное количество часов кодописания.Безусловно нужные метрики мы не только можем получить, но более того я подозреваю они у нас уже есть.
Вопрос в том что если задачка для 6го класса, то возможно не займет много времени написать тут решение.
RR
где
N - число разработчиков
k - среднее количество ошибок за час написания кода для i-того разработчика на проекте денного типа
t - время кодирования i-того разработчика на проекте
Прикрепленные файлы
--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#14
Отправлено 25 сентября 2006 - 15:01
А что такое аналитическая оценка? Как её проводить?Мне кажется вот это еще куда не шло Ну или оцените так: каждые Х часов программист будет делать 1 ошибку. Х находится в пределах от 0.1 до 100.
А оценить количество дефектов по количеству строк в проге - это глупость несуразная. Конечно, если проект маленький - то, может, и имеет смысл.. Но в большом проекте на n-ой итерации - абсолютно бесполезные подсчеты.
Мне кажется, наиболее логичный выход - это аналитическая оценка.
#15
Отправлено 25 сентября 2006 - 15:24
Поднимите статистику прошлых проектов, сколько баг приходилось на каждый модуль, прибавьте на каждый процентов по 10, сложите - вот вам количественная оценка.А что такое аналитическая оценка? Как её проводить?Мне кажется вот это еще куда не шло Ну или оцените так: каждые Х часов программист будет делать 1 ошибку. Х находится в пределах от 0.1 до 100.
А оценить количество дефектов по количеству строк в проге - это глупость несуразная. Конечно, если проект маленький - то, может, и имеет смысл.. Но в большом проекте на n-ой итерации - абсолютно бесполезные подсчеты.
Мне кажется, наиболее логичный выход - это аналитическая оценка.
То есть идея в чем, считать не по строкам и часам, а по статистике (по предыдущему опыту) ошибок на модуль.
#16
Отправлено 25 сентября 2006 - 15:53
Тогда встаёт вопрос второй. Где взять взять критерий "схожести" модулей? Модуль - модулю рознь. Я уже молчу про то, что предыдущие проекты и, соответственно, модули могли быть выполнены на разных платформах. Например, старые проекты на php, а новый на ASP.NET. Как соотнести модуль на php с аналогичным на ASP.NET? Те десять процентов, что вы указали, могут быть и больше, и меньше, и вообще со знаком минус.Поднимите статистику прошлых проектов, сколько баг приходилось на каждый модуль, прибавьте на каждый процентов по 10, сложите - вот вам количественная оценка.
То есть идея в чем, считать не по строкам и часам, а по статистике (по предыдущему опыту) ошибок на модуль.
Проще всё-таки привязываться к качетвенному уровню разработчика. Сколько он "позволяет себе" допустить ошибок в еденицу времени нормального рабочего процесса написания кода.
#17
Отправлено 25 сентября 2006 - 15:59
#18
Отправлено 25 сентября 2006 - 16:24
А Вам оно надо?Вот столкнулся с достаточно необычной для меня задачей написания estimate на то, сколько будет багов в проекте.
А зачем?
Я бы поступил так:
1) Написал бы какие нибудь числа "от фонаря" (я имею в виду с использованием одного из уже приведённых методов) не тратя на это много времени
2) Послал бы на согласование разработчикам, менеджерам и т.п.
#19
Отправлено 25 сентября 2006 - 16:32
Чтобы что-то оценить, надо его с чем-то сравнить. Т.е. нужно найти эталонный проект. От него и будете плясать. Потом выделяете метрики, влияющие на количество ошибок. На их основании формируете коэффициенты. Берете количество ошибок из эталонного проекта, перемножаете с коффициентами - получаете некое число. Оно и будет искомо. Для подтверждения правильности вычеслений имеет смысл проверить формулу на других завершенных проектах. Примерно так.Вопрос в том что если задачка для 6го класса, то возможно не займет много времени написать тут решение.
Ещё раз повторюсь, какие именно метрики, коэффициенты использовать - не знаю, никогда не считал, могу предложить лишь методику.
#20
Отправлено 25 сентября 2006 - 16:36
Во, вот так все и морочат друг другу головы на проектах, имхо. Уж лучше никак не делать, чем так.А Вам оно надо?Вот столкнулся с достаточно необычной для меня задачей написания estimate на то, сколько будет багов в проекте.
А зачем?
Я бы поступил так:
1) Написал бы какие нибудь числа "от фонаря" (я имею в виду с использованием одного из уже приведённых методов) не тратя на это много времени
2) Послал бы на согласование разработчикам, менеджерам и т.п.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных