ПОНЯТИЕ И СОДЕРЖАНИЕ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ

<

052214 1006 1 ПОНЯТИЕ И СОДЕРЖАНИЕ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМПонятие жизненного цикла программного обеспечения появилось, когда программистское сообщество осознало необходимость перехода от кустарных ремесленнических методов разработки программ к более технологичному мануфактурному, а в перспективе и к промышленному, их производству. Особенность программной индустрии заключается в том, что сотрудник, соответствующий в традиционной схеме мануфактурного производства неквалифицированному рабочему, должен иметь квалификацию и работать на уровне как минимум техника, а квалифицированный рабочий — уже на том уровне, который в технике соответствует инженеру. Как обычно происходит в подобных ситуациях, программисты прежде всего попытались перенести опыт других индустриальных производств в свою сферу. В частности, было заимствовано и модифицировано под реальный опыт программирования понятие жизненного цикла технической системы.

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

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

– приобретение, поставка, разработка, эксплуатация, сопровождение — это основные процессы;

– документирование, управление конфигурацией, обеспечение качества, аттестация, оценка, аудит — вспомогательные процессы;

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

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

– анализ системы;

– проектирование и программирование;

– оформление проектной и эксплуатационной документации;

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

– разработку документации по обучению персонала.

Эксплуатация программного обеспечения предполагает:

– внедрение компонентов программного обеспечения;

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

– обеспечение пользователей эксплуатационной документацией;

– обучение персонала;

– непосредственную эксплуатацию системы;

– развитие и модификацию системы.

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

Каждому процессу присущи определенные задачи и методы их решения, исходные данные и результаты обработки.

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

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

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

 

052214 1006 2 ПОНЯТИЕ И СОДЕРЖАНИЕ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ

 

Рис. 1– Разработка, использование и сопровождение программного обеспечения

 

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

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

<
  1. Алексеев А.П. Информатика 2001.–М.: СОЛОН-Р, 2001.
  2. Данилевский Ю.Г., Петухов И.А., Шибанов В.С. Информационная технология в промышленности. Л., 1988.
  3. Информатика / Под ред. Н.В. Макаровой.–М.: Финансы и статистика, 2004.
  4. Информатика: Учебник / Под ред. Н.В. Макаровой. М., 2002.
  5. Информатика. Базовый курс / Под ред. С.В. Симоновича.–СПб.: Питер, 2004.
  6. Патрущина С.М. Информационные системы в бухгалтерском учете. –М.: Издательский центр «МарТ», 2005.
  7. Попов В.В. Основы компьютерных технологий. –М.: Финансы и статистика, 2001.
  8. Хомоненко А.Д. Основы современных компьютерных технологий//Учебное пособие для вузов. – С-Пбт: Корона принт, 2001.
  9. Фигурнов В.Э.. IBM РС для пользователя. — М.:ИНФРА, 2003.
  10. Экономическая информатика / Под ред. В.П. Коросева и Л.В. Еремина. М.: Финансы и статистика, 2001.
<

Комментирование закрыто.

MAXCACHE: 0.94MB/0.00035 sec

WordPress: 23.41MB | MySQL:119 | 1,398sec