В автоматизированных проектных процедурах вместо еще несуществующего проектируемого объекта оперируют некоторым квазиобъектом – моделью, которая отражает некоторые интересующие исследователя свойства объекта. Модель может быть физическим объектом (макет, стенд) или спецификацией. Среди моделей-спецификаций различают упомянутые выше функциональные, поведенческие, информационные, структурные модели (описания). Эти модели называют математическими, если они формализованы средствами аппарата и языка математики.
В свою очередь, математические модели могут быть геометрическими, топологическими, динамическими, логическими и т. п., если они отражают соответствующие свойства объектов. Наряду с математическими моделями, при проектировании используют рассматриваемые ниже функциональные IDEFO-модели, информационные модели в виде диаграмм сущность – отношение, геометрические модели-чертежи. В дальнейшем, если нет специальной оговорки, под словом «модель» будем подразумевать математическую модель (ММ).
Математическая функциональная модель в общем случае представляет собой алгоритм вычисления вектора выходных параметром Y при заданных векторах параметров элементов X и внешних параметров Q.
Математические модели могут быть символическими и численными. При использовании символических моделей оперируют не значениями величин, а их символическими обозначениями (идентификаторами). Численные модели могут быть аналитическими, т. е. их можно представить в виде явно выраженных зависимостей выходных параметров Y от параметров внутренних X и внешних Q, или алгоритмическими, в
которых связь Y, X и Q задана неявно и в виде алгоритма моделирования. Важнейший частный случай алгоритмических целей – имитационные, они отображают процессы в системе при наличии внешних воздействий на систему. Другими словами, имитационная модель – это алгоритмическая поведенческая модель.
Классификацию математических моделей выполняют также по ряду других признаков. Так, в зависимости от принадлежности к тому или иному иерархическому уровню выделяют модели уровней системного, функционально-логического, макроуровня (сосредоточенного) и микроуровня (распределенного).
По характеру используемого для описания математического аппарата различают модели лингвистические, теоретико-множественные, абстрактно-алгебраические, нечеткие, автоматные и т. п.
Например, на системном уровне преимущественно применяют модели систем массового обслуживания и сети Петри, на функционально-логическом уровне –автоматные модели на основе аппарата передаточных функций или конечных автоматов, на макроуровне – системы алгебраических и дифференциальных уравнений, на микроуровне – дифференциальные уравнения в частных производных. Особое место занимают геометрические модели, используемые в системах конструирования.
Кроме того, введены понятия полных моделей и макромоделей, моделей статических, детерминированных и стохастических, аналоговых и дискретных, символических и численных.
Полная модель объекта в отличие от макромодели описывает не только процессы на внешних выводах моделируемого объекта, но и внутренние для объекта процессы.
Статические модели описывают статические состояния, в них не присутствует время в качестве независимой переменной. Динамические модели отражают поведение системы, т. е. в них обязательно используется время.
Стохастические и детерминированные модели различают в зависимости от учета или неучета случайных факторов.
В аналоговых моделях фазовые переменные – непрерывные величины, в дискретных – дискретные, в частном случае дискретные модели являются логическими (булевыми), в них состояние системы и ее элементов описывается булевыми величинами. В ряде случаев полезно применение смешанных моделей, в которых одна часть подсистем характеризуется аналоговыми моделями, другая логическими.
Для каждого класса АС (САПР, ERP, геоинформационные системы и т. д.) можно указать фирмы, специализирующиеся на разработке программных (а иногда и программно-аппаратных) систем. Многие из них на основе одной из базовых технологий реализуют свой подход к созданию АС и придерживаются стратегии либо тотального поставщика, либо открытости и расширения системы приложениями и дополнениями третьих фирм.
В России действует государственный стандарт на стадии создания автоматизированных систем ГОСТ 34.601-90. Существует и международный стандарт на стадии жизненного цикла программной продукции (ISO 12207:1995). Как собственно АС, так и компоненты АС являются сложными системами, и при их проектировании нужно использовать один из стилей проектирования:
- нисходящее (Top-of-Design); четкая реализация нисходящего проектирования приводит к спиральной модели разработки ПО, на каждом витке спирали блоки предыдущего уровня детализируются, используются обратные связи (альтернативой является так называемая каскадная модель, относящаяся к поочередной реализации частей системы);
- восходящее (Bottom-of-Design);
- эволюционное (Middle-of-Desigri).
Чаще всего применяют нисходящий стиль блочно-иерархического проектирования.
Рассмотрим этапы нисходящего проектирования АС.
Верхний уровень проектирования АС часто называют концептуальным проектированием. Концептуальное проектирование выполняют в процессе предпроектных исследований, формулировки ТЗ, разработки эскизного проекта и прототипирования (согласно ГОСТ 34.601-90, эти стадии называют формированием требований к АС, разработкой концепции АС и эскизным проектом).
Предпроектные исследования проводят путем анализа (обследования) деятельности предприятия (компании, учреждения, офиса), на котором создается или модернизируется АС. При этом нужно получить ответы на вопросы: что не устраивает в существующей технологии? Что можно улучшить? Кому это нужно и, следовательно, каков будет эффект? Перед обследованием формируются и в процессе его проведения уточняются цели обследования – определение возможностей и ресурсов для повышения эффективности функционирования предприятия на основе автоматизации процессов управления проектирования, документооборота и т. п. Содержание обследования – выявление структуры предприятия, выполняемых функций, информационных потоков и имеющихся опыта и средств автоматизации. Обследование проводят системные аналитики (системные интеграторы) совместно с представителями организации-заказчика.
На основе анализа результатов обследования строят модель, отражающую деятельность предприятия на данный момент (до реорганизации). Такую модель начинают «As Is» (как есть). Далее разрабатывают исходную концепцию АС. Эта концепция включает в себя предложения по изменению структуры предприятия, взаимодействию подразделений, информационным потокам, что выражается в модели «То Be» (как должно быть).
Результаты анализа конкретизируются в ТЗ на создание АС. В ТЗ указывают потоки входной информации, типы выходных документов и предоставляемых услyг, уровень защиты информации, требования к производительности (пропускной способности) и т. п. ТЗ направляют заказчику для обсуждения и окончательного согласования.
Эскизный проект (техническое предложение) представляют в виде проектной документации, описывающей архитектуру системы, структуру ее подсистем, состав модулей. Здесь же содержатся предложения по выбору базовых программно-аппаратных средств, которые должны учитывать прогноз развития предприятия.
В отношении аппаратных средств, и особенно ПО, такой выбор чаще всего есть выбор фирмы-поставщика необходимых средств (или, по крайней мере, типового ПО), так как правильная совместная работа программ разных фирм достигается с большим трудом. В проекте может быть предложено несколько вариантов выбора. При анализе выясняются возможности покрытия автоматизируемых функций имеющимися программными продуктами и, следовательно, объемы работ по разработке оригинального ПО. Подобный анализ необходим для предварительной оценки временных и материальных затрат на автоматизацию. Учет ресурсных ограничений позволяет уточнить достижимые масштабы автоматизации, подразделить проектирование АС на работы первой, второй очереди и т. д.
После принятия эскизного проекта разрабатывают прототип АС, представляющий собой набор программ, эмулирующих работу готовой системы. Благодаря прототипированию, можно не только разработчикам, но и будущим пользователям АС увидеть контуры и особенности системы и, следовательно, заблаговременно внести коррективы в проект.
Как на этапе предпроектных исследований, так и на последующих этапах целесообразно придерживаться определенной дисциплины фиксации и представления получаемых результатов, основанной на той или иной методике формализации спецификаций. Формализация нужна для однозначного понимания исполнителями и заказчиком
требований, ограничений и принимаемых решений. При концептуальном проектировании применяют ряд спецификаций, среди которых центральное место занимают модели преобразования, хранения и передачи информации. Модели, полученные в процессе обследования предприятия, являются моделями его функционирования. В процессе разработки АС модели, как правило, претерпевают существенные изменения (переход от «As Is» к «То Bе») и в окончательном виде модель «То Be» рассматривают в качестве модели АС.
Различают функциональные, информационные, поведенческие и структурные модели. Функциональная модель системы описывает совокупность выполняемых системой функций. Информационная модель отражает структуры данных, их состав и взаимосвязи. Поведенческая модель описывает информационные процессы (динамику функционирования).