Проектирование ИС. Методологии разработки систем

 

Функциональное моделирование является важным элементом анализа, который выполняется на начальном этапе проектирования любой автоматизированной информационной системы, в том числе и системы управления предприятием. Разработка и анализ функциональной модели деятель­ности предприятия позволяет достаточно глубоко погрузиться в предметную область, выявить бизнес-процессы, используемые на предприятии, определить информационные потоки, выявить узкие места в деятельности предприятия.

Бизнес-модель предприятия может создаваться с помощью различных инструментов. В настоящее время проработаны ряд методологий, позво­ляющих взяться за создание функционально-информационного описания бизнес-процессов предприятия. Функциональная модель представляет со­бой структурированное изображение функций производственной системы или среды, информации и объектов, связывающих эти функции.

Существуют различные методологии построения ИС, наиболее известными являются следующие:

• структурный подход;

• объектно-ориентированный подход;

• CASE (Computer Aided Software Ingineering);

• реинжиниринг программного обеспечения.

Для структурного подхода характерно выполнение «шаг за шагом, сверху вниз». Каждый шаг строится на основе предыдущего. В данном подходе используется структурный анализ, структурный дизайн, структур­ное программирование, диаграммы потоков данных.

Структурный анализ определяет входы, процессы, выходы системы. Система разбивается на подсистемы или модули (декомпозиция), затем строится графическая модель информационных потоков. На диаграммах потоков данных отображаются компоненты процесса, потоки данных.

Для целей структурного анализа традиционно используются три груп­пы средств, иллюстрирующих:

• функции, которые система должна выполнять;

• отношения между данными;

• зависящее от времени поведение системы (аспекты реалького времени).

Среди многообразия графических нотаций, используемых для решения перечисленных задач, в методологиях структурного анализа наиболее час­то и эффективно применяются следующие:

DFD (Data Flow Diagrams) — диаграммы потоков данных совместно со словарями данных и спецификациями процессов (мини-спецификациями);

ERD (Entity-Relationship Diagrams) — диаграммы «сущность-связь»;

STD (State Transition Diagrams) — диаграммы переходов состояний — они содержат графические и текстовые средства моделирования: первые — для удобства отображения основных компонент модели, вторые — для обеспечения точного определения ее компонент и связей.

Классическая DFD показывает внешние по отношению к системе ис­точники и стоки (адресаты) данных, идентифицирует логические функции (процессы) и группы элементов данных, связывающие одну функцию с другой (потоки), а также идентифицирует хранилища (накопители) дан­ных, к которым осуществляется доступ. Структуры потоков данных и определения их компонент хранятся и анализируются в словаре данных. Каждая логическая функция (процесс) может быть детализирована с помо­щью DFD нижнего уровня; когда дальнейшая детализация перестает быть полезной, переходят к выражению логики функции при помощи спецификации процесса (мини-спецификации). Содержимое каждого хранилища также сохраняют в словаре данных, модель данных хранилища раскрывается с помощью ERD. В случае наличия реального времени DFD дополня­ется средствами описания зависящего от времени поведения системы, рас­крывающимися с помощью STD. Эти взаимосвязи показаны на рис. 10.

Необходимо отметить, что для функционального моделирования наряду с DFD достаточно часто применяется и другая нотация — SADT (точнее, ее стандартизованное подмножество IDEF0).

Таким образом, перечисленные выше средства позволяют сделать полное описание системы независимо от того, является ли она существующей или разрабатываемой с нуля. Такое подробное описание того, что должна делать система, освобожденное насколько это возможно от рассмотрения путей реализации, получило название спецификации требований, дающей проектировщику, реализующему следующий этап ЖЦ, четкое представле­ние о конечных результатах, которые должны быть достигнуты.

Диаграммы потоков данных (DFD — Data Flow Diagramm) строятся из следующих элементов: функция, поток данных, хранилище данных, внешняя сущность (см. табл.8). Такой тип обозначений элементов DFD-диаграммы получил название "нотация Йордона-Де Марко", по именам разработавших его специалистов. Функции, хранилища и внешние сущно­сти на DFD-диаграмме связываются дугами, представляющими потоки данных. Дуги могут разветвляться или сливаться, что означает, соответственно, разделение потока данных на части, либо слияние объектов. При интерпретации DFD-диаграммы используются следующие правила:

- Функции преобразуют входящие потоки данных в выходящие.

- Хранилища данных не изменяют потоки данных, а служат только для хранения поступающих объектов.

 

- Преобразования потоков данных во внешних сущностях игнорируется.

 

Таблица 8

Элементы диаграммы потоков данных

 

 

Помимо этого, для каждого информационного потока и хранилища определяются связанные с ними элементы данных. Каждому элементу данных присваивается имя, также для него может быть указан тип даных и формат. Именно эта информация является исходной на следующем этапе проектирования — построении модели "сущность-связь". При этом, как правило, информационные хранилища преобразуются в сущности, проектировщику остается только решить вопрос с использованием элементов данных, не связанных с хранилищами.

Построим DFD-диаграмму для предприятия, строящего свою деятель­ность по принципу "изготовление на заказ". На основании полученных заказов формируется план выпуска продукции на определенный период. В соответствии с этим планом определяются потребность в комплектующих изделиях и материалах, а также график загрузки производственного обо­рудования. После изготовления продукции и проведения платежей, гото­вая продукция отправляется заказчику.

 

 

 

На рис. 10. представлена функциональная модель описываемого пред­приятия. Эта диаграмма представляет самый верхний уровень функцио­нальной модели. Естественно, это весьма грубое описание предметной области. Уточнение модели производится путем детализации необходимых функций на DFD-диаграмме следующего уровня. Так мы можем разбить функцию "Определение потребностей и обеспечение материалами" на подфункции "Определение потребностей", "Поиск поставщиков", "Заклю­чение и анализ договоров на поставку", "Контроль платежей", "Контроль поставок", связанные собственными потоками данных, которые будут представлены на отдельной диаграмме. Детализация модели должна про­изводится до тех пор, пока она не будет содержать всю информацию, не­обходимую для построения информационной системы.

Другие нотации,используемые при построении диаграмм потоков данных.Помимо нотации Йордона-Де Марко для элементов DFD-диаграм могут использоваться и другие условные обозначения (OMT, SSADM, но­тация Гейна-Сарсона и т.д.). Все они обладают практически одинаковой функциональностью и различаются лишь в деталях. Например, в нотации Гейна-Сарсона для обозначения функций используются прямоугольники с закругленными углами, а также не рассматриваются управляющие потоки данных. В остальном эти системы обозначений эквивалентны.

Инструментальные средства проектирования (CASE-системы), как правило, поддерживают несколько нотаций представления DFD-диаграмм. Одной из таких систем является Power Designer компании Sybase, который включает следующие модули:

Process Analyst — построение диаграмм потоков данных с использо-ваанием любой из вышеупомянутых нотаций

Data Analyst — построение диаграмм "сущность-связь" и преобразо­вание ее в реляционную модель

Application Modeller — средство для генерации приложений.

Методология SADT (IDEF0). Методология SADT (Structured Analisys and Design Technique) разработана Дугласом Т. Россом в 1969-73 годах. Она изначально создавалась для проектирования систем более общего назначения по сравнению с другими структурными методами, выросшими из проектирования программного обеспечения. IDEF0 (подмножество SADT) используется для моделирования бизнес-процессов в организационных системах и имеет развитые процедуры поддержки коллективной работы. Методология IDEF0 (Руководящий документ Госстандарта РФ "Методоло­гия функционального моделирования IDEF0") предназначена для функционального моделирования, то есть моделирования выполнения функций объекта, путем создания описательной графической модели, показываю­щей что, как и кем делается в рамках функционирования предприятия.

В терминах IDEF0 система представляется в виде комбинации блоков и дуг (см. рис. 11). Блоки представляют функции системы, дуги представ­ляют множество объектов (физические объекты, информация или действия, которые образуют связи между функциональными блоками). Место соединения дуги с блоком определяет тип интерфейса.

 

 

Рис.11. Функциональный блок модели IDEF0

 

Правила интерпретации модели:

· функциональный блок (функция) преобразует входные объекты в выходные;

· управление определяет, когда и как это преобразование может или должно произойти;

· исполнитель осуществляет это преобразование.

С дугами связываются метки на естественном языке, описывающие данные, которые они представляют. Дуги показывают, как функции систе­мы связаны между собой, как они обмениваются данными и осуществляют управление друг другом. Выходы одной функции могут быть входами, управлением или исполнителями другой.

Дуги могут разветвляться и соединяться. Ветвление означает множественность (идентичные копии одного объекта) или расщепление (различные части одного объекта). Соединение означает объединение или слияние объектов.

Каждый блок IDEF0-диаграммы может быть представлен несколькими блоками, соединенными интерфейсными дугами, на диаграмме следующе­го уровня. Эти блоки представляют подфункции (подмодули) исходной функции. Каждый из подмодулей может быть декомпозирован аналогичным образом. Число уровней не ограничивается, зато рекомендуется на одной диаграмме использовать не менее 3 и не более 6 блоков.

На рис. 12 представлена IDEF0-модель деятельности описанного выше предприятия. Методология IDEF0 реализуется с помощью пакетов ARIS, BPWIN.