Модель Патнэма
Модель Патнэма — это эмпирическая модель оценки усилий по разработке программного обеспечения . [1] Оригинальная статья Лоуренса Х. Патнэма, опубликованная в 1978 году, считается новаторской работой в области моделирования программных процессов. [2] В целом эмпирические модели работают путем сбора данных о программном проекте (например, объем работ и размер). и подгонка кривой к данным. Оценка будущих усилий производится путем указания размера и расчета соответствующих усилий с использованием уравнения, которое соответствует исходным данным (обычно с некоторой ошибкой ).
Создано Лоуренсом Патнэмом-старшим. Модель Патнэма. описывает время и усилия , необходимые для завершения программного проекта указанного размера . SLIM (Software LIfecycle Management) — это название, данное Патнэмом собственному набору инструментов, который он компания QSM, Inc. разработала на основе его модели. Это один из самых ранних Разработан один из этих типов моделей, который является одним из наиболее широко используемых. Тесно связанные параметрические модели программного обеспечения : Модель конструктивной стоимости ( COCOMO ), Параметрический анализ информации для расчета затрат и оценки – программное обеспечение (PRICE-S) и Оценка программного обеспечения и оценка ресурсов – Модель оценки программного обеспечения ( SEER-SEM ).
Программное уравнение
[ редактировать ]Управляя научно-исследовательскими проектами в армии, а затем и в GE , Патнэм заметил, что штатное расписание по программному обеспечению соблюдается. известное распределение Рэлея . [3]
Патнэм использовал свои наблюдения об уровнях производительности, чтобы вывести уравнение программного обеспечения:
где:
- Размер — это размер продукта (подойдет любая оценка размера, используемая вашей организацией). Патнэм использует ESLOC (Effective Source Lines of Code ) в своих книгах.
- B — коэффициент масштабирования, зависящий от размера проекта. [4] [5]
- Производительность — это производительность процесса , способность конкретной организации, занимающейся разработкой программного обеспечения, производить программное обеспечение заданного размера с определенным уровнем дефектов.
- Усилия – это общие усилия, затраченные на проект в человеко-летах.
- Время — общий график проекта в годах.
На практике при оценке программной задачи уравнение программного обеспечения решается для расчета усилий :
Используется предполагаемый размер программного обеспечения на момент завершения проекта и производительность организационных процессов. Построение графика усилий как функции времени дает кривую время-усилие . Точки вдоль кривой обозначают предполагаемые общие усилия по завершению проекта в определенный момент времени . Одной из отличительных особенностей модели Патнэма является то, что общие усилия уменьшаются по мере увеличения времени завершения проекта. Обычно это представлено в других параметрических моделях с параметром релаксации расписания.
Этот метод оценки довольно чувствителен к неопределенности как в размере , так и в производительности процесса . Патнэм выступает за повышение производительности процесса путем калибровки: [1]
Патнэм проводит четкое различие между «традиционной продуктивностью»: размер / затраченные усилия. и производительность процесса.
Одним из ключевых преимуществ этой модели является простота ее калибровки. Большинство организаций-разработчиков программного обеспечения, независимо от уровня зрелости, могут легко собрать данные о размере , усилиях и продолжительности ( времени ) прошлых проектов. Производительность процессов, будучи экспоненциальной по своей природе, обычно преобразуется в линейный индекс производительности, который организация может использовать для отслеживания собственных изменений производительности и применения в будущих оценках усилий. [6]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б Патнэм, Лоуренс Х.; Уэр Майерс (сентябрь 2003 г.). Пять основных показателей: интеллект, лежащий в основе успешного управления программным обеспечением . Издательство Дорсет Хаус. ISBN 0-932633-55-2 .
- ^ Патнэм, Лоуренс Х. (1978). «Общее эмпирическое решение проблемы определения размера и оценки макропрограммного обеспечения». IEEE ТРАНЗАКЦИИ ПО ПРОГРАММНОЙ РАЗРАБОТКЕ, VOL. СЭ-4, НЕТ. 4, стр. 345–361.
{{cite web}}
: Отсутствует или пусто|url=
( помощь ) - ^ «В центре внимания Лоуренс Патнэм: интервью CAI о состоянии практики» (PDF) . Computer Aid, Inc., сентябрь 2006 г.
- ^ Правительство США (20 августа 1997 г.). «Таблица факторов специальных навыков Патнэма». Центр данных и анализа программного обеспечения.
{{cite web}}
: Отсутствует или пусто|url=
( помощь ) - ^ Патнэм, Лоуренс Х.; Уэр Майерс (октябрь 1991 г.). Меры достижения совершенства: надежное программное обеспечение вовремя и в рамках бюджета . Прентис Холл. п. 234 . ISBN 978-0-13-567694-3 .
Коэффициент специальных навыков B зависит от размера системы: 0,16 для 5–15 KSLOC, 0,18 для 20 KSLOC, 0,28 для 30 KSLOC, 0,34 для 40 KSLOC, 0,37 для 50 KSLOC и 0,39 для > 70 КСЛОК
- ^ Правительство США (20 августа 1997 г.). «Таблица параметров производительности Патнэма». Центр данных и анализа программного обеспечения.
{{cite web}}
: Отсутствует или пусто|url=
( помощь )
Внешние ссылки
[ редактировать ]- Патнэм, Лоуренс Х.; Уэр Майерс (октябрь 1991 г.). Меры достижения совершенства: надежное программное обеспечение Своевременно, в рамках бюджета . Юрдон Пресс. ISBN 0-13-567694-0 .
- Дженсен, доктор Рэндалл В.; Патнэм, Лоуренс Х. старший; Ретцхайм, Уильям (февраль 2006 г.). «Модели оценки программного обеспечения: три точки зрения» (PDF) . Центр поддержки программных технологий.
- Джонс, Каперс (октябрь 2004 г.). «Практика управления программными проектами: неудача или успех» (PDF) . Центр поддержки программных технологий.
- Правительство США (октябрь 2005 г.). «Справочник ФАУ по ценообразованию» . Федеральное управление гражданской авиации.
- Кемерер, Крис Ф. (май 1987 г.). «Эмпирическая проверка моделей оценки стоимости программного обеспечения» (PDF) . Коммуникации АКМ.