Откройте актуальную версию документа прямо сейчас
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.
Приложение Д
(справочное)
Методы и средства для разработки связанного с безопасностью объектно-ориентированного программного обеспечения
Все рекомендации настоящего стандарта по проектированию ПО применяются к объектно-ориентированному ПО. Поскольку при объектно-ориентированном подходе информация представляется иначе, чем при процедурном или функциональном подходе, требуется особое рассмотрение следующих рекомендаций:
- понимание разработчиками иерархий классов и идентификации функции(ий) ПО, которые будут выполняться при вызове заданного метода (включая существующую библиотеку классов, если она используется);
- применение структурного тестирования [см. ГОСТ 34332.4-2021 (таблица Б.2) и приложение В настоящего стандарта).
Таблицы Д.1 и Д.2 содержат справочные руководящие указания по использованию объектно-ориентированного ПО, которые дополняют более общие нормативные руководящие указания.
Таблица Д.1 - Архитектура объектно-ориентированного ПО
Таблица Д.2 - Объектно-ориентированный рабочий проект
Рекомендации |
УПБ 1 |
УПБ 2 |
УПБ 3 |
УПБ 4 |
1 Классы должны иметь только одну цель |
Р |
Р |
ОР |
ОР |
2 Использование наследования при условии, что производный класс является уточнением своего основного класса |
ОР |
ОР |
ОР |
ОР |
3 Ограничение глубины наследования стандартами кодирования |
Р |
Р |
ОР |
ОР |
4 Переопределение операций (методов) строго контролируется |
Р |
ОР |
ОР |
ОР |
5 Использование множественного наследования только для интерфейсных классов |
ОР |
ОР |
ОР |
ОР |
6 Наследование от неизвестных классов |
- - |
- - |
HP |
HP |
7 Подтверждение того, что повторно используемые объектно-ориентированные библиотеки отвечают рекомендациям данной таблицы |
ОР |
ОР |
ОР |
ОР |
Примечания 1 Один класс характеризуется наличием одной ответственности - необходимо быть внимательным при описании тесно связанных данных и операций над этими данными. 2 Необходимо внимательно следить за тем, чтобы не допустить циклических зависимостей между объектами. |
В таблице Д.3 приведены неформальные определения использованных выше терминов.
Таблица Д.3 - Некоторые объектно-ориентированные термины
Термин |
Определение |
Основной класс |
Класс, у которого есть производные классы.
Примечание - Основной класс иногда называют надклассом, или родительским классом. |
Переопределение |
Замена операции (метода, подпрограммы) другой операцией (методом, подпрограммой) с той же самой сигнатурой и иерархией наследования во время выполнения; свойство объектно-ориентированных языков или программ, реализующее полиморфизм |
Производный класс |
Класс (совокупность атрибутов и операций), который наследовал атрибуты и/или операции от другого класса (основного класса). Производный класс иногда называют подклассом, или дочерним классом |
Сигнатура операции (подпрограммы), (метода) |
Имя операции (подпрограммы), (метода) вместе с ее параметрами (аргументами) и их типы, иногда также их возвращаемые типы.
Примечание - Две сигнатуры равны, если у них одни и те же имена, число и типы параметров; в некоторых языках должны быть одинаковыми также возвращаемые типы. |
Фрейм |
Структура программы, обычно предварительно разработанная для заполнения данными конкретного применения |
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.