Эффективный подход к решению проблемы сложности ИС заключается в иерархической декомпозиции («разделяй и властвуй»).
Правильная декомпозиция это:
- количество связей между отдельными подсистемами должно быть минимальным
- связность отдельных частей внутри каждой подсистемы должна быть максимальной
- каждая подсистема должна инкапсулировать свое содержимое, что позволяет рассматривать структуру каждой подсистемы независимо от других
- каждая подсистема должна иметь определенный интерфейс с другими подсистемами, что позволяет строить системы более высокого уровня, рассматривая каждую подсистему как единое целое, игнорируя ее внутреннее содержание
В SE существует два подхода к разработке ИС:
- структурный (функциональный модуль). В его основе положен принцип функциональной декомпозиции, при котором структура системы описывается в терминах иерархии ее функций и передачи информации между отдельными функциональными элементами
- объектно-ориентированный подход использует объектную декомпозицию, при которой структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами
Все методы СП базируются на ряде основных принципов:
|
|
- разделяй и властвуй
- иерархическое упорядочивание, т.е. для исследования системы необходимо исследовать подсистемы сверху вниз, когда в последовательном уточнении функциональных требований от общего уровня до детального (детальный уровень заканчивается спецификацией на СЕЯ – структурный естественный язык). При этом систему представляют в виде иерархической структуры, в которой очередной уровень детализации отвечает потребностям формирования требований к ИС соответствующего уровня
- абстрагирование - выделение существенных аспектов системы и отвлечение от несущественных
- непротиворечивость - контроль, обоснованность и согласованность элементов системы
- структурирование данных
- концептуальные общности – они заключаются в следовании единой философии на всех этапах ЖЦ (формирование требований, системного анализа, проектирование, реализация и тестирование)
Современные методологии СП основаны на наглядном диаграммном инструментарии (используются графы, диаграммы, таблицы, шаблоны).
В настоящее время используются следующие методологии СП:
- Иордан/Де Марко
- Гейн/Сарсен
- SADT (Structured Analysis Design Technique)
- Мартин
В СП используют метод Т.Давенпорта, который предлагает в описании сложных ИС использовать понятия «процессы» и «логические функции».
Процесс – специфически упорядоченная совокупность работ, заданий (activity) во времени и пространстве с указанием начала и конца и точным определением входов и выходов, т.е. результатов процесса (распределение порожних вагонов, разработка планов формирования поездов, обеспечение достоверности данных).
|
|
С помощью процессов или логических функций можно описать все виды деятельности предметной или проблемной области.
Виды деятельности:
- основные, через которые реализуют цели создания системы (управление технологическим процессом ремонта на локомотивно-ремонтном заводе)
- вспомогательные - необходимы для обеспечения основных (управление инфраструктурой локомотивно-ремонтного завода, разработка классификаторов)
В СП используют 3 группы средств, описывающих проектируемую систему:
- для функционирования структуры системы
- для структуры данных
- для описания динамики поведения системы
Каждой группе соответствуют определенные виды моделей. Наиболее распространены из них:
- для первой группы:
- DFD-модель (Data Flow Diagram)
- IDEF0 - модель SADT
- для второй группы:
- ERD (Entity Relationship Diagram)
- IDEF1X – модель SADT
- для третьей группы:
- STD (State Transition Diagram) – диаграмма перехода состояний
- IDEF3
- IDEF0PN (Integration Definition Petri Network)
Исходным источником для выбора и построения архитектуры функциональных требований к проектированию ИС является выбранная локальная проблемная область (ЛПО). Представление (view) пользователя системы, модели процессов и/или логических функций, выбранных в view так, чтобы:
- была возможность создания для ЛПО развитой информационной среды
- эффективными функциональными приложениями (бизнес-процессами)