DFD-технология: интегрированная структурная модель
Классификация структурных методологий. Сравнительный анализ технологий.
Литература
Основная литература
1. Вендров, А.М. Проектирование программного обеспечения экономических информационных систем: Учебник. – 2-е изд., перераб. и доп. / А.М. Вендров. – М.: Финансы и статистика, 2005. – 544 с.
2. Смирнова Г.Н. и др. Проектирование экономических информационных систем: учебник / Г.Н. Смирнова, А.А. Сорокин, Ю.Ф. Тельнов; под ред. Ю.Ф. Тельнова. – М.: Финансы и статистика, 2005. – 512 с.
Дополнительная литература
- ГОСТ 34.601-90 Информационные технологии. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Стадии создания.
- ГОСТ Р ИСО/МЭК 12207-99 Информационная технология. Процессы жизненного цикла программных средств.
Тема 4. Структурные методы анализа и проектирования ИС (функционально ориентированный подход)
Цель:
· изучить общие методологии проектирования информационных систем;
· изучить методы моделирования предметной области;
· изучить методы проектирования информационных структур.
Результат обучения.После обучения студент должен:
· знать классификацию структурных методологий;
· знать и уметь применять методы описания предметных областей;
· знать и уметь применять методы моделирования данных.
План:
4.1 Классификация структурных методологий. Сравнительный анализ технологий.
4.2 Методологии структурного анализа Йодана/де Марко и Гейна-Сарсона
4.3 Метод функционального моделирования SADT (IDEF0)
4.4 Метод моделирования процессов (IDEF3)
4.5 Моделирование данных (IDEF1X)
Современные структурные методологии анализа и проектирования классифицируются по следующим признакам:
1. по отношению к школам — Software Engineering (SE) и Information Engineering (IE)
2. по порядку построения модели — процедурно-ориентированные, ориентированные на данные и информационно-ориентированные
3. по типу целевых систем — для систем реального времени (СРВ) идля информационных систем (ИС)
SE является нисходящим поэтапным подходом к разработке ПО, начинающейся с общего взгляда на его функционирование. Затем производится декомпозиция на подфункции, и процесс повторяется для подфункцийдо тех пор, пока они не станут достаточно малы для их реализации кодированием. В результате получается ирархическая, структурированная, модульная программа. SE являетсяуниверсальной дисциплиной разработки ПО, успешно применяющейся как при разработке сиетем реального времени, так и при разработке информационных систем. IE— более новая дисциплина. С одной стороны, она имеет более широкую область применения, чем SE: 1Е является дисциплиной построения систем вообще, а не только систем ПО, и включает этапы более высокого уровня (например, стратегическое планирование), однако на этапе проектирования систем ПО эти дисциплины аналогичны. С другой стороны, 1Е — более узкая дисциплина, чем SE, т.к. 1Е используется только для построения информационных систем, а SE — для всех типов систем.
Разработка ПО основана на модели ВХОД-ОБРАБОТКА-ВЫХОД: данные входят в систему, обрабатываются или преобразуются и выходят из системы. Такая модель используется во всех структурных методологиях. При этом важен порядок построения модели. Традиционный процедурно-ориентированный подход регламентирует первичность проектирования функциональных компонентов по отношению к проектированию структур данных: требования к данным раскрываются через функциональные требования. Наиболее часто используемые методологий анализа и проектирования.
1. Методологии структурного анализа Йодана/де Марко и Гейна-Сарсона
2. SADT- технология структурного анализа и проектирования
При подходе, ориентированном на данные, вход и выход являются наиболее важными — структуры данных определяются первыми, а процедурные компоненты являются производными отданных. Фактически процесс проектирования заключается в определении структур данных, слиянии их в некий прообраз иерархической структуры программы и наполнении этой структуры детальной логикой обработки данных. Для поддержки такого подхода традиционно используются сетевые диаграммы для определения потоков, источников и приемников данных, древовидные структурные диаграммы для представления иерархии как структур данных, так и программных структур, а также диаграммы детализации логики процедур (обычно на базе структурированного естественного языка).
1. Структурное проектирование Джексона.
2. Подхода Мартина
В настоящее время известно около 90 разновидностей структурного анализа, однако практически все активно используемые методологии могут быть разбиты на две группы – применяющие методы и технологии диаграмм потоков данных (в различных нотациях) и использующие SADT-методологию (ее стандартизированное подмножество IDEF0).
В основе классической DFD- технологии лежат три группы средств моделирования:
Диаграммы, иллюстрирующие функции, которые система должна выполнять, и связи между этими функциями.
Рис. Компоненты DFD-технологии
Диаграммы потоков данных (DFD) являются основным средством моделирования функциональных требований проектируемой системы. С их помощью эти требования разбиваются на функциональные компоненты (процессы) и представляются в виде сети, связанной потоками данных. Главная цель таких средств — продемонстрировать, как каждый процесс преобразует свои входные данные в выходные, а также выявить отношения между этими процессами.
Целью рассматриваемых методологий является преобразование общих, неясных знаний о требованиях к системе в точные (насколько это возможно) определения. Обе методологии фокусируют внимание на потоках данных, их главное назначение — создание базированных на графике документов по функциональным требованиям. Методологии поддерживаются традиционными нисходящими методами проектирования спецификаций и обеспечивают один из лучших способов связи между аналитиками, разработчиками и пользователями системы за счет интеграции множества следующих средств:
1. DFD — диаграммы потоков данных. Являются графическими иерархическими спецификациями, описывающими систему с позиций потоков данных. В состав DFD входят четыре графических символа:
a) стрелки, представляющие потоки данных, описывающие передвижение объектов от одной части системы к другой;
b) функциональный блок, отображающий процессы преобразования входных потоков данных в выходные;
c) внешние сущности, представляющие внешние источники и получатели данных, обеспечивающие необходимые входы для системы и являющиеся приемниками ее выходов;
d) хранилища данных.
2. Словари данных. Являются каталогами всех элементов данных, присутствующих в DFD, включая групповые и индивидуальные потоки данных, хранилища и процессы, а также все их атрибуты.
3. Миниспецификации обработки, описывающие DFD-процессы нижнего уровня и являющиеся базой для кодогенерации. Фактически миниспецификации представляют собой алгоритмы описания задач, выполняемых процессами: множество всех миниспецификации является полной спецификацией системы.
Для изображения DFD традиционно используются две различные нотации: Иодана(Yourdon) и Гейна-Сарсона (Gane-Sarson). Далее при построении примеров будет использоваться нотация Иодана, все исключения будут предварительно оговариваться.
Таблица 1