Методы структурного проектирования
Подходы к проектированию ИС
Методики, используемые при проектировании, сначала программ, а затем и систем в целом, формировались в течение длительного промежутка времени. Необходимость таких методик проявлялась при разработке сложных программных систем в условиях дефицита времени на разработку. Подобные ситуации были характерны для крупных промышленных корпораций и учреждений оборонного ведомства, поэтому многие современные методики изначально были, например, внутренними стандартами МО США.
В основе наиболее известных методик проектирования ИС лежат два подхода: структурный и объектно-ориентированный.
Структурные методы анализа и проектирования используют иерархические структуры для моделирования объекта исследования.
Структурное проектирование основано на алгоритмической декомпозиции, особое внимание в которой уделяется порядку происходящих событий.
Эти методы предназначены, в основном, для построения функциональных моделей и моделей данных разного уровня.
Объектно-ориентированный подход основан на выделении агентов, которые являются либо субъектами действий, либо объектами действий. При объектно-ориентированной декомпозиции каждый объект обладает своим собственным поведением и каждый из них моделирует некоторый объект реального мира.
По своей сути структурный подход и объектно-ориентированный подход ортогональны, то есть, вряд ли удастся спроектировать сложную систему одновременно двумя способами, но можно применить их последовательно.
Структурный подход состоит в декомпозиции (разбиении) системы на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи, и т.д. Процесс разбиения продолжается вплоть до конкретных процедур.
Все наиболее распространенные структурные методы базируются на следующих принципах:
- принцип разбиения сложной проблемы на множество меньших независимых задач, легких для понимания и решения;
- принцип организации составных частей в иерархические структуры.
В рамках структурного подхода наиболее часто используемыми моделями являются:
- SADT (Structured Analysis and Design Technique) – метод структурного анализа и проектирования – модели и соответствующие функциональные диаграммы, объединенные данным названием;
- DFD (Data Flow Diagrams) – диаграммы потоков данных;
- ERD (Entity-Relationship Diagrams) – диаграммы "сущность-связь".
Интерпретация этих моделей зависит от стадии жизненного цикла разрабатываемого проекта.
SADT-модели используются для моделирования бизнес-процессов на стадии формирования требований к проектируемой ИС и не предназначены для проектирования программного обеспечения. На этой стадии для отображения потоков данных обычно применяются DFD-диаграммы, а для описания данных на концептуальном уровне – ERD-диаграммы.
На стадии анализа и проектирования DFD-диаграммы используются для описания структуры проектируемой системы, а ERD-диаграммы – для описания модели данных логического и физического уровней. Кроме перечисленных средств на этой стадии широко используются всевозможные структурные схемы (архитектура ИС, иерархия экранных форм, меню и т.п.).
В начале 90-ых годов прошлого века в США на основе SADT был принят стандарт моделирования бизнес-процессов IDEF0 (http://www.idef.com). Этот стандарт принят в нескольких международных организациях, в том числе в НАТО и МВФ. С 2000г. Стандарт принят в РФ и является стандартом в области построения функциональных моделей при проектировании ИС (РД IDEF0-2000).