Процессы жизненного цикла
План:
ВВЕДЕНИЕ 2
1. ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 3
2. Процессы ЖЦ ПО 7
3. Вспомогательные процессы ЖЦ ПО 8
Заключение 14
Литература 15
ВВЕДЕНИЕ
ЖЦПО – это непрерывный процесс, который начинается с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации.
Существует несколько подходов при определении фаз и работ жизненного цикла программного обеспечения (ЖЦПО), шагов процесса программирования, каскадная и спиральная модели. Но все они содержат общие основополагающие компоненты: постановка задачи, проектирование решения, реализация, обслуживание.
Наиболее известной и полной, пожалуй, является структура ЖЦПО по Боэму, включающая восемь фаз. Она и будет представлена в дальнейшем наиболее подробно.
Кроме трех процессов
ЖЦ ПО мы еще просмотрели
- ЖИЗНЕННЫЙ ЦИКЛ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Значительное место среди информационных продуктов и услуг занимают компьютерные программные средства.
Жизненный цикл создания и использования компьютерных программ отражает различные их состояния, начиная с момента возникновения необходимости в данном программном изделии и заканчивая моментом его полного выхода из употребления у всех пользователей. Традиционно выделяют следующие основные этапы жизненного цикла программного обеспечения:
- анализ требований,
- проектирование,
- кодирование (программирование),
- тестирование и отладка,
- эксплуатация и сопровождение.
Особенностью разработки программного продукта является принятие решений на начальных этапах с их реализацией на последующих этапах. Ошибки в требованиях к программному продукту способны привести не только к потерям на этапах разработки и эксплуатации, но и к провалу проекта. Внесение изменений в спецификацию программного продукта чаще всего вызывает необходимость повторить все следующие этапы проектирования и создания программного продукта.
В коммерческом программном обеспечении жизненный цикл определяется моментом начала его продаж.
Разработчики стремятся сделать максимально возможным период жизненного цикла информационных продуктов и услуг. Для большинства современных компьютерных программ длительность жизненного цикла равна двум–трём годам, хотя встречаются программы, существующие десять и более лет.
Для увеличения этого периода необходимо постоянно осуществлять маркетинговые и иные мероприятия по их поддержке. Падение продаж и интереса к информационным продуктам и услугам является сигналом к:
а) изменению программного продукта и услуг,
б) изменению цены на них,
в) проведению модификации или снятию с продажи и предоставления.
Графическая модель жизненного цикла продукта или услуги, предложенная зарубежными специалистами в 1991 году, приведена на рис. 1.
Продажи |
| |||
Время | ||||
Фаза |
Разработка |
Рост |
Зрелость |
Упадок |
Рис. 1. Графическая модель жизненного цикла продуктов и услуг.
Обычно, под термином “программный продукт” для компьютерных информационных технологий принято понимать необходимое им программное обеспечение (ПО).
Основной нормативный документ, регламентирующий ЖЦ ПО – международный стандарт ISO/IEC 12207 (ISO, International Organization of Standardization – Международная организация по стандартизации, IEC, International Electrotechnical Commission – Международная комиссия по электротехнике). Он определяет структуру ЖЦ, содержащую процессы, действия и задачи, выполняемые во время создания ПО.
Согласно этому стандарту, структура ЖЦ ПО базируется на трёх группах процессов:
1) основные процессы ЖЦ ПО (приобретение, поставка, разработка, эксплуатация, сопровождение);
2) вспомогательные процессы (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, оценка, аудит, решение проблем);
3) организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого ЖЦ, обучение).
Разработка ПО – это, как правило, анализ, проектирование и реализация (программирование). Она включает все работы по созданию ПО и его компонент в соответствии с заданными требованиями, в том числе оформление проектной и эксплуатационной документации, подготовку материалов, необходимых для проверки работоспособности и соответствующего качества программных продуктов, материалов, для организации обучения персонала и т.д.
Эксплуатация включает работы по внедрению компонентов ПО в эксплуатацию, в том числе конфигурирование БД и рабочих мест пользователей, обеспечение эксплуатационной документацией, проведение обучения персонала и т.д., и непосредственно эксплуатацию, в том числе локализацию проблем и устранение причин их возникновения, модификацию ПО в рамках установленного регламента, подготовку предложений по совершенствованию, развитию и модернизации системы.
Управление проектом связано с вопросами планирования и организации работ, создания коллективов разработчиков; контроля за сроками и качеством выполняемых работ.
Техническое и
организационное обеспечение
Обеспечение качества проекта связано с проблемами верификации, проверки и тестирования ПО.
Верификация – это процесс определения насколько текущее состояние разработки, достигнутое на данном этапе, отвечает требованиям этого этапа.
Оценка качества (ГОСТ 28195-89) осуществляется на всех этапах жизненного цикла программных средств (ПС) при:
- планировании показателей качества ПС;
- контроле качества на отдельных этапах разработки (техническое задание, технический проект, рабочий проект);
- контроле качества в процессе производства ПС;
- проверке эффективности модификации ПС в процессе сопровождения.
Проверка позволяет оценить соответствие параметров разработки с исходными требованиями. Проверка частично совпадает с тестированием, связанным с выявлением различий между действительными и ожидаемыми результатами, а также оценкой соответствия характеристик ПО исходным требованиям.
Под тестированием понимается процесс исполнения программы с целью обнаружения ошибок.
В процессе реализации проекта важное место занимают вопросы идентификации, описания и контроля конфигурации отдельных компонентов и всей системы в целом.
Управление конфигурацией – один из вспомогательных процессов, поддерживающих основные процессы жизненного цикла ПО, прежде всего процессы разработки и сопровождения ПО ИС.
Управление конфигурацией позволяет организовать, систематически учитывать и контролировать внесение изменений в ПО на всех стадиях ЖЦ. Общие принципы и рекомендации конфигурационного учёта, планирования и управления конфигурациями ПО отражены в проекте стандарта ISO/IEC 12207.
Жизненный цикл информационных продуктов и услуг составляет основу жизненного цикла информационных технологий и, соответственно, информационных систем. Следовательно, всё сказанное выше относится и к информационным системам.
Одним из базовых понятий проектирования ИС является понятие жизненного цикла её программного обеспечения (ЖЦ ПО) – это непрерывный процесс, начинающийся с момента принятия решения о необходимости создания ПО и заканчивается в момент его полного изъятия из эксплуатации.
ИС входят в состав СУБД и являются специфическим инструментальным и прикладным (пользовательским) программным обеспечением.
Жизненный цикл ИС представляет собой модель её создания и использования. Модель отражает различные состояния ИС, начиная с момента возникновения необходимости в данной ИС и заканчивая моментом её полного выхода из употребления у всех пользователей.
- Процессы ЖЦ ПО
В соответствии со стандартом ГОСТ Р ИСО/МЭК 12207-99 все процессы ЖЦ ПО разделены на три группы:
- Основные процессы
- приобретение
- поставка
- разработка
- эксплуатация
- сопровождение (модификация и исправление системы в случае обнаружения неполадок или возникновении новых требований)
- Вспомогательные процессы
- документирование (формализован
ное описание информации, созданной в течение ЖЦ ПО) - управление конфигурацией (применение административных и технических процедур на всем протяжении ЖЦ ПО для определения состояния компонентов ПО в системе, управления модификациями ПО, описания и подготовки отчетов о состоянии компонентов ПО и запросов на модификацию, обеспечения полноты, совместимости и корректности компонентов ПО, управления хранением и поставкой ПО)
- обеспечение качества (обеспечение соответствующих гарантии того, что ПО и процессы его ЖЦ соответствуют заданным требованиям и утвержденным планам)
- верификация (определение того, что программные продукты, являющиеся результатами некоторого действия, полностью удовлетворяют требованиям или условиям, обусловленным предшествующими действиями)
- аттестация (подтверждение и оценка достоверности проведенного тестирования ПО)
- совместная оценка (оценка состояния работ по проекту и ПО, создаваемому при выполнении данных работ)
- аудит (определение соответствия требованиям, планам и условиям договора)
- разрешение проблем
- организационные процессы
- управление (управление выпуском продукта, управление проектом и задачами соответствующих процессов, таких, как приобретение, поставка, разработка, эксплуатация, сопровождение и др.)
- инфраструктура (выбор и поддержка (сопровождение) технологии, стандартов и инструментальных средств, выбор и установка аппаратных и программных средств, используемых для разработки, эксплуатация или сопровождение ПО)
- усовершенствование (оценка, измерение, контроль и усовершенствование процессов ЖЦ ПО)
- обучение (первоначальное обучение и последующее постоянное повышение квалификации персонала)
- Вспомогательные процессы ЖЦ ПО
Процесс документирования предусматрива
Процесс документирования включает действия:
- подготовительную работу;
- проектирование и разработку;
- выпуск документации;
- сопровождение.
Процесс управления конфигурацией предполагает применение административных и технических процедур на всем протяжении ЖЦ ПО для определения состояния компонентов ПО в системе, управления модификациями ПО, описания и подготовки отчетов о состоянии компонентов ПО и запросов на модификацию, обеспечения полноты, совместимости и корректности ПО, управления хранением и поставкой ПО. Согласно стандарте IEEE - 90 под конфигурацией ПО понимается совокупность ее функциональных и физических характеристик, установленных в технической документации и реализованных в ПО.
Управление конфигурацией позволяет организовать, систематически учитывать и контролировать внесение изменений в ПО на всех стадиях ЖЦ ПО. Общие принципы и рекомендации по управлению конфигурацией ПО отражены в проекте стандарта ISO/IEC 12207-2: 1995 “Information Technology - Software Life Cycle Processes. Part2. Configuration Management for Software”.
Процесс управления конфигурацией включает действия:
- подготовительную работу (планирование управления конфигурацией);
- идентификацию конфигурации (устанавливает правила, с помощью которых можно однозначно идентифицировать и различать компоненты ПО и их версии). Кроме того, каждому компоненту и его версиям соответствует однозначно обозначаемый комплект документации. В результате создается база для однозначного выбора и манипулирования версиями компонентов ПО, использующая ограниченную и упорядоченную систему символов, идентифицирующих различные версии ПО.
- контроль конфигурации (предназначен для систематической оценки предполагаемых модификаций ПО и координированной их реализации с учетом эффективности каждой модификации и затрат на ее выполнение). Он обеспечивает адекватность реально изменяющихся компонентов и их комплектной документации;
- учет состояния конфигурации (представляет собой регистрацию состояния компонентов ПО, подготовку отчетов обо всех реализованных и отвергнутых модификациях версий компонентов ПО). Совокупность отчетов обеспечивает однозначное отражение текущего состояния системы и ее компонентов, а также ведение истории модификаций;
- оценку конфигурации (заключается в оценке функциональной полноты компонентов ПО, а также соответствия их физического состояния текущему техническому описанию);
- управление выпуском и поставку (охватывают изготовление эталонных копий программ и документации, их хранение и поставку пользователям в соответствии с порядком, принятым в организации).
Процесс обеспечения качества обеспечивает соответствующие гарантии того, что ПО и процессы его ЖЦ соответствуют заданным требованиям и утвержденным планам. Под качеством ПО понимается совокупность свойств, которые характеризуют способность ПО удовлетворять заданным требованиям.
Для получения достоверных оценок создаваемого ПО процесс обеспечения его качества должен происходить независимо от субъектов, непосредственно связанных с разработкой ПО. При этом могут использоваться результаты других вспомогательных процессов, таких, как верификация, аттестация, совместная оценка, аудит и разрешение проблем.
Процесс обеспечения качества включает действия:
- подготовительная работу (заключается в координации с другими вспомогательными процессами и планировании самого процесса обеспечения качества с учетом используемых стандартов, методов, процедур и средств);
- обеспечение качества продукта подразумевает гарантирование полного соответствия программных продуктов и их документации требованиям заказчика, предусмотренным в договоре;
- обеспечение качества процесса предполагает гарантирование соответствия процессов ЖЦ ПО, методов разработки, среды разработки и квалификации персонала условиям договора, установленным стандартам и процедурам;
- обеспечение прочих показателей качества системы осуществляется в соответствии с условиями договора и стандартом ISO 9001.
Процесс верифиации состоит в определении того, что программные продукты, являющиеся результатами некоторого действия, полностью удовлетворяют требованиям или условиям, обусловленным предшествующими действиями (верификация в узком смысле означает формальное доказательство правильности ПО).
Верификация может проводится с различными степенями независимости. Степень независимости может варьироваться от выполнения верификации самим исполнителем или другим специалистом данной организации до ее выполнения специалистом другой организации с различными вариациями. Если процесс верификации осуществляется организацией, не зависящей от поставщика, разработчика, оператора или службы сопровождения, то он называется процессом независимой верификации.
Процесс верификации включает следующие действия:
- подготовительную работу;
- верификацию;
В процесс верификации проверяются следующие условия:
- непротиворечивость требований к системе и степень учета потребностей пользователей;
- возможности поставщика выполнять заданные требования;
- соответствие выбранных процессов ЖЦ ПО условиям договора;
- адекватность стандартов, процедур и среды разработки процесса ЖЦ ПО;
- соответствие проектных спецификаций ПО заданным требованиям;
- корректность описания в проектных спецификациях входных и выходных данных, последовательности событий, интерфейсов, логики;
- соответствие кода проектным спецификациям и требованиям;
- тестируемость и корректность кода, его соответствие принятым стандартам кодирования;
- корректность интеграции компонентов ПО в систему;
- адекватность, полнота и непротиворечивость документации.
Процесс аттестации предусматривает определение полноты соответствия заданных требований и созданной системы или программного продукта их конечному функциональному назначению. Под аттестацией обычно понимается подтверждение и оценка достоверности проеденного тестирования. Аттестация должно гарантировать полное соответствие ПО спецификациям, требованиям и документации, а также возможность его безопасного и надежного применения пользователем. Аттестацию рекомендуется выполнять путем тестирования во всех возможных ситуациях и использовать при этом независимых специалистов. Аттестация может проводиться на начальных стадиях ЖЦ ПО или как часть работы по приемке ПО.
Аттестация, так же как и верификация, может осуществляться с различными степенями независимости. Если процесс аттестации выполняется организацией, не зависящей от поставщика, разработчика, оператора или службы сопровождения, то он называется процессом независимой аттестации.
Процесс совместной оценки предназначен для оценки состояния работ по проекту и ПО. Он сосредоточен в основном на контроле планирования и управления ресурсами, персоналом, аппаратурой и инструментальными средствами проекта.
Оценка применяется как на уровне управления проектом, так и на уровне технической реализации проекта и проводится в течение всего срока договора. Данный процесс может выполняться двумя любыми сторонами, участвующими в договоре, при этом одна сторона проверяет другую.
Процесс совместной оценки включает действия:
- подготовительную работу;
- оценку управления проектом;
- техническую оценку.
Процесс аудита представляет собой определение соответствия требованиям, планам и условиям договора. Аудит может выполняться двумя любыми сторонами, участвующими в договоре, когда одна сторона проверяет другую.
Аудит – это ревизия (проверка), проводимая компетентным органом (лицом) в целях обеспечения независимой оценки степени соответствия ПО или процессов установленным требованиям. Аудит служит для установления соответствия реальных работ и отчетов требованиям, планам и контракту. Аудиторы не должны иметь прямой зависимости от разработчиков ПО. Они определяют состояние работ, использование ресурсов, соответствие документации требованиям и стандартам, корректность тестирования.
Процесс разрешения проблем предусматривает анализ и решение проблем (включая обнаруженные несоответствия) независимо от их происхождения или источника, которые обнаружены в ходе разработки, эксплуатации, сопровождения или других процессов. Каждая обнаруженная проблема должна быть идентифицирована, описана, проанализирована и разрешена.
Заключение
Итак, были рассмотрены три
подхода к определению
Исходя из данного отчета видно как важно и необходимо знать потребности современного мира при составлении программного продукта (изделия). Важно при составлении программы для автоматизации, какой либо системы, учитывать то, что современный мир постоянно меняется, а значит должна быть способной к изменению и программа.
Важно так же, при составлении программы, учитывать то, что программа должна быть точной; полной по своему содержанию и пригодной для работы как с маленькими, так и с большими проблемами в соответствии со своим предназначением; ясной - для того чтобы пользователь мог спокойно, без затруднений работать с ней. А так же чтобы программу в любой момент можно было бы легко исправить или дополнить в соответствии с изменившимися требованиями в современном мире.
Следует помнить, что хорошее программирование – это не кодирование быстро найденного решения с помощью любой подходящей методики, а тщательно инструментированная инженерная процедура, позволяющая создать полное, точное и легко понимаемое (ясное) программное обеспечение.
Литература
1. Б.У. Боэм «Инженерное
проектирование программного
2. Д.Райли. «Использование языка Модула-2». М.: Мир. 1993.
3. Ю.В. Иванов «Программы
и их жизненные циклы» (реферат
по дисциплине «Метрология ПО»)

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