Основы методологии разработки информационных систем
Оглавление
Введение…………………………………………………………
Глава 1. Основные понятия 3
1.1 Информационные системы 3
1.2 Методологии разработки информационных систем 6
Глава 2. Технология разработки информационных систем 7
Глава 3. Государственные и международные стандарты в области разработки программного обеспечения 15
3.1 Международный стандарт ISO/IEC 12207: 1995-08-01 15
3.2 Стандарты комплекса ГОСТ 34 17
3.3 Стандарты комплекса ГОСТ 19 21
Заключение 23
Список используемых источников 24
Введение
Научно-техническая революция, широко развернувшаяся во второй половине XX века, породила надежды на то, что с помощью новых научных дисциплин и новой техники будут разрешены трудные проблемы и противоречия человеческой жизни. Автоматизация и создание информационных систем являются на данный момент одной из самых ресурсоемких областей деятельности техногенного общества. Одной из причин активного развития данной области является то, что автоматизация служит основой коренного изменения процессов, играющих важную роль в деятельности человека и общества. Существует много видов информационных систем: системы обработки данных, информационные системы управления, маркетинговые системы, системы бухгалтерского учета и другие, используемые в различных организациях.
Огромное количество видов информационных систем породило большое число методологий и технологий их создания. В данной курсовой работе мы попытаемся выделить и классифицировать основные методологии и технологии разработки информационных систем.
Глава 1. Основные понятия
1.1 Информационные системы
В
настоящее время нет единой трактовки
понятия "информационная система"
(ИС), устоявшейся классификации
информационных систем, общепринятого
представления о структуре ИС,
поскольку работы по созданию информационных
систем проводились параллельно
по нескольким направлениям - системы
обработки данных и базы данных;
автоматизированные системы управления
и в первую очередь - автоматизированные
информационные системы; автоматизированные
системы научно-технической
Сам термин "информационные системы" включает два важных понятия - "информация" и "система".
Информация (лат. information - сообщение, разъяснение; лат. informo - придаю вид, формирую, организую) - сведения о лицах, предметах, фактах, событиях, явлениях и процессах независимо от формы их представления.
Система (греч. system - целое, составленное из частей соединение) - это совокупность элементов, образующих определенную целостность, единство и взаимодействующих друг с другом для достижения определенной цели. [1, c.16]
С
точки зрения информатики информационные
системы обеспечивают сбор, хранение,
обработку, поиск, предоставление информации,
необходимой в процессе принятия решений
задач из любой области. Они помогают анализировать
проблемы и создавать новые продукты.
Информационная система включает в себя
ряд блоков, которые особым образом взаимодействуют
друг с другом и объединены в структуру.
В общем виде структуру ИС можно представить
следующим образом (рис.1):
Рис.1. Структура ИС
Информационная система - представляет собой совокупность организационных, технических, программных и информационных средств, объединенных в единую систему с целью сбора, хранения, обработки и выдачи необходимой информации для выполнения заданных функций.
Современное понимание информационной системы предполагает использование в качестве основного технического средства переработки информации персонального компьютера. Кроме того, техническое воплощение информационной системы само по себе ничего не будет значить, если не учтена роль человека, для которого предназначена производимая информация и без которого невозможно ее получение и представление.
В Федеральном законе "Об информации, информатизации и защите информации" дается следующее определение:
"Информационная
система - организационно упорядоченная
совокупность документов (массивов
документов) и информационных технологий,
в том числе и с
Информационная система в программировании - это прикладная программная подсистема, ориентированная на сбор, хранение, поиск и обработку текстовой и/или фактографической информации, работающая в режиме диалога с пользователем. [2, c.15]
В зависимости от предметной области информационные системы могут очень сильно различаться по своим функциям, архитектуре, реализации. Однако можно выделить ряд свойств, которые являются общими:
информационные
системы предназначены для
информационные
системы ориентируются на конечного
пользователя, не обладающего высокой
квалификацией и области
1.2 Методологии разработки информационных систем
Любая теоретическая или практическая сфера деятельности использует присущие только ей способы решения поставленных задач. Эти способы называются методами. Метод - это способ достижения какой-либо цели, решения конкретной задачи; совокупность приемов или операций практического или теоретического освоения действительности. [3, c.450]
Методология - совокупность методов, применяемых в какой-либо области человеческой деятельности. [4, c.217]
В
дальнейшем будем понимать методологию
как совокупность методов, применяемых
в жизненном цикле и
Методология
науки дает характеристику компонентов
научного исследования - его объекта,
предмета анализа, задачи исследования,
совокупности исследовательских средств,
необходимых для решения задачи
данного типа, а также формирует
представление о
Методология создания информационных систем заключается в организации процесса построения информационной системы и обеспечении управления этим процессом для того, чтобы гарантировать выполнение требований как к самой системе, так и к характеристикам процесса разработки.
Основными задачами, решение которых должна обеспечивать методология создания информационных систем, являются следующие:
обеспечение
создания информационных систем, отвечающих
целям и задачам предприятия
и соответствующих
гарантия
создания системы с заданными
параметрами в течение
простота сопровождения, модификации и расширения системы с целью обеспечения ее соответствия изменяющимся условиям работы предприятия;
обеспечение создания информационных систем, отвечающих требованиям открытости, переносимости и масштабируемости;
возможность использования в создаваемой системе разработанных ранее средств информационных технологий (программного обеспечения, баз данных, средств вычислительной техники, телекоммуникаций).
На сегодняшний день существует не так много методологий, особенно полных, т.е. учитывающих все стадии жизненного цикла программного обеспечения. Именно методология определяет, какие языки и системы будут применяться для разработки программного обеспечения и, во многом, рекомендует, какой технологический подход будет при этом использован.
Глава 2. Технология разработки информационных систем
Основное содержание технологии проектирования составляют технологические инструкции, состоящие из описания последовательности технологических операций, условий, в зависимости от которых выполняется та или иная операция, описаний самих операций.
Выделяют следующие общие требования, которым должны удовлетворять технологии проектирования, разработки и сопровождения информационных систем:
поддерживать полный жизненный цикл информационной системы;
обеспечивать гарантированное достижение целей разработки системы с заданным качеством и в установленное время;
обеспечивать возможность разделения крупных проектов на ряд подсистем - делить композицию проекта на составные части, разрабатываемые группами исполнителей ограниченной численности, с последующей интеграцией составных частей;
технология должна обеспечивать возможность ведения работ по проектированию отдельных подсистем небольшими группами (3-7 человек);
обеспечивать минимальное время получения работоспособной системы;
предусматривать
возможность управления конфигурацией
проекта, ведения версий проекта
и его составляющих, возможность
автоматического выпуска
обеспечивать
независимость выполняемых
Технологии характеризуются в двух измерениях: вертикальном (представляющем процессы) и горизонтальном (представляющем стадии).
Процесс
- совокупность взаимосвязанных действий,
преобразующих некоторые
Стадия - часть действий по созданию программного обеспечения, ограниченная некоторыми временными рамками и заканчивающаяся выпуском конкретного продукта, определяемого заданными для данной стадии требованиями. Стадии состоят из этапов, которые обычно имеют итерационный характер. Иногда стадии объединяют в более крупные временные рамки, называемые фазами. Горизонтальное измерение представляет собой время, отражает динамические аспекты процессов и оперирует такими понятиями, как фазы, стадии, этапы, итерации и контрольные точки.
Специфика комбинаций стадий и процессов, ориентированная на разные классы программного обеспечения и на особенности коллектива разработчиков, определяет технологический подход.
Существуют
несколько технологических
Подходы со слабой формализацией не используют явных технологий и их можно применять только для очень маленьких проектов, как правило, завершающихся созданием демонстрационного прототипа. К подходам со слабой формализацией относятся так называемые ранние технологические подходы, например подход "кодирование и исправление".
Строгие (классические, жесткие, предсказуемые) подходы применяют для средних, крупно-масштабных и гигантских проектов с относительно ясными требованиями к системе и более-менее фиксированным объемом работ. Одно из основных требований к таким проектам - как можно большая предсказуемость. В эту группу входят следующие подходы:
Каскадные технологические подходы.
Классический каскадный подход - переход к следующему процессу осуществляется только после того, как завершена работа с текущим процессом. Возвраты к уже пройденным процессам не предусмотрены;
Каскадно-возвратный
подход - разрешены возвраты к предыдущим
стадиям и пересмотр или
Каскадно-итерационный
подход - предусматривает
Каскадный
подход с перекрывающимися процессами
предполагает наличие специализированных
команд, позволяющих сократить
Каскадный подход с подпроцессами очень близок подходу с перекрывающимися процессами. Особенность в том, что проект может быть разделен на подпроекты, которые могут разрабатываться индивидуально;
Спиральная модель использует понятие прототипа, т.е. программы, реализующей частичную функциональность создаваемого программного продукта. Особенность модели - в разработке итерациями, причем каждый следующий итерационный прототип будет обладать большей функциональностью.
Каркасные подходы.
Рациональный унифицированный процесс вобрал в себя лучшее из технологических подходов каскадной группы. Включает в себя следующие фазы: начало (определение целей проекта), исследование (разработка плана и архитектуры проекта), построение (постепенное создание системы), внедрение (поставка системы конечным пользователям). Особенности - итеративность, контроль качества, возможность выявить ошибки на ранних стадиях, предпочтение отдается моделям, а не бумажным документам, конфигурирование, настройка, масштабирование.
Модель процессов Microsoft Solution Framework (MSF) представляет собой технологический подход, базирующийся на наборе моделей, правил и спецификаций, применяемых при создании и распространении программных продуктов, а также обеспечивающих более эффективное использование технологий для решений проблем бизнеса. Он позволяет количественно выражать степень завершенности работы над проектом и адаптировать методы управления им в соответствии с изменяющимися потребностями.
Формальные подходы предусматривают особые формальные требования к процессу создания программного обеспечения. Например, для генетических подходов требуются формальности, связанные с происхождением программы и дисциплиной ее создания. В данную труппу входят следующие подходы:
Генетические подходы.
Синтезирующее программирование предполагает синтез программы по ее спецификации. Документ на языке спецификаций является базисом для последующей реализации;
Сборочное (расширяемое) программирование предполагает, что программа собирается путем переиспользования уже известных фрагментов;
Конкретизирующее программирование предполагает, что частные специальные программы извлекаются из универсальной.
Подходы на основе формальных преобразований.
Технология стерильного цеха складывается из следующих частей:
разработка функциональных и пользовательских спецификаций;
планирование разработки;
формальная верификация;
статическое тестирование.
Формальные генетические подходы
Формальное синтезирующее программирование использует математическую спецификацию - совокупность логических формул;
Формальное сборочное программирование использует спецификацию как композицию уже известных фрагментов;
Формальное конкретизирующее программирование использует смешанные вычисления и конкретизацию по аннотациям.
Гибкие
(адаптивные, легкие) подходы применяют
для небольших или средних
проектов в случае неясных или
изменяющихся требований к системе.
Команда разработчиков должна быть
ответственной и
Ранние
технологические подходы
Эволюционное прототипирование - первый прототип включает создание развитого пользовательского интерфейса.
Итеративная разработка - первый прототип уже должен включать завершенное ядро системы.
Постадийная разработка - должна решить недостаток первых двух подходов - невозможность определения сроков завершения проектов.
Адаптивные подходы.
Экстремальное программирование (eXtreme Programming или XP). Тщательное предварительное проектирование ПО заменяется, с одной стороны, постоянным присутствием в команде заказчика, готового ответить на любой вопрос и оценить любой прототип, а с другой стороны, регулярными переработками кода. Основой проектной документации считается тщательно прокомментированный код. Очень большое внимание в методологии уделяется тестированию. Как правило, для каждого нового метода сначала пишется тест, а потом уже разрабатывается собственно код метода до тех пор, пока тест не начнет выполняться успешно. Эти тесты сохраняются в наборах, которые автоматически выполняются после любого изменения кода
Адаптивная
разработка. В основе лежат три
стадии - обдумывание, сотрудничество
и обучение. Результаты планирования
в данном подходе всегда не предсказуемы.
В отличие от обычного планирования,
отклонения в котором ведут к
ошибкам, здесь отклонения ведут
к правильным решениям. Обязательства
и планы программистов и
Семейство технологических подходов Crystal. Для каждого отдельного проекта существует свой технологический подход, в зависимости от его сложности, срочности, количества разработчиков и т.д.
Подходы исследовательского программирования.
Компьютерный дарвинизм основан на принципе восходящей разработки, когда система строится вокруг ключевых компонентов и программ, которые создаются на ранних стадиях разработки. Представляет собой метод проб и ошибок, основанный на интенсивном тестировании, причем на любом этапе система должна работать.
Фрагментарное
программирование состоит в том,
что сначала создается шаблон
программ с работающими кусочками
(фрагментами). Далее выполняется
постепенное приближение к
Глава 3. Государственные и международные стандарты в области разработки программного обеспечения
3.1 Международный стандарт ISO/IEC 12207: 1995-08-01
Первая редакция ISO 12207 была подготовлена в 1995 г. объединенным техническим комитетом ISO/IEC.
По определению, ISO 12207 - базовый стандарт процессов жизненного цикла ориентированный на различные виды ПО и типы проектов автоматизированных систем.
Целесообразность
совместного использования
Согласно ISO 12207, система - это объединение одного или нескольких процессов, аппаратных средств, программного обеспечения, оборудования и людей для обеспечения возможности удовлетворения определенных потребностей
Общая структура.
В стандарте ISO 12207 не предусмотрено каких-либо этапов (фаз или стадий) жизненного цикла информационной системы. Данный стандарт определяет лишь ряд процессов: приобретение, поставка, разработка и т.п.
Согласно ISO 12207, каждый процесс подразделяется на ряд действий, а каждое действие - на ряд задач. Очень важной особенностью ISO 12207 является то, что каждый процесс, действие или задача инициируются и выполняются другим процессом по мере необходимости, причем нет заранее определенных последовательностей (естественно, при сохранении логики связей по исходным сведениям задач и т.п.).
Особенности стандарта ISO 12207.
Стандарт ISO 12207 имеет динамический характер, обусловленный способом определения последовательности выполнения процессов и задач, при котором один процесс при необходимости вызывает другой или его часть.
Стандарт ISO 12207 обеспечивает максимальную степень адаптивности. Множество процессов и задач сконструировано так, что возможна их адаптация, в соответствии с конкретными проектами информационных систем. Эта адаптация сводится к исключению процессов, видов деятельности и задач, неприменимых в конкретном проекте.
Стандарт принципиально не содержит описания конкретных методов действий, а тем более - заготовок решений или документации. Данный стандарт не предписывает имена, форматы или точное содержание получаемой документации. Решения такого типа принимаются сторонами, использующими стандарт.
Обеспечение качества разными процессами выполняется с разной предусмотренной степенью организационной независимости контролирующей деятельности вплоть до обязательных требований к полной независимости проверяющего персонала от какой-либо прямой ответственности за проверяемые объекты. Контроль этого вида предусмотрен на самых ранних шагах разработки, начиная с анализа системных требований посредством их проверок на соответствие потребностям приобретения.
Степень обязательности рассматриваемого стандарта следующая: после решения организации о применении ISO 12207 в качестве условия торговых отношений является ее ответственность за указание минимального набора требуемых процессов и задач, которые обеспечивают согласованность с этим стандартом.
Стандарт содержит предельно мало описаний, направленных на проектирование базы данных. Это можно считать оправданным, так как разные системы и разные прикладные комплексы программного обеспечения могут не только использовать весьма специфические типы баз данных, но и вообще не использовать базу данных.
Ценность стандарта ISO 12207 в том, что он содержит наборы задач, характеристик качества, критериев оценки и т.п., дающие всесторонний охват проектных ситуаций.
4.2 Стандарты комплекса ГОСТ 34
ГОСТ 34 задумывался в конце 80-х годов как всеобъемлющий комплекс взаимоувязанных межотраслевых документов. Объектами стандартизации являются автоматизированные системы различных видов и все виды их компонентов, а не только программное обеспечение и базы данных.
Комплекс рассчитан на взаимодействие заказчика и разработчика. Аналогично ISO 12207, в нем предусмотрено, что заказчик может разрабатывать автоматизированную систему для себя сам (например, создав для этого специализированное подразделение). Однако формулировки ГОСТ 34 не ориентированы на столь явное и в известном смысле симметричное отражение действий обеих сторон, как это сделано в ISO 12207. Поскольку ГОСТ 34 в основном уделяет внимание содержанию проектных документов, распределение действий между сторонами обычно производится исходя из этого содержания.
Общая структура.
Из
всех существующих групп документов
будем основываться только на группе
0 "Общие положения" и группе
6 "Создание, функционирование и развитие
автоматизированной системы". Наиболее
популярными можно считать

- Основы метрологического обеспечения изготовления детали типа «Колесо спироидное»
- Основы механизма трудовой мотивации
- Основы микроэкономической теории
- Основы МКК
- Основы мотивации персонла
- Основы мотивации трудовой деятельности
- Основы муниципального образования
- Основы менеджмента, теория организации, организационное поведение
- Основы местного самоуправления
- Основы местного самоуправления
- Основы Местного Самоуправления
- Основы местного самоуправления в России
- Основы металла производства
- Основы методологии маркетинга в Интернет