Методология структурного системного анализа Гейна-Сарсона. Схема анализа
Основные положения методологии структурного системного анализа информационных систем были сформулированы американскими учеными К. Гейном и Т. Сарсоном в конце 70-х годов [6]. Методология базируется на следующих принципах:
- нисходящая поэтапная разработка;
- диаграммная техника;
- иерархичность описаний;
- строгая формализация описания проектных решений;
- первоначальная проработка проекта на логическом уровне без деталей технической реализации;
- концептуальное моделирование в терминах предметной области для понимания проекта системы заказчиком;
- технологическая поддержка инструментальными средствами (CASE-системами).
Методология использует в процессе разработки особую нотацию (систему условных обозначений), которую мы будем называть нотацией Гейна-Сарсона.
Известен ряд других методологий проектирования АСОИУ (Йордана, Росса, Буча и др.), опирающихся на эти принципы, но со своей нотацией. Среди различных методологий методология Гейна-Сарсона прежде всего в силу простоты, наглядности и эффективности наиболее популярна, стандартизована за рубежом и поддерживается большинством современных CASE-систем, ориентированных на разработку информационных систем.
Результатом работы в среде CASE-системы является информационно-логическая модель АСОИУ, представляемая совокупностью иерархических диаграмм, структурограмм, текстовых описаний и документов. Предполагается, что степень детализации графических и текстовых описаний достаточна для четкого, ясного и однозначного понимания проекта АСОИУ как проектировщиком, так и заказчиком (будущим пользователем АСОИУ), а также группой технической реализации проекта.
По существу, информационно-логическая модель представляет собой иллюстрированную развернутую подробную функциональную спецификацию будущей системы с описанием логики процессов обработки данных и структур передаваемых и хранимых данных . Понятность проекта обеспечивается большим количеством диаграмм, вложенных друг в друга по нарастающей степени детализации, и записью текстов описаний на формализованном языке, близком к естественному русскому языку. При этом детали реализации ( формы и размеры экранов, цвета, шрифты, тип протокола связи и т. п.) в информационно-логической модели опускаются , их уточнение происходит в дальнейшем.
Основными компонентами информационно-логической модели системы являются [4-6] :
· контекстная диаграмма (одна или несколько);
· диаграмма потоков данных (одна или несколько);
· структурограмма данных (для каждого потока данных и накопителя
данных);
· миниспецификация (для каждого элементарного процесса ).
В соответствии с методологией модель системы определяется как иерархия контекстных диаграмм и диаграмм потоков данных (ДПД или DFD), описывающих асинхронный процесс преобразования информации от ее ввода в систему до выдачи пользователю. Диаграммы верхних уровней иерархии (контекстные диаграммы) определяют АСОИУ в целом и основные подсистемы АСОИУ с внешними входами и выходами. Они детализируются при помощи диаграмм нижнего уровня. Такая декомпозиция продолжается, создавая многоуровневую иерархию диаграмм, до тех пор, пока не будет достигнут такой уровень декомпозиции, на котором процессы становятся элементарными и детализировать их далее невозможно. Логика элементарных процессов описывается миниспецификациями.
При моделировании информация о всех компонентах проекта заносится в базу данных проекта, часто называемую словарем данных или репозиторием.
Информационно-логическая модель, хранящаяся в базе данных проекта, является достаточно полным описанием АСОИУ независимо от того, является ли она существующей или проектируемой вновь. Это описание освобождено, насколько это возможно, от деталей реализации и является полной логической функциональной спецификацией системы, понятной как заказчику, так и разработчику . На основе этой спецификации может быть составлено достаточно обоснованное техническое задание на создание или модернизацию системы и проведено техническое проектирование.
Построение информационно-логической модели проводится в несколько этапов, которые могут выполняться повторно по мере уточнения представлений о системе:
· построение контекстной диаграммы верхнего уровня;
· разбиение на подсистемы и построение контекстных диаграмм следующих уровней (этап необязательный и выполняется только для сложных АСОИУ, реализующих большое число функций);
· построение детализирующих диаграмм потоков данных (один или несколько уровней в зависимости от степени сложности системы);
· построение структурограмм потоков данных и накопителей;
· построение ER или SHM-моделей хранимых данных и переход к реляционной модели, уточнение состава и структуры накопителей;
· разработка описаний логики элементарных процессов в виде миниспецификаций.