Методы и средства инженерии программного обеспечения

       

Анализ и оценка качества проектирования ПО


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

 

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

Структурные нотации являются графическими, они используются для представления структурных аспектов проектирования, компонентов и их взаимосвязей,  элементов архитектуры и их интерфейсов.  К ним относятся формальные языки спецификаций и проектирования: ADL (Architecture Description Language), UML (Unified Modeling Language), ERD (Entity–Relation Diagrams),  IDL (Interface Description Language), классы и объекты, компоненты и классы (CRC Cards), Use Case Driven  и др. Нотации включают языки описания архитектуры и интерфейса, диаграммы классов и объектов, диаграммы сущность-связь, компонентов, развертывания, а также структурные диаграммы и схемы.

Поведенческие нотации  отражают динамический аспект  поведения систем и их компонентов. Таким нотациям соответствуют диаграммы:  Data Flow, Decision Tables, Activity, Colloboration, Pre-Post Conditions, Sequence, таблицы принятия решений, формальные языки спецификации, языки проектирования PDL и др.

 

Стратегия и методы проектирования ПО. Данный раздел знаний представляет различные стратегии и методы, которые используются при  проектировании.  К общим стратегиям относятся: снизу-вверх, сверху–вниз, абстракции, паттерны и др. Функционально–ориентированные (структурные) методы базируются на структурном анализе, структурных картах, Dataflow-диаграммах и др.

Содержание раздела