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

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

Основоположником кибернетики (науки о системах и методы управления) является Норберт Винер (США). Труды его последователей стали фундаментом теории автоматического управления. Это наука об общих законах получения, хранения, передачи и преобразования информации в сложных системах управления. Применение компьютерной техники для решения задач управления привело к развитию теории информации, теории кодирования, сформировался самостоятельное научное направление информатика. Результаты этих исследований легли в основу разработки методологии применения технических и программных средств для решения задач различной практической направленности.

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

Основоположником единых методических подходов в проектировании ИС был академик В.М. Глушков, который сформулировал научно-методические положения и практические рекомендации по созданию автоматизированной информационной системы. Основными принципами единых методических подходов является [9]:

1. Принцип системности, который является важнейшим при создании, функционировании и развитии ИС. Он рассматривает исследуемый экономический объект, как единое целое. При этом, устанавливает направления производственно-хозяйственной деятельности организации и конкретные функции, реализуемые ею; обнаруживает различные типы связей между его структурными элементами обеспечивая целостность системы. Принцип системности предполагает проведение в организации двух аспектного анализа, а именно макро- и микроанализа. При макроанализе система и (или) ее "элементы рассматриваются как часть системы более высокого порядка. Особое внимание уделяется информационным связям: устанавливаются их направления движения, выделяются и анализируются те связи, которые обусловлены целью функционирования и исследования объекта, а затем выбираются наиболее предпочтительны, учитываемых в процессе проектирования ИС. При макроанализе изучаются все аспекты деятельности организации, анализируются ее структурные составляющие (включая деятельность на каждом рабочем месте) с целью их функциональных характеристик, проявляющихся через связи с другими элементами и внешней средой.

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

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

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

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

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

4. Принцип совместимости, который заключается в обеспечении взаимодействия ИС различных видов, назначений, уровней в процессе функционирования экономического объекта. Поэтому в процессе проектирования должна быть обеспечена системная единство методических подходов в решении проблем информационной, технической, программной совместимости всех ИС, используемых. Единство методических подходов отражается в нормативно-правовых документах, регламентирующих процесс разработки, документирования, приема и эксплуатации ИС. Это международные и отечественные стандарты (ГОСТ), отраслевые и ведомственные нормативные материалы, регламенты, протоколы, стандарты организаций.

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

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

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

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

Описание жизненного цикла информационной системы предполагает оперирование такими понятиями:

- Процесс - цепочка работ, последовательно выполняются;

- Этапы - последовательные отрезки времени, в течение которого выполняются работы. В течение этапа могут выполняться работы, относящиеся к разным процессам. В основе деятельности по созданию и использования автоматизированной информационной системы управления экономическим объектом лежит понятие ее жизненного цикла (ЖЦ). Жизненный цикле моделью создания и использования, автоматизированной информационной системы управления экономическим объектом, отражающим различные ее состояния, начиная с момента возникновения и необходимости в ней и заканчивая моментом полного выхода из использования всех без исключения пользователей [4].

Традиционно выделяют следующие основные этапы ЖЦ АИС [6]:

- Анализ требований;

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

- Программирование / внедрения;

- Тестирование и отладка;

- Эксплуатация и сопровождение.

Рассмотрим подробнее основные этапы ЖЦ АИС:

1. Анализ требований является первой фазой разработки АИС, на которой требования заказчика уточняются, формализуются и документируются. Фактически на этом этапе дается ответ на вопрос: "Что должна делать будущая система?", А это успехом всего проекта. В практике создания больших систем известно немало примеров неудачной реализации проекта именно из-за неполноты и нечеткости определения системных требований.

Перечень требований к АИС должен включать:

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

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

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

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

Результатом этапа должна быть модель требований к системе (то есть - системный проект), что значит:

1) архитектуру системы, ее функции, внешние условия, разделение функций между аппаратной и программной частями;

2) интерфейсы и разделение функций между человеком и системой;

3) требования к программным и информационных компонентов программной части: необходимые аппаратные ресурсы, требования к базе данных, физические характеристики компонент программной части, их интерфейсы.

Модель требований должна включать;

1) полное функциональную модель требований к будущей системе с глубиной обработки до уровня каждой операции каждого должностного лица;

2) спецификации операций нижнего уровня;

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

4) концептуальную информационную модель требований;

5) пакет отчетов и документов по информационной модели;

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

7) предложения по организации структуры для поддержки системы.

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

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

- Описать, "увидеть" и скорректировать будущую систему до того, как она будет реализована физически;

- Уменьшить затраты на разработку и внедрение системы;

- Оценить разработку по времени и результатам;

- Достичь взаимопонимания между всеми участниками работы (заказчиками, пользователями, разработчиками, программистами)

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

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

3) Модель требований может быть использована для самостоятельной разработки или корректировки уже реализованных на ее основе программных средств силами программистов отдела автоматизации предприятия.

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

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

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

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

- Разработку требований к техническим средствам;

- Определение требований к программным средствам;

- Разработку топологии, состава и структуры локальной вычислительной сети;

- Требования к этапам и срокам выполнения работ.

3. Проектирование. Этот этап дает ответ на вопрос: "Как (каким образом) система будет удовлетворять требованиям, предъявляемым к ней? Задачей этого этапа

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

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

- Детальное проектирование, которое предусматривает разработку спецификаций каждого компонента, интерфейсов между компонентами, разработку требований к тестам и плана интеграции компонентов.

Иными словами, проектирование является этапом ЖЦ, на котором определяется, как следует реализовывать требования к ЛЕС, порожденные и зафиксированы на этапе анализа. В результате должна быть построена модель реализации, которая демонстрирует, как система будет удовлетворять предъявленные к ней требования (без технических подробностей). Фактически модель реализации является развитием и уточнением модели требований, а именно проектирования является мостом между анализом и реализацией.

4. Реализация (программирование / адаптация). На этом этапе осуществляется создание ЛЕС, как комплекса программно-аппаратных средств (начиная с проектирования и создания телекоммуникационной инфраструктуры и заканчивая разработкой и установкой приложений).

5. Тестирование и отладка. Корректность АИС является ее важнейшим свойством и главным предметом заботы разработчиков. В идеальном случае под корректностью 1C подразумевают отсутствие в ней ошибок. Однако для большинства сложных программных продуктов достичь этого невозможно (в каждой программе содержится хотя бы одна ошибка). Поэтому под "корректным" обычно понимают программный продукт, работающий в соответствии с предъявленных к нему требований, то есть - продукт, для которого пока еще не найдены такие условия, в которых он окажется неработоспособным.

Установление корректности является главной целью этапа жизненного цикла, рассматривается. Надо отметить, что этап тестирования и отладки - один из самых трудоемких, утомительных и непредсказуемых этапов разработки ИС. В среднем за разработки традиционными методами этот этап занимает от 1/2 до 1/3 всего времени разработки. С другой стороны, тестирования и отладки представляют собой серьезную проблему: в некоторых случаях тестирования и отладки программы требуют в несколько раз больше времени, чем непосредственно программирования.

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

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

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

1) формулировка целей тестирования;

2) критерии качества тестирования, позволяющие оценить его результаты;

3) стратегию проведения тестирования, обеспечивающий достижение заданных критериев качества;

4) потребности в ресурсах для достижения заданного критерия качества по выбранной стратегии.

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

6. Эксплуатация и сопровождение. Основными задачами этого этапа являются:

- Обеспечение устойчивости работы системы и сохранения информации - администрирование;

- Своевременная модернизация и ремонт отдельных элементов - техническая поддержка;

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

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

Особое внимание на этапе эксплуатации и сопровождения нужно уделить вопросам обучения персонала и, соответственно, планированию инвестиций в этот процесс.

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

Существующие модели ЖЦ определяют порядок выполнения этапов в ходе разработки, а также критерии перехода от этапа к этапу. В соответствии с этим наибольшее распространение получили следующие три модели ЖЩ4]:

1. Каскадная модель (70 - 80-е годы) предусматривает переход к следующему этапу после полного завершения работ на предыдущем этапе и характеризуется четким разделением данных и процессов их обработки (рис. 2.6).

Рис. 2.6. Каскадная модель жизненного цикла ИС

2. Поэтапная модель с промежуточным контролем (80 - 85-е годы) - итерационная модель разработки с циклами обратной связи между этапами. Преимущество такой модели в том, что между этапные корректировки обеспечивают меньшую трудоемкость по сравнению с каскадной моделью; с другой стороны, время жизни каждого из этапов растягивается на весь период разработки.

3. Спиральная модель (86 - 90-е годы) - заостряет внимание на начальных этапах ЖЦ: анализе требований, проектировании спецификаций, предыдущем и детальном проектировании. На этих этапах проверяется и обосновывается реализуемость технических решений созданием прототипов. Каждый виток спирали соответствует поэтапной модели создания фрагмента или версии системы, на нем уточняются цели и характеристики проекта, определяется его качество, планируются работы следующего витка спирали. Таким образом углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который доводится до реализации (рис. 2.7.).

Рис. 2.7. Спиральная модель жизненного цикла ИС

Специалисты отмечают такие преимущества спиральной модели:

- Накопление и повторное использование программных средств, моделей и прототипов;

- Ориентация на развитие и модификацию системы в ходе ее проектирования;

- Анализ риска и издержек в процессе проектирования.

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

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

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