структурный подход (7)
TRANSCRIPT
Структурный подход к разработке программного
обеспечения
Структурное (системное) проектирование – это метод определения подсистем, компонентов и способов их соединения, задающий ограничения, при которых система должна функционировать, выбирающий наиболее эффективное сочетание людей, машин и программного обеспечения для реализации системы.
Сущность структурного подходаСущность структурного подхода к разработке ПО заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. При разработке системы "снизу-вверх" от отдельных задач ко всей системе целостность теряется, возникают проблемы при информационной стыковке отдельных компонентов.
• принцип "разделяй и властвуй" - принцип решения сложных проблем путем их разбиения на множество меньших независимых задач, легких для понимания и решения;• принцип иерархического упорядочивания - принцип
организации составных частей проблемы в иерархические древовидные структуры с добавлением новых деталей на каждом уровне.• принцип абстрагирования - заключается в выделении
существенных аспектов системы и отвлечения от несущественных;
Принципы структурного подхода
• принцип структурирования данных - заключается в том, что данные должны быть структурированы и иерархически организованы.
• принцип непротиворечивости - заключается в обоснованности и согласованности элементов;
• принцип формализации - заключается в необходимости строгого методического подхода к решению проблемы;
В структурном анализе используются в основном две группы средств, иллюстрирующих функции, выполняемые системой и отношения между данными. Каждой группе средств соответствуют определенные виды моделей (диаграмм), наиболее распространенными среди которых являются следующие:• SADT (Structured Analysis and Design Technique)
модели и соответствующие функциональные диаграммы;
• DFD (Data Flow Diagrams) диаграммы потоков данных;
• ERD (Entity-Relationship Diagrams) диаграммы "сущность-связь".
Средства моделирования при структурном анализе
1. Диаграммы, иллюстрирующие функции, которые система должна выполнять, и связи между этими функциями - DFD или SADT (IDEF0).
2. Диаграммы, моделирующие данные и их отношения (ERD).
Методология SADT разработана Дугласом Россом. На ее основе разработана, в частности, известная методология IDEF0 (Icam DEFinition), которая является основной частью программы ICAM (Интеграция компьютерных и промышленных технологий)
1. графическое представление блочного моделирования;
2. строгость и точность;3. ограничение количества блоков на каждом
уровне декомпозиции 4. связность диаграмм;
Основные элементы SADT-методологии основываются на следующих концепциях:
5. уникальность меток и наименований (отсутствие повторяющихся имен);6.синтаксические правила для графики (блоков и дуг);7. разделение входов и управлений;8. отделение организации от функции, т.е. исключение влияния организационной структуры на функциональную модель.
Пример использования контекстной диаграммы
• Принцип первый – принцип «черного ящика».• Принцип второй – принцип неизменности точки
зрения.• Принцип третий «функции – объекты»Объекты изображаются дугами (стрелками) и именуются существительными: «Личная информация», «Фотография», «Цитаты», «Место рождения» и т.д.• Принцип четвертый – принцип декомпозиции
диаграмм.
Принципы:
• Принцип пятый – принцип сохранения дугОн означает, что при построении дочерней диаграммы все граничные дуги родительской диаграммы должны быть перенесены в неизменном виде.• Принцип шестой – принцип декомпозиции дуг.Дуга в SADT на верхних уровнях модели обычно представляет набор объектов. На нижних уровнях модели бывает важно уточнить, какие конкретно объекты связаны с выполнением данной функции. Для этого дуги могут разветвляться и эти ветви подсоединяться к различным блокам.• Принцип седьмой – принцип единства оформления диаграмм.
Пример использования диаграммы декомпозиций
Методология DFD (Data Flow Diagram)
В основе данной методологии (другое название – методология Gane/Sarson по имени авторов) лежит представление жизненного цикла информации в виде потоков данных, являющихся результатом определенных процессов (сбора, обработки, хранения, передачи) анализируемой ИС – проектируемой или реально существующей.
Источники информации (внешние сущности) порождают информационные потоки (потоки данных), переносящие информацию к подсистемам или процессам. Те в свою очередь преобразуют информацию и порождают новые потоки, которые переносят информацию к другим процессам или подсистемам, накопителям данных или внешним сущностям – потребителям информации. Таким образом, основными компонентами диаграмм потоков данных являются:
• внешние сущности;• системы/подсистемы;• процессы;• накопители данных;• потоки данных.