Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
бИЛЕТЫ_GOSam.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
1 Мб
Скачать
☆

4)Категории тестируемых требований к программному обеспечению.

Типы требований. Пример набора таких категорий представлен следующим списком:

• Функциональные средства. -определяет, какие функции должен выполнять данный программ. продукт на системном или пользовательском уровне. Для ясности может быть указано, чего не должен делать данный продукт.

• Интерфейсы- описывает входы, получаемые из внешних систем, и выходы, направляемые во внешние системы. Накладываются ли на эти интерфейсы какие-то ограничения, связанные с форматами данных и носителями информации?

• Данные- описывают вход. и вых. данные системы. Формат данных ,Какие данные нужно сохранять? Какой объем данных поступает в систему и из системы, и с какой скоростью передачи? С какой точн. должны выполняться вычисления?

• Производительность-описывают проблемы масштабир-я и синхронизации, например, сколько пользователей одновр-но должна обсл-ть система, сколько транзакций должна выполнять система в ед. времени, как долго польз-ль должен ждать ответа на свой запрос.

• Пользователи и человеческий фактор. Эта категория требований предъявляется к тем, кто будет работать с системой в смысле их квалификации и опыта. определяют необх. уровень удобства и простоты исп.я ПП

• Физическая среда. Эта категория требований определяет, где должно функц-ть оборуд-ие. Установлено ли обор-ие более чем в одном месте? Имеют ли место ограничения по температуре, влажности или другие ограничения, связанные с окружающей средой?

• Безопасность. Эта категория требований описывает, как осущ-ся доступ к системе и как осущ-ся управление ее данными. Как часто следует выполнять дублирование? На каких носителях сохраняются дублированные данные?

• Документация. Эта категория требований связана с документацией и тем, должна ли она быть представлена в печатном виде или выдается в интерактивном режиме. Кроме того, здесь же определяется категория лиц, для которых эта документация предназначена.

• Устранение неисправностей. Эта категория требований описывает, как система реагирует на возникновение неисправностей. Будет ли система обнаруживать неисправность и выдавать аварийные сигналы? Какой должна быть средняя длительность промежутка времени между двумя неисправностями? Каким должно быть максимальное время простоя?

Сопровождение. Эти требования определяют, как произв-ся устранение проблем, обнар-ых в системе

План поставки версий. Если требованиям назначены приоритеты, возможно, необходимо будет определить временной график поставки версий, который показывает, реализации каких требований уделяется внимание в конкретной версии.

Билет №4.

1)Наследование: понятие, простое наследование, режимы наследования и их применение. Примеры на языке C++.

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

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

Простое наследование - класс, от которого произошло наследование, называется базовым или родительским (англ. base class). Класс, который произошел от базового, называются потомком, наследником или производным классом (англ. derived class): class B: public A {/*…*/}; класс B является наследником A. Это также означает, что любой объект типа B также является объектом (разновидностью) типа A (но не наоборот!).

Наследование:

Открытое (public) наследование. Отражает зависимость «являться». Все члены базового класса становятся членами класса-наследника (как интерфейс, так и реализация).

Закрытое (private) наследование. Об этом подробнее. Пусть имеется класс B, который открыто, наследует класс A. Такое наследование дает ряд преимуществ. Одним из них является то, что можно обращаться к классам-наследникам через указатель на базовый класс, т.е.: A *some = new B; // все хорошо: A – базовый класс, произойдет неявное преобразование Но теперь проделаем небольшую корректировку (а именно заменим public-наследование на private):

class A { /*…*/ };

class B: private A { /*…*/ };

Если попытаться написать

A *some = new B;

То компилятор выдаст ошибку. public-наследованием объект одного типа _ является_ разновидностью другого типа, а по поводу private такого сказать нельзя. Private-наследование используется только на этапе реализации, и оно скорее выражает зависимость «реализовано на основе». Т.е. на этапе проектирования private-наследование никоим образом не фигурирует, а появляется только на этапе написания программного кода. private-наследование в большинстве случаев можно заменить обычным внедрением, т.е. созданием члена-указателя на нужный класс.

Защищенное (protected) наследование – очень редко встречающийся на практике вид наследования. При protected-наследовании все члены с модификатором public наследуются с модификатором protected (т.е. все открытые члены базового класса становятся защищенными членами класса-наследника).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]