Book.od.ua Книги для вашего бизнеса



Одесская библиотека бизнес литературы
полезные книги для бизнеса

8.16. Разработка калиброванной модели для оценивания времени выполнения проектов

Джон Гаффни
В наши дни компания Adobe Systems известна во всем мире как разработчик сложных программных продуктов (таких как Adobe Photoshop) для персональных компьютеров. Однако далеко не каждому сейчас известно, что Adobe Systems начала свою деятельность в 1982 году с разработки PostScript - первого в мире языка описания страниц, не зависящего от конкретных устройств. Я поступил на работу программистом в Adobe Systems в 1984 году, когда эта компания занималась разработкой Apple LaserWriter - первого в мире PostScript-принтера.
После того как компания Apple вышла в 1985 году на рынок со своим принтером LaserWriter, множество новых клиентов купили у Adobe Systems лицензию на право использования программного обеспечения PostScript в своих продуктах. Adobe Systems стремительно развивала свой бизнес. К 1990 году она разработала много новых PostScript-принтеров, однако, по общему признанию, время выполнения своих проектов она оценивала весьма неточно. Пытаясь исправить эту ситуацию, я разработал простую формулу оценивания, основанную на фактическом времени выполнения уже завершенных проектов. Эта формула позволяла прогнозировать общее время выполнения проекта, используя в качестве исходного показателя сложность принтера и основываясь на предположении, что в проекте будет задействован только один разработчик программного обеспечения (что, вообще говоря, соответствовало реальной практике). Вскоре эта формула стала известна среди разработчиков принтеров Adobe Systems как "гаффниметр" (Gaffney Meter) - именно такое название присвоили ей мои коллеги. Эта модель зарекомендовала себя как достаточно простая и вместе с тем надежная. Впоследствии я модифицировал ее таким образом, чтобы ею можно было пользоваться для оценки времени выполнения проектов, в которых участвуют несколько разработчиков.
СОЗДАНИЕ МОДЕЛИ ДЛЯ ОДНОГО РАЗРАБОТЧИКА
Приступая к разработке своей формулы, я предварительно проанализировал около десятка уже завершившихся "принтерных" проектов. Не было ничего удивительного в том, что более сложные проекты выполнялись дольше; поэтому мне представлялось вполне логичным измерить сложность проекта, просто просуммировав всю совокупность технических возможностей соответствующего продукта и специфических задач, которые приходилось решать в ходе разработки этого продукта. В эту "сумму сложностей" я включил специальные возможности разрабатываемого принтера, такие как цветная печать, дуплексная (двусторонняя) печать и использование японских иероглифов.
Один из проанализированных мною проектов был связан с разработкой относительно простого принтера, причем его разработка включала лишь задачи, типичные для всех остальных проектов. На выполнение этого проекта - начиная с момента, когда разработчик получил в свое распоряжение соответствующее "железо", и заканчивая моментом сертификации готового принтера - ушло пять месяцев. Этот проект был использован мною как базовый проект, или проект с нулевой сложностью, относительно которого измерялась сложность других, более сложных проектов.
Простой график зависимости времени выполнения проекта от "суммы сложностей" проекта демонстрирует экспоненциальный рост времени выполнения проекта при увеличении "суммы сложностей". Зависимость времени выполнения проекта T от "суммы сложностей" проекта C выражается следующей формулой:
T = 5 месяцев х GC,
где G представляет собой некий некалиброванный коэффициент роста времени. В случае проекта с нулевой сложностью (C = 0) эта модель позволяла вычислить расчетное время разработки "простого" принтера, которое составило пять месяцев. Воспользовавшись методом проб и ошибок и выполнив ряд несложных вычислений, я пришел к выводу, что G, равный 1,2, вполне соответствует построенному мною графику завершенных проектов.
Модель оценки времени выполнения для одного разработчика
Обратите внимание на рис. 8.8. Время выполнения проекта T (в месяцах) при использовании единственного разработчика и в случае, когда "сумма сложностей" проекта равняется C, можно вычислить по следующей формуле:
T = 5 месяцев х 1,2е.
Эта формула позволяет нам сделать вывод, что добавление в проект каждой очередной "сложности" приводит к увеличению времени выполнения проекта на 20%. В этом эффекте наращивания сложности, вообще говоря, нет ничего удивительного. Добавление каждой новой возможности в уже и без того сложный продукт ведет к удлинению времени разработки этого продукта и вносит большую неопределенность, чем добавление такой же возможности в более простой продукт.
Разработка калиброванной модели для оценивания времени выполнения проектов


Понравился материал? Поделитесь с друзьями!

<< Предыдущая статьяСледующая статья >>
8.15. Компания Tynet, Inc. использует методы управления проектами для повышения удовлетворенности клиентов. Часть Третья. 8.17. Разработка калиброванной модели для оценивания времени выполнения проектов. Часть Вторая.





Убедительная просьба при использовании любых материалов Одесской электронной бизнес-библиотеки ставить активную ссылку на наш сайт. По всем вопросам касательно сайта пожалуйста пишите на почту
      Карта сайта