1.1. Отражает функциональные требования к программному обеспечению:
– QP моделирует функциональность системы, описывая, что должна делать система с точки зрения пользователей и внешних систем.
– Он фокусируется на функциональных требованиях, а не на технической реализации.
1.2. Основано на подсчете акторов (действующих лиц) и вариантов использования:
– Актор – это роль, которую пользователь или внешняя система играет в системе.
– Вариант использования – это описание последовательности действий, выполняемых системой, чтобы достичь определенной цели для актора.
– Подсчет акторов и вариантов использования является основой для вычисления QP.
1.3. Является ключевым параметром, определяющим функциональный размер системы:
– QP отражает объем функциональности, которую должна реализовывать система.
– Он служит основой для оценки трудоемкости разработки, так как большее количество вариантов использования, как правило, требует больше усилий.
QP является ключевым фактором, определяющим функциональный размер программного обеспечения.
Подход, основанный на вариантах использования, позволяет разработчикам сфокусироваться на требованиях пользователей, что является важным аспектом при оценке размера и сложности программного обеспечения.
2. Сложность архитектуры (SA):
2.1. Учитывает сложность архитектурных решений, таких как уровни, компоненты, интерфейсы:
– SA отражает, насколько сложна структура программного обеспечения, включая количество уровней (например, презентационный, бизнес-логика, базы данных), компонентов и их взаимосвязи.
– Чем больше уровней, компонентов и интерфейсов, тем выше сложность архитектуры.
2.2. Отражает структурную сложность программного обеспечения:
– Архитектура программного обеспечения определяет его общую структуру, которая может быть более или менее сложной.
– SA учитывает эту структурную сложность, которая влияет на разработку, тестирование и последующую поддержку системы.
2.3. Влияет на трудоемкость разработки и тестирования:
– Более сложная архитектура, с большим количеством уровней, компонентов и интерфейсов, требует больше усилий для разработки и интеграции этих элементов.
– Также более сложная архитектура усложняет тестирование, так как необходимо проверять взаимодействие между различными компонентами.
SA является важным фактором, отражающим структурную сложность программного обеспечения, и влияющим на трудоемкость его разработки и тестирования. Учет этого фактора в оценке размера ПО помогает получить более точные оценки.
3. Сложность производственных метрик (PM):
3.1. Учитывает сложность процессов разработки, развертывания и эксплуатации:
– PM отражает сложность различных этапов жизненного цикла программного обеспечения, таких как разработка, развертывание, установка, настройка, обновление, мониторинг и поддержка.
– Чем больше процессов и операций требуется для успешного внедрения и эксплуатации ПО, тем выше его производственная сложность.
3.2. Отражает нефункциональные требования, такие как безопасность, масштабируемость, интегрируемость:
– Помимо функциональных требований, ПО также должно соответствовать различным нефункциональным требованиям.
– PM учитывает сложность реализации таких требований, как безопасность, производительность, масштабируемость, совместимость, надежность.
– Эти нефункциональные аспекты влияют на общую сложность разработки ПО.
3.3. Влияет на общую сложность разработки программного обеспечения:
– Производственные метрики отражают не только функциональные, но и технические, эксплуатационные и другие аспекты разработки ПО.
– Чем выше сложность производственных метрик, тем больше усилий требуется для реализации всех необходимых характеристик системы.
– PM является значимым фактором, определяющим общую сложность разработки программного обеспечения.
Учет сложности производственных метрик в оценке размера ПО помогает получить более всестороннюю и реалистичную оценку трудозатрат на разработку.
4. Повторное использование кода (R):
4.1. Отражает долю кода, которая может быть повторно использована:
– Повторное использование кода подразумевает использование существующих программных компонентов, библиотек, фреймворков и других наработок.
– Показатель R отражает, какая часть кода может быть повторно использована в текущем проекте, вместо необходимости его разработки с нуля.
4.2. Снижает общий объем разрабатываемого кода:
– Использование существующего кода уменьшает объем новых разработок, необходимых для реализации требуемой функциональности.
– Таким образом, параметр R позволяет снизить общий объем кода, который нужно разработать с нуля.
4.3. Влияет на трудоемкость разработки и стоимость проекта:
– Повторное использование кода уменьшает затраты времени и ресурсов на разработку.
– Снижение объема новой разработки ведет к сокращению трудоемкости и, как следствие, стоимости проекта.
– Чем выше доля повторно используемого кода, тем ниже трудозатраты и стоимость реализации.
Учет параметра R в оценке размера ПО позволяет более точно спрогнозировать необходимые усилия и бюджет для разработки программного обеспечения, за счет учета возможности повторного использования существующих наработок.
5. Размер технологической компоненты (TC):
5.1. Учитывает объем кода, связанного с технологической платформой: