Проектирование информационных систем. 2

Проектирование информационных систем

 

Разработка корпоративной  информационной системы, как правило, выполняется для вполне определенного  предприятия. Особенности предметной деятельности предприятия, безусловно, будут оказывать влияние на структуру  информационной системы. Но в то же время структуры разных предприятий в целом похожи между собой. Каждая организация, независимо от рода ее деятельности, состоит из ряда подразделений, непосредственно осуществляющих тот или иной вид деятельности компании. И эта ситуация справедлива практически для всех организаций, каким бы видом деятельности они ни занимались.

 

Таким образом, любую  организацию можно рассматривать  как совокупность взаимодействующих  элементов (подразделений), каждый из которых  может иметь свою, достаточно сложную, структуру. Взаимосвязи между подразделениями тоже достаточно сложны. В общем случае можно выделить три вида связей между подразделениями предприятия:

· функциональные связи — каждое подразделение выполняет определенные виды работ в рамках единого бизнес-процесса;

· информационные связи — подразделения обмениваются информацией (документами, факсами, письменными и устными распоряжениями и т. п.);

· внешние связи — некоторые подразделения взаимодействуют с внешними системами, причем их взаимодействие также может быть как информационным, так и функциональным.

 

Общность структуры  разных предприятий позволяет сформулировать некоторые единые принципы построения корпоративных информационных систем.

 

В общем случае процесс разработки информационной системы может быть рассмотрен с двух точек зрения:

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

· в терминах основных потоков работ: исполнители, действия, последовательность действий и т. п.;

· по времени, или по стадиям жизненного цикла разрабатываемой системы. В данном случае рассматривается динамическая организация процесса разработки, описываемая в терминах циклов, стадий, итераций и этапов.

 

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

Проект — это ограниченное по времени целенаправленное изменение  отдельной системы с изначально четко определенными целями, достижение которых определяет завершение проекта, а также с установленными требованиями к срокам, результатам, риску, рамкам расходования средств и ресурсов и к организационной структуре.

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

Можно выделить следующие основные отличительные признаки проекта как объекта управления:

· изменчивость — целенаправленный перевод системы из существующего в некоторое

желаемое состояние, описываемое  в терминах целей проекта;

· ограниченность конечной цели;

· ограниченность продолжительности;

· ограниченность бюджета;

· ограниченность требуемых ресурсов;

· новизна для предприятия, для которого реализуется проект;

· комплексность — наличие большого числа факторов, прямо или косвенно влияющих на прогресс и результаты проекта;

· правовое и организационное обеспечение — создание специфической организационной структуры на время реализации проекта.

 

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

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

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

 

Каждый проект, независимо от сложности и объема работ, необходимых  для его выполнения, проходит в своем развитии определенные состояния: от состояния, когда «проекта еще нет», до состояния, когда «проекта уже нет». Совокупность ступеней развития от возникновения идеи до полного завершения проекта принято разделять на фазы (стадии, этапы).

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

Можно выделить следующие  фазы развития информационной системы:

· формирование концепции;

· разработка технического задания;

· проектирование;

· изготовление;

· ввод системы в эксплуатацию.

Рассмотрим каждую из них более подробно.

 

Вторую и частично третью фазы принято называть фазами системного проектирования, а последние две (иногда сюда включают и фазу проектирования) — фазами реализации.

 

Концептуальная  фаза

Главным содержанием  работ на этой фазе является определение  проекта, разработка его концепции, включающая:

· формирование идеи, постановку целей;

·формирование ключевой команды проекта;

· изучение мотивации и требований заказчика и других участников;

· сбор исходных данных и анализ существующего состояния;

· определение основных требований и ограничений, требуемых материальных, финансовых и трудовых ресурсов;

· сравнительную оценку альтернатив;

· представление предложений, их экспертизу и утверждение.

 

Разработка  технического предложения

Главным содержанием  этой фазы является разработка технического предложения и переговоры с заказчиком о заключении контракта. Общее содержание работ этой фазы:

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

· разработка и утверждение технического задания;

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

· составление сметы и бюджета проекта, определение потребности в ресурсах;

· разработка календарных планов и укрупненных графиков работ;

· подписание контракта с заказчиком;

· ввод в действие средств коммуникации участников проекта и контроля за хо дом работ.

 

Проектирование

На этой фазе определяются подсистемы, их взаимосвязи, выбираются наиболее эффективные способы выполнения проекта и использования ресурсов. Характерные работы этой фазы:

· выполнение базовых проектных работ;

· разработка частных технических заданий;

· выполнение концептуального проектирования;

· составление технических спецификаций и инструкций;

· представление проектной разработки, экспертиза и утверждение.

 

Разработка

На этой фазе производятся координация и оперативный контроль работ по проекту, осуществляется изготовление подсистем, их объединение и тестирование. Основное содержание:

· выполнение работ по разработке программного обеспечения;

· выполнение подготовки к внедрению системы;

· контроль и регулирование основных показателей проекта.

 

Ввод системы в эксплуатацию

На этой фазе проводятся испытания, опытная эксплуатация системы в  реальных условиях,

ведутся переговоры о результатах  выполнения проекта и о возможных  новых контрактах. Основные виды работ:

· комплексные испытания;

 

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

Существует международный стандарт, регламентирующий жизненный цикл ин формационных систем — ISO/IEC 12207.

ISO — International Organization of Standardization (международная организация по стандартизации). IEC— International Electrotechnical Commission (международная комиссия по электротехнике).

Стандарт ISO/IEC 12207 определяет структуру жизненного цикла, содержащую процессы, действия и задачи, которые должны быть выполнены во время создания информационной системы.

Согласно данному стандарту структура жизненного цикла основывается на трех группах процессов:

· основные процессы жизненного цикла (приобретение, поставка, разработка, эксплуатация, сопровождение);

· вспомогательные процессы, обеспечивающие выполнение основных процессов (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, оценка, аудит, разрешение проблем);

· организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого жизненного цикла, обучение).

 

 

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

 

Основными задачами, решение которых должна обеспечивать методология создания корпоративных информационных систем (с помощью соответствующего на бора инструментальных средств), являются следующие:

· обеспечение создания информационных систем, отвечающих целям и задачам предприятия и соответствующих предъявляемым к ним требованиям по автоматизации деловых процессов;

· гарантия создания системы с заданными параметрами в течение заданного времени в рамках оговоренного заранее бюджета;

· простота сопровождения, модификации и расширения системы с целью обеспечения ее соответствия изменяющимся условиям работы предприятия;

· обеспечение создания корпоративных информационных систем, отвечающих требованиям открытости, переносимости и масштабируемости;

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

 

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

Основное содержание технологии проектирования составляют технологические инструкции, состоящие из описания последовательности технологических операций, условий, в зависимости от которых выполняется та или иная операция, и описаний самих операций.

 

Технология проектирования может быть представлена как совокупность трех составляющих:

· заданной последовательности выполнения технологических операций проектирования;

· критериев и правил, используемых для оценки результатов выполнения технологических операций;

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

 

Каждая технологическая операция должна обеспечиваться следующими материальными и информационными ресурсами:

· данными, полученными на предыдущей операции (или исходными данными), представленными в стандартном виде;

· методическими материалами, инструкциями, нормативами и стандартами;

· программными и техническими средствами;

· исполнителями.

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

 

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

· поддерживать полный жизненный цикл информационной системы;

· обеспечивать гарантированное достижение целей разработки системы с заданным качеством и в установленное время;

· обеспечивать возможность разделения крупных проектов на ряд подсистем — декомпозицию проекта на составные части, разрабатываемые группами исполнителей ограниченной численности, с последующей интеграцией составных частей;

· технология должна обеспечивать возможность ведения работ по проектированию отдельных подсистем небольшими группами (3-7 человек). Это обусловлено принципами управляемости коллектива и повышения производительности за счет минимизации числа внешних связей;

· обеспечивать минимальное время получения работоспособной системы;

 

Декомпозиция проекта  позволяет повысить эффективность  работ. Подсистемы, на которые разбивается проект, должны быть слабо связанны по данным и функциям. Каждая подсистема разрабатывается отдельной группой разработчиков. При этом необходимо обеспечить координацию работ и исключить дублирование результатов, получаемых каждой проектной группой. Здесь имеется в виду не реализация информационной системы в целом, а разработка ее отдельных подсистем. Как правило, даже при наличии полностью завершенного проекта внедрение разработанной системы проводится последовательно, по отдельным подсистемам. Реализация же всей системы в сжатые сроки может потребовать привлечения большого числа разработчиков, при этом эффект может оказаться ниже, чем при реализации отдельных подсистем в более короткие сроки меньшим числом разработчиков.

 

· предусматривать возможность управления конфигурацией проекта, ведения версий проекта и его составляющих, возможность автоматического выпуска проектной документации и синхронизацию ее версий с версиями проекта;

· обеспечивать независимость выполняемых проектных решений от средств реализации системы — системы управления базами данных, операционной системы, языка и системы программирования.

 

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

 

Понятие профиля  информационной системы

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

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

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

Профиль не должен противоречить  использованным в нем базовым  стандартам и нормативным документам. Он должен применять выбранные из альтернативных вариантов необязательные возможности и значения параметров в пределах допустимых.

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

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

Обычно рассматривают две группы профилей:

· регламентирующие архитектуру и структуру информационной системы;

· регламентирующие процессы проектирования, разработки, применения, сопровождения и развития системы.

В зависимости от области  применения профили могут иметь  разные категории и соответственно разные статусы утверждения:

· профили конкретной информационной системы, определяющие стандартизованные проектные решения в пределах данного проекта;

· профили информационной системы, предназначенные для решения некоторого класса прикладных задач.

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

Принципы формирования профиля информационной системы

Использование профилей информационных систем призвано решить следующие задачи:

· снижение трудоемкости проектов;

· повышение качества компонентов информационной системы;

· обеспечение расширяемости и масштабируемости разрабатываемых систем;

· обеспечение возможности функциональной интеграции в информационную систему задач, которые раньше решались раздельно;

· обеспечение переносимости прикладного программного обеспечения.

В зависимости от того, какие из указанных задач являются наиболее приоритетными, производится выбор стандартов и документов для формирования профиля.

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

· существует множество международных и национальных стандартов, которые не

полностью и неравномерно удовлетворяют потребности в  стандартизации объектов и процессов создания и применения сложных информационных систем;

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

· функциональными стандартами поддержаны и регламентированы только самые простые объекты и рутинные, массовые процессы: телекоммуникации, программирование, документирование программ и данных. Наиболее сложные и творческие процессы создания и развития крупных распределенных ин формационных систем — системный анализ и проектирование, интеграция компонентов и систем, испытания и сертификация — почти не поддержаны требованиями и рекомендациями стандартов из-за трудности их формализации и унификации;

· совершенствование и согласование нормативных и методических документов в ряде случаев позволяют создать на их основе национальные и международные стандарты.

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

Эталонная модель среды  открытых систем (OSE/RM) определяет разделение любой информационной системы на две составляющие: приложения (прикладные программы и программные комплексы) и среду, в которой эти приложения функционируют.

Между приложениями и  средой определяются стандартизованные  интерфейсы — Application Program Interface (API), которые являются необходимой частью про филей любой открытой системы.

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

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

· стандартизованные описания функций, выполняемых данной системой;

· функции взаимодействия системы с внешней для нее средой;

· стандартизованные интерфейсы между приложениями и средой информационной системы;

· профили отдельных функциональных компонентов, входящих в систему. Для эффективного использования конкретного профиля необходимо:

· выделить объединенные логической связью проблемно-ориентированные области функционирования, где могут применяться стандарты, общие для одной организации или группы организаций;

· идентифицировать стандарты и нормативные документы, варианты их использования и параметры, которые необходимо включить в профиль;

· документально зафиксировать участки конкретного профиля, где требуется создание новых стандартов или нормативных документов, и идентифицировать характеристики, которые могут оказаться важнымидля разработки недостающих стандартов и нормативных документов этого профиля;

· формализовать профиль в соответствии с его категорией, включая стандарты, различные варианты нормативных документов и дополнительные параметры, которые непосредственно связаны с профилем;

· опубликовать профиль и/или продвигать его по формальным инстанциям для дальнейшего распространения.

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

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

 

Структура профилей информационных систем

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

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