Модели жизненного цикла
Жизненным циклом программы (ЖЦП) называют отрезок времени от принятия решения о необходимости разработки программы до снятия программы с эксплуатации . Жизненным циклом программы, делится на фазы разработки и использования. Первой фазе соответствует разработка документации, а второй сопровождение. Под сопровождением понимают два вида работ : 1.модификация программы за счет изменения модели предметной области ; 2.нахождение и исправление ошибок, которые есть в программе.
В свою очередь фаза разработки делится на 4 под фазы:
1.Анализ требований;
2.Проектирование;
3.Кодирование;
4.Тестирование.
Анализ требований. При разработке программного обеспечения он исключительно важен. Ошибки, допущенные на этом этапе, даже при условии безупречного выполнения последующих этапов могут привести к тому, что разработанный программный продукт не будет соответствовать требованиям практики, сферы его применения. Для создания конкурентоспособных продуктов в ходе выполнения этого этапа должны быть получены четкие ответы на следующие вопросы:
– Что должна делать программа?
– В чем состоят реальные проблемы, разрешению которых она должна способствовать?
– Что представляют собой входные данные?
– Какими должны быть выходные данные?
– Какими ресурсами располагает проектировщик?
Проектирование. На этом этапе создается общая структура программы, которая должна удовлетворять спецификациям; определяются общие принципы управления и взаимодействия между различными компонентами программы.
Кодирование. Заключается в переводе на язык программирования конструкций, записанных на языке проектирования.
Тестирование. На этом этапе производится всесторонняя проверка программ.
Тестирование. Существуют три аспекта проверки программы на:
– правильность;
– эффективность реализации;
– вычислительную сложность.
Каким бы изощренным ни было тестирование программ, к сожалению, в больших программных комплексах чрезвычайно тяжело устранить абсолютно все ошибки. Устранение обнаруженных при эксплуатации ошибок – первейшая задача этого этапа. Однако это далеко не все, что выполняется при сопровождении. Выполняемый в ходе сопровождения анализ опыта эксплуатации программы позволяет обнаруживать «узкие места» или неудачные проектные решения в тех или иных частях программного комплекса. В результате такого анализа может быть принято решение о проведении работ по совершенствованию разработанной системы. Сопровождение может также включать в себя проведение консультаций, обучение пользователей системы, оперативное снабжение пользователей информацией о новых версиях системы. Качественное проведение этапа сопровождения в большой степени определяет коммерческий успех программного продукта.