<<
>>

Сначала подсчет

Как вы думаете, каков правильный ответ? 335, как предложил Билл, эксперт по оценке размера толпы? 385, как вычислил Карл по нескольким разумным пред- положенйям? 365, как вычислила Люси по другим разумным предположениям? Или правильным было число 407, отображающееся на сканере приглашений? Есть ли какие-нибудь сомнения относительно того, что 407 является наиболее точным ответом? Кстати, вся история кончилась тем, что ваш стол предложил число 407, которое оказалось правильным, и первым получил десерт.

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

Если прямой подсчет невозможен, нужно посчитать что-нибудь другое и вычислить ответ по вспомогательным (калибровочным) данным. Скажем, Карлу было известно, что на банкете за каждым столом должно было сидеть 5 человек. Он подсчитал количество столов и вычислил ответ по этому значению.

Люси действовала сходным образом: ее оценка основывалась на документированной вместительности зала. На основании своего экспертного суждения она прикинула, что зал заполнен *на 70-80 % процентов.

Наименее точная оценка поступила от Билла, который руководствовался только своим экспертным суждением для получения ответа.

СОВЕТ № 30

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

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

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

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

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

Выбор показателя для подсчета определяется несколькими целями.

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

В разных средах наиболее точными показателями размера проекта оказываются разные величины. В одной среде лучшим показателем может быть количество веб-страниц; в другой — количество маркетинговых требований, тестовых сценариев или параметров конфигурации. Трудность в том, чтобы подобрать хороший показатель размера именно для вашей среды.

СОВЕТ №31               =

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

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

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

Ищите счетный показатель, дающий статистически осмысленное среднее значение. С точки зрения статистики для получения осмысленного среднего значения выборка должна содержать не менее 20 элементов. Здесь 20 — не волшебное число, а всего лишь хорошая рекомендация для статической состоятельности.

Понимайте, что вы считаете. Чтобы подсчет мог послужить точной основой для оценки, необходимо проследить за тем, чтобы на них распространялись те же предположения, что и для исторических данных, используемых в оценке. Если вы считаете маркетинговые требования, убедитесь в том, что понимание «маркетинговых требований», действовавшее в отношении исторических данных, совпадает с пониманием «маркетинговых требований» в вашей оценки. Если исторические данные показывают, что в предыдущем проекте группа обрабатывала 7 неформальных требований заказчика (также называемых « историями пользователей», user story) в неделю, проследите за тем, что ваши предположения относительно размера группы, опыта программистов, технологии разработки и других факторов аналогичны предположениям в оцениваемом проекте. Зак. 893

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

Один из выводов проекта Cocomo II заключается в том, что метрика оценки размера, называемая объектными пунктами, в такой же степени коррелируется с объемом работ, что и функциональные пункты, но ее вычисление требует примерно половинного объема работы. По этой причине объектные пункты рассматриваются как эффективная альтернатива для функциональных пунктов при проведении оценки в широкой части конуса неопределенности (Boehm et al. 2000).

<< | >>
Источник: Макконнелл С.. Сколько стоит программный проект. 2007

Еще по теме Сначала подсчет:

  1. Сначала подумайте!
  2. Дневной запас кассы и его подсчет
  3. Подсчет опасностей
  4. Сначала попробуй сам ( eating your own dogfood )
  5. Глава 3. Сначала говорите о своих собственных ошибках.
  6. Подсчет, вычисление, экспертная оценка
  7. Заблуждение № 2 Для того чтобы заработать деньги, нужно сначала их вложить
  8. 3.3. Факторы, не учитываемые при подсчете ВВП
  9. Сначала сделайте своих детей сильными, потом дайте им деньги
  10. Национальное богатство страны: содержание и структура. Сложности подсчета показателей дохода и продукта.
  11. 66. При подсчете ВВП исключается двойной счет, т.к.:
  12.                                    Лекционный материал 4.1.Общее понятие эластичности. Два метода подсчета эластичности    (по дуге и в точке).
  13. ЕМКОСТЬ ДОКУМЕНТА, ИНФОРМАЦИОННАЯ
  14. Способы исправления ошибок в учетных регистрах (п. 3 схемы 7)
  15. Основа отражения