Планирование программного проекта. В течение этапа планирования определяются все основные задачи, которые должны быть выполнены в процессе разработки, производится оценка финансовых, людских, технических и нетехнических ресурсов, объемов и сложности разрабатываемого ПП, определяются методы тестирования и критерии приемки ПП, методы и технология выполнения работы, строятся временные графики выполнения работ.
Составление требований заказчика. В течение этого этапа разработчики анализируют требования к ПП (форма представления информации, необходимые функции, желательные интерфейсы существующие ограничения и т.д.).
Данный этап служит для выработки взаимопонимания между разработчиками и заказчиком относительно требований к ПП, для устранения неопределенности требований, четкого, однозначного понимания и определения всех деталей, касающихся будущего ПП, и его тестируемости.
Требования тестируемы в такой степени, в какой разработчик тестов может построить ясный тест, дающий однозначный ответ «да» или «нет» и определяющий соответствие разрабатываемого ПП данной спецификации требований. Для тестируемости спецификация должна быть очень конкретной, недвусмысленной и обладать по возможности количественными характеристиками.
Проектирование программного продукта. Этап проектирования предназначен для выработки и детализации модели разрабатываемого ПП. Такая модель определяет структуру ПП, организацию модулей, интерфейсов и данных, описание которых нео6ходимо для последующего этапа реализации. Этап проектирования может быть представлен совокупностью компонентов проектирования, для каждого из которых определены набор свойств и связи с другими компонентами. Процесс проектирования должен проводиться в соответствии с теми методами и технологией разработки, которые были определены в плане проекта. Проектирование может состоять из двух частей: высокоуровневого и низкоуровневого (детального)
Разработка программного продукта. В процессе выполнения этого этапа разработчики преобразуют результаты этапа проектирования в коды программ на используемом языке программирования в соответствии со стандартами кодирования. Разработчики также взаимодействуют с инженером по тестированию ПП для создания надлежащих условий для тестирования. Кроме этого, разработчики ведут работу по созданию технической документации и начинают планировать и выполнять интеграцию ПП.
Тестирование программного продукта. Этап тестирования не имеет четко определенного начала, но чем раньше он начинается, тем больше уверенности, что разрабатываемый ПП будет точно соответствовать требованиям заказчика. Все действия по тестированию должны выполняться специальным работником – тестировщиком. Он разрабатывает тесты, выполняет процедуру тестирования и составляет отчеты о результатах тестирования. Общий набор тестов должен обеспечивать максимальный охват тестируемого ПП, Т. е. тестированию должны быть подвергнуты как отдельные его модули, таки весь продукт в целом, включая его системные свойства в соответствии с зафиксированными в спецификации требованиями.
Сопровождение программного продукта. На этапе сопровождения основное внимание уделяется внесению изменений в ПП. Эти изменения могут быть связаны с устранением ошибок, дополнительными пожеланиями заказчика, появившимися в результате работы с ПП, изменением среды окружения и функционирования.
Если изменение признается необходимым, то следует запланировать работу по внесению данного изменения, задокументировать ее, выполнить, после чего произвести обзор результатов работы по изменению ПП.