- •Введение
- •Практическая работа №1. Тема: технология программирования. Основные понятия и подходы.
- •1.1. Назначение технологии программирования
- •1.2. История развития технологии программирования
- •1.2.1. Дореволюционный период
- •1.2.2. «Революция в программировании»
- •1.2.3. Послереволюционный период
- •1.3. Типы программных проектов
- •1.4. Составные части технологии программирования
- •1.5. Проект, продукт, процесс и персонал
- •Вопросы для рассмотрения.
- •Рекомендуемая литература по теме.
- •Практическая работа №2. Тема: приемы обеспечения технологичности программных продуктов.
- •2.1. Циклический характер разработки
- •2.2. Основные понятия технологии программирования
- •2.2.1. Процессы и модели
- •2.2.2. Фазы и витки
- •2.2.3. Вехи и артефакты
- •2.2.4. Заинтересованные лица и работники
- •2.3. Выявление и анализ требований
- •2.3.1. Требования к программному обеспечению
- •2.3.2. Схема разработки требований
- •2.3.3. Управление требованиями
- •2.4. Архитектурное и детальное проектирование
- •2.4.1. Архитектурное проектирование
- •2.4.2. Детальное проектирование
- •2.5. Реализация и кодирование
- •2.6. Тестирование и верификация
- •2.6.1. Процесс контроля качества
- •2.6.2. Методы «белого ящика» и «черного ящика»
- •2.6.3. Инспектирование и обзоры
- •2.6.4. Цели тестирования
- •2.6.5. Верификация, валидация и системное тестирование
- •2.7. Сопровождение и продолжающаяся разработка
- •Вопросы для рассмотрения.
- •Рекомендуемая литература по теме.
- •Практическая работа №3. Тема: определение требований к программному обеспечению и исходных данных для его проектирования. Модели процесса разработки.
- •3.1. Водопадные и конвейерные модели
- •3.2. Спиральные и инкрементные модели
- •3.4. Конструирование модели процесса
- •3.4.1. Выявление требований к процессу
- •3.4.2. Используемые фазы, вехи и артефакты
- •3.4.2.1. Фаза «Анализ»
- •3.4.2.2. Фаза «Проектирование»
- •3.4.2.3. Фаза «Реализация»
- •3.4.2.4. Фаза «Стабилизация»
- •3.4.2.5. Фаза «Внедрение»
- •3.4.3. Выбор архитектуры процесса.
- •3.4.3.1. Типы проектов
- •3.4.3.2. Модель процесса сверх легкого проекта
- •3.4.3.3. Модель процесса легкого проекта
- •3.4.3.4. Модель процесса тяжелого проекта
- •3.4.3.5. Модель процесса сверх тяжелого проекта
- •3.4.3.6. Занятость исполнителей
- •3.4.4. Порядок проведения типового проекта
- •3.4.4.1. Этап 1. Подготовка к проекту
- •3.4.4.2. Сбор и анализ предварительной информации
- •3.4.4.3. Формирование бригады проекта
- •3.4.4.4. Подготовка исходных документов
- •3.4.4.5. Этап 2. Работа над проектом
- •3.4.4.6. Процедура выполнения фазы проекта
- •3.4.4.7. Подготовка результирующих материалов вех
- •3.4.4.8. Этап 3. Завершение проекта
- •3.4.4.9. Архивирование результатов работы
- •3.4.4.10. Подведение итогов проекта
- •3.4.5. Документированные процедуры
- •3.4.5.3. Проверка качества материалов
- •3.4.6. Выводы
- •Вопросы для рассмотрения.
- •Рекомендуемая литература по теме
- •Практическая работа №4. Тема: анализ требований и определение спецификаций программного обеспечения при структурном подходе.
- •4.1. Спецификации программного обеспечения при структурном подходе
- •4.2. Определение понятий и видов требований
- •Виды требований
- •4.1.2. Анализ и сбор требований
- •4.1.3. Инженерия требований по
- •4.2. Трассирование требований
- •Вопросы для рассмотрения.
- •Рекомендуемая литература по теме
3.4.5.3. Проверка качества материалов
Для обеспечения повышения качества процесса проведения проектов определенные виды отчуждаемых материалов (документов) проверяются и визируются Комитетом Качества. Порядок проверки и визирования определяется Комитетом Качества. Например, Комитет Качества может назначить своего представителя для проверки конкретного документа или всех документов определенного типа. Проверке и визированию подлежат все внешние (т. е. предоставляемые заказчику) материалы и планы фаз. По усмотрению Комитета Качества для некоторых или всех проектов могут проверяться все или некоторые внутренние материалы. Проверка имеет целью установить степень соответствия материала принятым стандартам.
Проверяющий не должен вмешиваться в структуру и содержание ревизуемого материала, вносить исправления или добавления в материал. В обязанности проверяющего входит следующее.
Проверка соответствия материала требованиям и рекомендациям и указание на несоответствие.
Указание на очевидные (например, орфографические) ошибки.
Указание на несоответствие хорошему тону, здравому смыслу и деловому стилю.
Если проверяющий не завизировал материал, то руководитель проекта обязан обеспечить доработку материала в соответствии с полученными указаниями и представить материал на повторное визирование.
Замечание по конструированию. По мере накопления опыта использования процедур данное положение может быть изменено или отменено.
3.4.6. Выводы
Несмотря на гибкость модели процесса, в ней имеется неизменяемое жесткое ядро Далее следует список основных положений, которые являются характеристическими для модели и которые должны неукоснительно выполняться при проведении любого проекта.
Общая процедура проведения проекта состоит из трех этапов: подготовка к проекту, работа над проектом, завершение проекта. Этапы не могут быть опущены.
Работа над проектом организована как процесс, состоящий из фаз, заканчивающихся вехами, причем каждая веха имеет видимые результаты, отчуждаемые от разработчика.
Схема проекта имеет нелинейный (итеративный и параллельный) характер и не противоречит модели процесса. Отклонения схемы проведения проекта от типовых схем документированы и обоснованы.
Процесс работы над проектом ориентирован на заказчика: результаты вех согласуются с заказчиком, заказчик вовлекается в практическое использование результатов проекта на ранней фазе опытной эксплуатации.
Назначенный Руководитель проекта участвует в проекте от начала до конца, несет ответственность за все результаты проекта и имеет все ресурсы и полномочия, необходимые для выполнения проекта.
Назначение сотрудников на выполнение роли происходит динамически на каждой фазе проекта.
Руководитель проекта осуществляет и документирует статическое планирование всего проекта в целом и динамическое планирование каждой фазы в отдельности.
Измеряются и учитываются значения количественных показателей индивидуальной производительности при выполнении каждой функции и определяются интегральные и средние значения показателей для проекта в целом.
Результаты проектов архивируются и подготавливаются для анализа и повторного использования.
24
В дисциплине программирования
проектирование подразделяется на
концептуальное, логическое и детальное.
Логическое проектирование выполняется
на фазе проектирования, концептуальное
- на фазе анализа, а детальное - на фазе
реализации (см. раздел Проектирование).