Реферат: Жизненный цикл информационных систем. Жизненный цикл программных систем


Из рабочей учебной программы:

Тема 2. Стандарты и нормативные руководства по системной и программной инженерии.

Стандарт ISO/IEC 15288 «Системная инженерия - процессы жизненного цикла систем".

ГОСТ 34: Комплекс стандартов на автоматизированные системы.

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

2.1. Стандарт ISO 15288 «Системная инженерия - процессы жизненного цикла систем".

2.2. Жизненный цикл системы.

2.3. Представления жизненного цикла системы.

2.4. Жизненный цикл информационной системы

2.5. Модели жизненного цикла

2.6. Выбор модели жизненного цикла

2.1. Стандарт iso 15288 «системная инженерия - процессы жизненного цикла систем".

Системная инженерия применяется для решения проблем, связанных с ростом сложности рукотворных систем. Стандарт ISO 15288, описывающий методы системной инженерии, предписывает иметь описание жизненного цикла системы и его практик. Такое описание требуется для успешного продвижения системы по жизненному циклу. Но стандарт не указывает на методы, с помощью которых требуется создавать подобное описание.

Задачи стандарта:

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

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

    • системного подхода

      жизненного цикла

      инжиниринга требований

      архитектурного дизайна

      процессного подхода

      проектного подхода

      культуры контрактации

Ис т ория создания

    Совместная разработка ISOиIEC, активное участиеINCOSE

    Начало работ в 1996, версии в 2002, 2005 (ГОСТ Р ИСО/МЭК 15288-2005), 2008

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

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

2.2. Жизненный цикл системы

Аббревиатура русск: ЖЦ

Аббревиатура англ: LC (Life Cycle )

Русский: «жизненный цикл» . Английское life cycle в технике ранее означало и переводилось как «срок службы», и иногда даже «срок службы до первого капитального ремонта». «Жизненный цикл» -- это относительно новый перевод. Иногда «цикл» переводят как «период», но такой перевод не устоялся (хотя он и точнее в данном случае: «период жизни» системы). Слово «цикл» не должно смущать – ничего циклического в жизненном цикле нет. Слово «цикл» имеет смысл «типичности», говоря о том, что то же самое происходит и с другими системами.

Формально: жизненный цикл – это смена состояний системы (эволюция системы) в период времени от замысла до прекращения её существования.

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

Определения.

    Определение стандарта ISO/IEC 15288:2008 (Определение: life cycle -- evolution of a system, product, service, project or other human-made entity from conception through retirement (ISO 15288, 4.11):

жизненный цикл (ЖЦ) – это эволюция системы, продукции, услуги, проекта или иного рукотворного объекта от замысла до прекращения использования.

    Определение стандарта ISO 15704 (Industrial automation systems - Requirements for enterprise-reference architectures and methodologies Системы промышленной автоматизации. Требования к архитектуре эталонных предприятий и методологии. Описывает эталонную архитектуру предприятия и средства реализации проектов в рамках полнрго жизненного цикла предприятия):

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

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

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

Таблица 2.1

Стадии создания систем (ISO/IEC 15288)

п./п

Стадия

Описание

Формирование концепции

Анализ потребностей, выбор концепции и проектных решений

Разработка

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

Реализация

Изготовление системы

Эксплуатация

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

Поддержка

Обеспечение функционирования системы

Снятие с эксплуатации

Прекращение использования, демонтаж, архивирование системы

1. Жизненный цикл ИС и его структура. 2

1.1 Стадии жизненного цикла ИС.. 3

1.2 Стандарты жизненного цикла ИС.. 4

2. Модели жизненного цикла. 6

2.1 Типы моделей жизненного цикла ИС.. 6

2.2 Достоинства и недостатки моделей жизненного цикла ИС.. 8

3. Процессы жизненного цикла ИС.............................................................. 11

3.1 Основные процессы жизненного цикла. 11

3.2 Вспомогательные процессы жизненного цикла. 13

3.3 Организационные процессы.. 14

Список использованной литературы.. 16


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

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

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

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


1.1 Стадии жизненного цикла ИС

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

Согласно методологии, предлагаемой Rational Software, жизненный цикл информационной системы подразделяется на четыре стадии.

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

1) Начальная стадия

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

2) Стадия уточнения

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

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

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

3) Стадия конструирования

На стадии конструирования разрабатывается законченное изделие, готовое к передаче пользователю.

По окончании этой стадии определяется работоспособность разработанного программного обеспечения.

4) Стадия передачи в эксплуатацию

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

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

1.2 Стандарты жизненного цикла ИС

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

Среди наиболее известных стандартов можно выделить следующие:

ГОСТ 34.601-90 - распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла.

ISO/IEC 12207(International Organization of Standardization /International Electrotechnical Commission)1995 - стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов.

Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML.

Microsoft Solution Framework (MSF) сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес-приложений.

Extreme Programming (XP). Экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последоват ельно дорабатываемых прототипов.


2. Модели жизненного цикла

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

Модель ЖЦ ИС включает в себя:

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

ключевые события - точки завершения работ и принятия решений.

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

2.1 Типы моделей жизненного цикла ИС

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

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

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

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

Рис. 2.1. Каскадная модель ЖЦ ИС

Рис. 2.2. Поэтапная модель с промежуточным контролем

Рис. 2.3. Спиральная модель ЖЦ ИС

На практике наибольшее распространение получили две основные модели жизненного цикла:

каскадная модель (характерна для периода 1970-1985 гг.);

спиральная модель (характерна для периода после 1986.г.).

2.2 Достоинства и недостатки моделей жизненного цикла ИС

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

Жизненный цикл системы является старейшим методом построения информа­ционных систем, в наши дни он используется при создании сложных проектов среднего и крупного масштабов. Данный процесс включает в себя шесть этапов: 1) подготовка проекта; 2) исследование системы; 3) проектирование; 4) програм­мирование; 5) инсталляция; 6) эксплуатация и освоение системы. Эти этапы изо­бражены на рис. 10.7. Каждый этап включает в себя несколько процессов.

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

Systems lifecycle (жизненный цикл системы)

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

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

Этапы жизненного цикла системы

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

На стадии проектирования разрабатываются спецификации для выбранного решения. Этап программирования заключается в трансляции проектных специ­фикаций (разработанных на предыдущем этапе) в программный код. Системные

аналитики совместно с программистами готовят спецификации для каждой про­граммы, входящей в систему.

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



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

Project definition (определение проекта)

Один из этапов системного жизненного цикла, позволяющий сформулиро­вать организационные проблемы, которые могут быть решены при помощи новой информационной системы. Systems study (исследование системы)

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

Design (проектирование)

Этап, на котором разрабатываются проектные спецификации для системного

Programming (программирование)

На данном этапе проектные спецификации транслируются в программный код.

Installation (установка)

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

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

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

Создание прототипа

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

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

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

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

Шаг 1. Определение основных пользовательских требований. Проектировщик системы (как правило, в его роли выступает специалист по информационным си­стемам) работает совместно с пользователем до тех пор, пока не уяснит потребно­сти последнего.

Шаг 2. Разработка начального прототипа. Проектировщик быстро создает ра­бочую модель, используя программное обеспечение нового поколения, мультиме­дийные программы или системы автоматизированного проектирования (см. гл. 14).

Шаг 3. Работа с прототипом. Пользователь оценивает работу системы и дает рекомендации по ее улучшению.

Prototyping (создание прототипа)

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

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

Процесс неоднократного повторения нескольких этапов в процессе создания системы.

Шаг 4. Исправление и совершенствование прототипа. Проектировщик реали­зует на практике все пожелания пользователей. После внесения изменений и ис­правления ошибок процесс возвращается к шагу 3. Шаги 3 и 4 повторяются до тех пор, пока пользователь не будет полностью удовлетворен.

Когда итерации прекращаются, модель становится «рабочим прототипом», на основе которого составляются окончательные спецификации системы. Иногда та­кой прототип просто используется как рабочая версия информационной системы.

Использование прототипа: достоинства и недостатки

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

End-user interface (пользовательский интерфейс)

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

Но быстрое создание прототипа может создать иллюзию ненужности некото­рых важных этапов разработки системы. Если завершенная модель работает нор­мально, руководство компании может решить, что такие процессы, как програм­мирование, реконструкция системы и подготовка исчерпывающей документации, не играют существенной роли в создании полностью работоспособной системы. Некоторые из систем, созданные в такие сжатые сроки, не могут оперировать большими объемами данных или же не в состоянии поддерживать много пользо­вателей одновременно. Процесс создания прототипа может также сильно замед­литься, если в нем участвуют слишком много пользователей (Hardgrove, Wilson, and Eastman, 1999).

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

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

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

Если потребности организации настолько оригинальны, что им не соответ­ствует ни один пакет программ, то можно использовать возможности кастомиза-ции (настройки), которые содержатся в большинстве современного программного обеспечения. Подобная настройка позволяет модифицировать пакет таким обра­зом, чтобы он соответствовал нуждам предприятия, не нарушая его целостности и функциональности. Если предполагаются слишком серьезные изменения, то дополнительные работы по перепрограммированию и настройке могут обойтись очень дорого и отнять много времени, к тому же они могут свести на «нет» многие преимущества данного пакета программ. На рис. 10.9 показано, как растет соот­ношение цены пакета и стоимости его внедрения с увеличением степени касто-мизации. Изначальная продажная цена пакета может на практике не соответство­вать действительности, поскольку в ней не учтены скрытые расходы на настройку и внедрение.

Application software package (пакет прикладных программ)

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

Customization (кастомизация)

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

Выбор программного пакета

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

Разработка конечными пользователями

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

Request for proposal (RFP) (запрос предложений)

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

End-user development (разработка конечными пользователями)

Разработка информационных систем конечными пользователями при незна­чительном участии технических специалистов.

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

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

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

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

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

Стадии жизненного цикла ИС

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

Согласно методологии, предлагаемой Rational Software, жизненный цикл информационной системы подразделяется на четыре стадии.

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

1) Начальная стадия

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

2) Стадия уточнения

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

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

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

3) Стадия конструирования

На стадии конструирования разрабатывается законченное изделие, готовое к передаче пользователю.

По окончании этой стадии определяется работоспособность разработанного программного обеспечения.

4) Стадия передачи в эксплуатацию

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

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

Стандарты жизненного цикла ИС

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

Среди наиболее известных стандартов можно выделить следующие:

ГОСТ 34.601-90 - распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла.

ISO/IEC 12207(International Organization of Standardization /International Electrotechnical Commission)1995 - стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов.

Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML.

Microsoft Solution Framework (MSF) сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес-приложений.

Extreme Programming (XP). Экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последовательно дорабатываемых прототипов.

спиральный жизненный цикл каскадный

Таблица 2.1

Определения.

1. Определение стандарта ISO/IEC 15288:2008 (Определение: life cycle -- evolution of a system, product, service, project or other human-made entity from conception through retirement (ISO 15288, 4.11):

жизненный цикл (ЖЦ) – это эволюция системы, продукции, услуги, проекта или иного рукотворного объекта от замысла до прекращения использования.

2. Определение стандарта ISO 15704 (Industrial automation systems - Requirements for enterprise-reference architectures and methodologies Системы промышленной автоматизации. Требования к архитектуре эталонных предприятий и методологии. Описывает эталонную архитектуру предприятия и средства реализации проектов в рамках полнрго жизненного цикла предприятия):

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

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

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

Комментарий: жизненный цикл – всегда жизненный цикл конкретной системы. Не бывает «жизненного цикла» кроме как в текстах стандартов, в жизни всегда «жизненный цикл X», где X – название целевой системы. Процессы жизненного цикла – это те процессы, которые акторы выполняют над/с системой, и которые меняют состояние системы, заставляя ее эволюционировать в ходе её жизненного цикла. «Управление жизненным циклом» -- общепринятое название подхода к описанию процессов жизненного цикла (а часто и название самой группы процессов жизненного цикла, описанных с использованием такого подхода).

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

Прежде всего, нужно различить жизненный цикл (иногда, ограничиваясь только инженерией, но не полным ЖЦ говорят также delivery process, изредка для софта -- software process) и другие "процессные представления" -- трансакции DEMO, логические "бизнес-процессы" (практики), workflows, проектные представления (подробнее -- http://ailev.livejournal.com/904643.html). Хотя есть множество подходов, при которых все эти разные аспекты описаний организации и методов ее работы смешиваются.

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

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

· «Нарезанная колбаска»

· V-диаграмма

Нарезанная колбаска".

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

Рисунок 2.1. Традиционное представление жизненного цикла

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

Рисунок 2.2. Пример представления жизненного цикла

Жизненные циклы наблюдаются в историях отдельных товаров и потребностей, торговых марок, предприятий, целых индустрий и рынков. Жизненный цикл неотделим от конкретной системы, поэтому особенности разных систем порождают большое разнообразие экземпляров «колбасок» жизненных циклов (рис.2.3) .


Рис.2.3. Разнообразие жизненных циклов