- •А. М. Минитаева разработка и стандартизация программных средств и информационных технологий
- •Isbn 978-5-8149-1063-9 введение
- •1.2. Какова структура нормативной базы предприятия и как ее выбрать?
- •1.3. Цели, задачи и состав нормативно-методического обеспечения
- •Все ли надо стандартизировать?
- •1.4. Нужно ли пользоваться международными стандартами или разрабатывать свои, российские?
- •Состав и статус дополнительных стандартов.
- •P.S. Кто должен разрабатывать стандарты?
- •1.5. Почему возрастает роль технологии при разработке программного обеспечения?
- •1.6. Стандартизация в области технологии разработки по
- •2. Общие положения о стандартах
- •2.1. Нормативные документы по стандартизации и виды стандартов
- •2.2. Стандарты в области программного обеспечения
- •2.3. Международные организации, разрабатывающие стандарты
- •2.4. Национальные организации, разрабатывающие стандарты
- •2.5. Внутрифирменные (внутрикорпоративные) стандарты
- •2.6. Организация разработки внутрифирменных стандартов
- •2.7. Хранение аналитической информации
- •3. Стандартизация разработки программных средств
- •3.1. Характеристики процессов жц пс согласно гост р исо/мэк 12207
- •3.2. Основные процессы жизненного цикла программного продукта
- •3.3. Вспомогательные (поддерживающие) процессы жизненного цикла программного продукта
- •3.4. Организационные процессы жизненного цикла программного продукта
- •3.5. Взаимосвязь между процессами жизненного цикла программного продукта
- •3.6. Технология разработки программного обеспечения
- •4. Жизненный цикл программного продукта
- •4.1. Общие принципы стандартизации жизненного цикла программных средств
- •4.2. Понятие жизненного цикла программного продукта
- •5. Модели жизненного цикла разработки программного продукта
- •5.1. Общие принципы моделирования жизненного цикла программных средств
- •5.2. Понятие модели жизненного цикла разработки программного продукта
- •5.3. Классическая каскадная, или «водопадная» модель
- •5.4. Модифицированная каскадная, или модель «водоворота»
- •5.5. Модель «сделал-исправил»
- •5.6. Прототипирование
- •5.7. Спиральная модель жц пс
- •5.8. Другие модели жц пс
- •5.9. Модель быстрой разработки приложений (rad-модель)
- •5.10. Многопроходная модель
- •6. Проектирование программного продукта
- •6.1. Общая характеристика и компоненты проектирования
- •6.2. Эволюция разработки программного продукта
- •6.3. Структурное программирование
- •6.4. Объектно-ориентированное проектирование
- •7. Основные этапы работы по созданию программного продукта
- •7.1. Длительность основных этапов
- •7.2. Характеристика основных этапов
- •Библиографический список
7. Основные этапы работы по созданию программного продукта
7.1. Длительность основных этапов
К существенному повышению эффективности работы и качества создаваемого ПП приводит использование единых правил и технологии. Единый процесс создания ПП должен включать в себя методологию, методы, стандарты и инструментальные средства, которые необходимо использовать при выполнении всех работ по созданию высококачественного ПП.
При создании ПП можно выделить шесть основных этапов работы:
планирование программного проекта;
составление требований заказчика;
проектирование ПП;
разработка ПП;
тестирование ПП;
сопровождение ПП.
Характерная длительность каждого из этапов жизненного цикла ПП показана на рисунке 7.1.
Рис. 7.1. Длительность этапов жизненного цикла программного продукта: 1–6 – номера этапов
Первые два этапа создания ПП начинаются практически одноременно, при этом этап планирования программного проекта (1) заканчивается всегда раньше, чем этап составления требований заказчика (2). На этих двух этапах определяют содержание и сроки работы по созданию будущего ПП. Большая длительность таких этапов объясняется тем, что в процессе работы над ПП приходится вносить коррективы в план работ, а также, возможно, и в требования к ПП.
Этап тестирования (5) начинается практически одновременно с этапами 1 и 2. Такое раннее начало тестирования позволяет выявить ошибки на первых стадиях, что в дальнейшем дает возможность сэкономить время и средства на устранение ошибок. На ранних стадиях тестируется не сам ПП, а разрабатываемая проектная документация.
7.2. Характеристика основных этапов
Планирование программного проекта. В течение этапа планирования определяются все основные задачи, которые должны быть выполнены в процессе разработки, производится оценка финансовых, людских, технических и нетехнических ресурсов, объемов и сложности разрабатываемого ПП, определяются методы тестирования и критерии приемки ПП, методы и технология выполнения работы, строятся временные графики выполнения работ.
Составление требований заказчика. В течение этого этапа разработчики анализируют требования к ПП (форма представления информации, необходимые функции, желательны интерфейсы, существующие ограничения и т.д.).
Данный этап служит для выработки взаимопонимания между разработчиками и заказчиком относительно требований к ПП, для устранения неопределенности требований, четкого, однозначного понимания и определения всех деталей, касающихся будущего ПП, и его тестируемости.
Требования тестируемы в такой степени, в какой разработчик тестов может построить ясный тест, дающий однозначный ответ «да» или «нет». И определяющий соответствие разрабатываемого ПП данной спецификации требований. Для тестируемости спецификация должна быть очень конкретной, недвусмысленной и обладать по возможности количественными характеристиками.
Проектирование программного продукта. Этап проектирования предназначен для выработки и детализации модели разрабатываемого ПП. Такая модель определяет структуру ПП, организацию модулей, интерфейсов и данных, описание которых необходимо для последующего этапа реализации. Этап проектирования может быть представлен совокупностью компонентов проектирования, для каждого из которых определены набор свойств и связи с другими компонентами. Процесс проектирования должен проводиться в соответствии с теми методами и технологией разработки, которые были определены в плане проекта. Проектирование может состоять из двух частей: высокоуронневого и низкоуровневого (детального) проектирования.
Разработка программного продукта. В процессе выполнения этого этапа разработчики преобразуют результаты этапа проектирования в коды программ на используемом языке программирования в соответствии со стандартами кодирования. Разработчики также взаимодействуют с инженером по тестированию ПП для создания надлежащих условий для тестирования. Кроме этого, разработчики ведут работу по созданию технической документации и начинают планировать и выполнять интеграцию ПП.
Тестирование программногo продукта. Этап тестирования не имеет четко определенного начала, но чем раньше он начинается, тем больше уверенности, что разрабатываемый ПП будет точно соответствовать требованиям заказчика. Все действия по тестированию должны выполняться специальным работником-тестировщиком. Он разрабатывает тесты, выполняет процедуру тестирования и составляет отчеты о результатах тестирования.
Общий набор тестов должен обеспечивать максимальный охват тестируемого ПП, т. е. тестированию должны быть подвергнуты как отдельные его модули, так и весь продукт в целом, включая его системные свойства в соответствии с зафиксированными в спецификации требованиями.
Сопровождение программного продукта. На этапе сопровождения основное внимание уделяется внесению изменений в ПП. Эти изменения могут быть связаны с устранением ошибок, дополнительными пожеланиями заказчика, появившимися в результате работы с ПП, изменением среды окружения и функционирования. Если изменение признается необходимым, то следует запланировать работу по внесению данного изменения, задокументировать ее, выполнить, после чего произвести обзор результатов работы по изменению ПП.