Введение

Алгоритмическое программное обеспечение для управления проектами

SEER for Software (SEER SEM) — это приложение для управления проектами, предназначенное для оценки ресурсов, необходимых при разработке программного обеспечения.

История

1966 Модель корпорации System Development Corporation, основанная на регрессионном анализе. В 1980 году Дон Рейфер и Дэн Галорат опубликовали работу, которая послужила толчком к созданию модели JPL Softcost. Эта модель, являясь одним из первых примеров оценки программного обеспечения, позволяет автоматизировать проведение анализа рисков. Позднее Softcost был коммерциализирован компанией Reifer Consultants. В 1984 году Computer Economics JS 2 и Галорат разработали Систему 3 на основе модели Дженсена. Модель Дженсена послужила вдохновением для System 3, а другие моделирующие системы, такие как COCOMO Барри Боэма и ранние работы Doty Associates, можно рассматривать как прямых и косвенных предшественников программного обеспечения, которое Галорат разработал в конце 1980-х годов. В 1988 году компания Galorath Incorporated начала работу над первоначальной версией SEER SEM.

Группа моделей

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

Определение размера. Каков размер оцениваемого программного проекта (строки кода, функциональные точки, сценарии использования и т.д.)? Технологии. Какова потенциальная производительность разработчиков (компетенции, инструменты, практики и т.д.)? Расчет трудозатрат и сроков. Сколько трудозатрат и времени потребуется для завершения проекта? Расчет трудозатрат/сроков с ограничениями. Как изменится ожидаемый результат проекта при применении ограничений по срокам и численности персонала? Распределение задач и трудовых ресурсов. Как следует распределять задачи и трудовые ресурсы в оценке? Расчет стоимости. Какова будет стоимость проекта, исходя из ожидаемых трудозатрат, продолжительности и распределения трудовых ресурсов? Расчет дефектов. Каково ожидаемое объективное качество поставляемого программного обеспечения, учитывая тип продукта, продолжительность проекта и другую информацию? Расчет трудозатрат на сопровождение. Сколько трудозатрат потребуется для надлежащего обслуживания и обновления развернутой системы программного обеспечения? Отслеживание прогресса. Как продвигается проект и каким будет его итог? А также как проводить перепланирование. Обоснованность. Возможно ли реализовать данную разработку, исходя из используемых технологий?

Размер программного обеспечения

Размер программного обеспечения является ключевым входным параметром для любой оценочной модели и для большинства параметрических моделей программного обеспечения. Поддерживаемые метрики размера включают в себя строки исходного кода (SLOC), функциональные точки, функционально-ориентированное определение размера (FBS) и ряд других показателей. Они преобразуются для внутреннего использования в эффективный размер, который служит единой мерой внутри модели и позволяет комбинировать новый, повторно используемый и даже готовый коммерческий код для комплексного анализа процесса разработки программного обеспечения. Общая формула для эффективного размера:

Как указано, эффективный размер увеличивается прямо пропорционально объему разрабатываемого нового программного обеспечения. Эффективный размер увеличивается в меньшей степени при повторном использовании существующего кода в проекте. Степень этого увеличения определяется объемом работ по доработке (перепроектирование, перереализация и повторное тестирование), необходимых для повторного использования кода.