- •31) Проектирование программного обеспечения при структурном подходе. Структурная и функциональная схемы.
- •Абстрактные структуры данных.
- •Типы данных, определяемые пользователем: записи, файлы, множества, массивы и пр.
- •Типы данных, определяемые пользователем: динамические структуры данных.
- •Тестирование и отладка. Принципы тестирования.
- •Стадии тестирования
- •Стратегии тестирования. Ручное тестирование.
31) Проектирование программного обеспечения при структурном подходе. Структурная и функциональная схемы.
Процесс проектирования сложного ПО начинают с уточнения его структуры, т.е. определения структурных компонентов и связей между ними. Результат уточнения структуры может быть представлен в виде структурной и/или функциональной схем.
Структурная схема разрабатываемого ПО. Структурной называют схему, отражающую состав и взаимодействие по управлению частей разрабатываемого ПО.
Самый простой вид ПО – программа в качестве структурных компонентов может включать только подпрограммы и библиотеки ресурсов. Разработка структурной схемы программы обычно выполняется методом пошаговой детализации.
Структурными компонентами программной системы или программного комплекса могут служить программы, подсистемы, базы данных, библиотеки ресурсов и т. п. Так структурная схема программной системы, как правило, показывает наличие подсистем или других структурных компонентов (рис.).
Более полное представление о проектируемом ПО с точки зрения взаимодействия его компонентов между собой и с внешней средой дает функциональная схема.
Функциональная схема. Функциональная схема или схема данных (ГОСТ 19.701–90) – схема взаимодействия компонентов ПО с описанием информационных потоков, состава данных в потоках и указанием используемых файлов и устройств. Для изображения функциональных схем используют специальные обозначения, установленные стандартом.
Функциональные схемы более информативны, чем структурные. Так функциональные схемы программных комплексов и систем наглядно демонстрируют различие между ними (рис).
Все компоненты структурных и функциональных схем должны быть описаны. При структурном подходе особенно тщательно необходимо прорабатывать спецификации межпрограммных интерфейсов, так как от качества их описания зависит количество самых дорогостоящих ошибок. К самым дорогим при структурном подходе относятся ошибки, обнаруживаемые при комплексном тестировании, так как для их устранения могут потребоваться серьезные изменения уже отлаженных текстов.
Абстрактные структуры данных.
Абстрактные структуры данных – используются для уточнения связей между элементами.
Структуры, элементы которых не связаны между собой.
Структуры с неявными связями элементов – таблицы.
Структуры, связь элементов которых указывается явно – графы.
множество
кортеж
вектор
матрица
массив
запись
строка
цепь
цикл
дерево
мультиграф
Ориент. граф
Взвеш. граф
Множество и кортеж
Принадлежность некоторому набору, т.е. отношения вхождения.
Используют, если никакие другие отношения элементов не являются существенными для описываемых объектов.
Матрица, массив, вектор…
Вхождение структуры в структуру более высокой степени общности
Сущ. Являются не только вхождение элемента данных в некоторую структуру, но и их порядок
Графы
В тех случаях, когда существенны связи элементов данных между собой, в качестве модели структур данных используются графы.
Стоит учитывать:
Вид хранимой информации элементов данных
Связи элементов данных и вложенных структур
Время хранения данных структуры
Совокупность операций над элементами данных, вложенных структурами и структурами в целом.