Тема15(ИдентификацияЖЦ)-К
.pdfРазработка и стандартизация программных средств и информационных технологий
В.И.Кияев
Кафедра информатики
СПбГУЭФ
2011 г.
Идентификация целей, задач и действий
Тема занятия (тема 15):
Базовые элементы реализации качества программного обеспечения:
идентификация целей, задач, действий и выбор модели жизненного цикла
2 |
66 |
|
Идентификация целей, задач и действий |
Общий жизненный цикл ИС/ПС предприятия |
|
|
Информация |
Анализ |
Планирование ИС/ПС |
бизнес-процессов |
и организация |
предприятия |
службы ИТ |
|
Ресурсы |
Сопровождение и |
Проектирование и |
эксплуатация ИС/ПС |
разработка ИС |
|
|
|
Разработка |
|
прикладного ПО |
3 |
|
|
|
Идентификация целей, задач и действий |
|
Компьютерная |
Программный |
||
программа |
|
|
продукт |
Кто? |
|
Концептуальное проектирование программной системы |
|
|
|
Какие |
|
|
|
Установление требований и ограничений |
|
|
|
Спецификация системных и функциональных требований |
инструменты |
|
|
применять? |
|
Что и |
|
Архитектурное (логическое) проектирование системы |
|
|
|
||
как ? |
|
Построение базовых алгоритмов реализации |
|
|
|
Идентификация и документирование ключевых процедур |
|
Документы |
Разработка стандартов на программирование и тестирование |
Алгоритмы |
|
|
|
||
|
Кодирование программ |
Алгоритмы |
|
и шаблоны |
|
||
|
|
и стандарты |
|
|
|
Первичное тестирование кодов, сборка модулей |
и стандарты |
|
|
Поблочное и функциональное тестирование |
|
|
|
Системная интеграция программного обеспечения |
Документы |
Каким |
|
|
|
|
Интеграционные и эксплуатационные тесты, внедрение |
и шаблоны |
|
образом? |
|
Документирование программного продукта |
|
|
|
Сопровождение программного продукта |
|
4 |
|
|
7 в |
|
Идентификация целей, задач и действий |
Типичные проблемы процесса разработки ПП |
|
Причина |
Результат |
Неточное установление |
Недостаточное понимание |
требований и недостаточное |
потребностей конечного |
управление требованиями |
пользователя |
Типичные |
|
Неопределенные и неточные |
Неспособность иметь дело с |
|
|
методы отработки |
изменяющимися внешними |
|
|
спецификаций |
и внутренними условиями |
|
|
Чрезмерная усложненность |
Программный продукт с |
|
ограниченными |
проблемы |
|
программной системы и |
|
слабое документирование |
возможностями поддержки |
|
|
5 |
|
|
Идентификация целей, задач и действий |
|
Типичные проблемы процесса разработки ПП |
||
Причина |
Результат |
|
Субъективные моменты в |
Плохая |
|
определении ключевых |
производительность и |
|
факторов проекта |
неэффективность процедур |
|
Типичные |
||
Низкая культура |
Неудовлетворительное |
|
организации кодирования, |
качество программного |
|
тестирования и |
продукта |
|
верификации модулей |
||
|
||
Пропуск стадии |
Разработанный продукт не |
|
|
работает в программной |
|
проблемы |
||
эксплуатационного |
|
|
тестирования |
среде заказчика |
|
|
||
6 |
|
|
Идентификация целей, задач и действий |
Типичные проблемы процесса разработки ПП |
|
Причина |
Результат |
Неэффективное и |
Большая вероятность не |
неквалифицированное |
реализовать конечные цели |
управление рисками |
проекта |
Типичные |
|
Неконтролируемое |
Участники процесса теряют |
распространение изменений |
ориентировку и |
и внесение исправлений |
взаимодействие |
Недостаточная |
Ненадежные процессы |
|
проектирования, |
проблемы |
|
автоматизация и |
|
стандартизация процессов |
разработки и интеграции |
|
|
7 |
|
|
Идентификация целей, задач и действий |
Типичные проблемы процесса разработки ПП |
|
Причина |
Результат |
Неэффективное и |
Большая вероятность не |
неквалифицированное |
реализовать конечные цели |
управление рисками |
проекта |
Типичные |
|
Неконтролируемое |
Участники процесса теряют |
распространение изменений |
ориентировку и |
и внесение исправлений |
взаимодействие |
Недостаточная |
Ненадежные процессы |
|
проектирования, |
проблемы |
|
автоматизация и |
|
стандартизация процессов |
разработки и интеграции |
|
|
8 |
|
Идентификация целей, задач и действий
Зоны потери качества разработки ПП/ПС
9
Идентификация целей, задач и действий
С чего
начать?
10
Идентификация целей, задач и действий |
Установление процессно-проектной среды |
Формулирование потребностей |
Требования контракта |
Методологии |
Приобретаемое ПО |
Инструменты и технологии |
С |
Стандарты и документы |
Библиотеки |
Анализ рисков |
Выбор модели ЖЦ ПП |
анализа данных |
Методы сбораначатьи |
Системы метрических показателей |
Распределение ресурсов |
11 |
Идентификация целей, задач и действий
Применение интегрированного менеджмента
Цель IPM (3-й уровень СММ) – объединить программный инжиниринг и управленческую деятельность в логически определенный последовательный процесс разработки ПО .
Документально? установленная процедура определяет, что жизненный цикл разработки ПО выбирается в зависимости от целей проекта среди моделей ЖЦ, уже использовавшихся в организации и адаптированных к проектам.
12
Идентификация целей, задач и действий
Создание целевой структуры инжиниринга ПП
«С несовместимыми на первый взгляд потреб- ностями в адаптации оригинальных проектов и требованиями стандартизации можно справиться, построив структуру процесса, состоящую?из стандартных модулей и последователь- ных этапов, а также правил, используемых для описания и установления взаимоотношений между этими этапами»
Хэмфри Уоттс «Управление процессом разработки ПО»
13
Идентификация целей, задач и действий
Формирование внешнего интерфейса процесса
Охватывает методы, механизмы, информацию и данные, применяемые для определения и настройки основных и вспомогательных процессов.
При?его формировании используются накопленные знания, опыт, количественные и качественные показатели, методы измерений, корпоративные стандарты и т.д.
14
Идентификация целей, задач и действий
Построение общей структуры жизненного цикла ПП
Жизненный цикл –
необходимая «карта- путеводитель» для всех участников проекта.
«Если вы не знаете, куда идёте, то вы, по всей вероятности, достигнете финиша где-нибудь в другом месте».
(Лоуренс Дж. Питер)
«Вам следует быть очень осторожным, если вы не знаете, куда идёте – поскольку вы можете попасть не туда, куда требуется»
(Джого Берра)
15
Идентификация целей, задач и действий
Начальные стадии жизненного цикла ПП
Установление целей, исследование концепции, общее планирование
16
Идентификация целей, задач и действий
Установление целей и общих задач
17
Идентификация целей, задач и действий
Начальные стадии жизненного цикла ПП
Идентификация основных циклов ЖЦ программного продукта
18
Идентификация целей, задач и действий
Идентификация основных циклов ЖЦ ПП
|
|
|
|
|
|
|
|
|
|
Для чего? |
|
|
Ключевые идентификаторы |
|
|||||
|
|
|
|
и значимые метки WBS |
|
||||
Return on |
|
С |
|
чего |
|
|
|
||
Investment |
|
Что? |
|
(Work Breakdown Structure) |
|
||||
|
|
Statement |
|
Как? |
|
|
|
|
|
ROI |
|
of Works |
|
|
? |
|
|
||
начать |
|
|
|||||||
SPMP |
Post |
|
|||||||
SOF |
|
Software Project |
Каким |
|
Performance |
|
|||
|
|
Management Plan |
|
образом? |
|
Analysis |
|
||
|
|
|
|
|
|
|
|
|
|
SPLC |
|
|
|
|
|
|
|
|
|
|
|
|
Software Product |
Что потом? |
|
||||
PPA |
|
|
|
|
Life Cycle |
|
|
|
|
|
|
|
|
|
|
|
|
|
19
|
|
Идентификация целей, задач и действий |
||||
Пример идентификатора и меток |
||||||
Этап |
Разработка |
|
|
|
||
С-компилятора |
|
|
|
|||
Программирование |
Тестовое |
Написание |
Создание |
Управление |
||
С-компилятора |
покрытие |
документации |
инсталляции |
разработкой ПО |
||
|
|
|
Идентификаторы |
|||
|
|
|
|
|
Метки |
|
Пользовательский |
Файловая |
Синтаксический |
Генератор |
Система |
||
времени |
||||||
интерфейс |
система |
анализатор |
кода |
|||
выполнения |
||||||
|
|
|
|
|||
20 |
|
|
|
|
|
Идентификация целей, задач и действий
Выбор модели жизненного цикла ПП
Выбор модели жизненного цикла программного продукта
21
Идентификация целей, задач и действий
Обобщенная схема процесса для реализации ЖЦ ПП
Процесс
Фазы
Действия Поставляемый продукт
Фазы (стадии):
– планирование цикла– специфицирование
– разработка
– эксплуатация
Действия:
– проектирование
– кодирование
– модульное тестирование
– системное тестирование
Поставляемый продукт:
– показатели кода
– рабочие планы
– результаты действий
22
Идентификация целей, задач и действий
Обобщенная фаза процесса
|
Вход: |
|
– материалы |
|
– требования |
|
– оборудование |
|
– возможности |
|
– методики |
|
Управляющие механизмы |
Преобразующие |
циклаИсполнительные агенты |
действия |
Выход |
|
|
|
– программное обеспечение |
|
– услуги |
|
– данные и информация |
|
Все программные |
|
компоненты должны |
|
находиться под контролем |
|
управления конфигурацией |
23
Идентификация целей, задач и действий
Структуры CММ для реализации процесса
Зрелость процесса
24
Идентификация целей, задач и действий
Структурно-модульная модель жизненного цикла
25
Идентификация целей, задач и действий |
|
Каскадная и итерационная модели ЖЦ ПП |
|
Концептуальное |
Каскадная модель |
проектирование |
(водопад) |
|
Конференция НАТО |
Выбор модели |
|
Установление требований |
по вопросам науки |
Планирование |
и техники |
|
1968 г. |
Конструирование, кодирование |
|
жизненного цикла |
|
Тестирование, верификация |
|
|
Системное тестирование |
программного |
|
|
Интеграция, внедрение |
Последовательнаяитерационная продуктаЭксплуатация |
|
модель |
Сопровождение |
|
|
26 |
|
|
Идентификация целей, задач и действий |
|||
Многоуровневая итерационная модель ЖЦ ПП |
||||
Уинст |
Формирование |
|
|
|
требований |
Заказчик Аналитик Разработчик |
|||
РойсВыбор модели |
||||
90-е годы |
Управление |
|
|
|
изменениями |
Аналитик Разработчик |
|||
|
||||
жизненного цикла |
||||
|
Моделирование |
Аналитик |
АрхитекРазработчик |
|
|
Проектирование |
|||
|
|
тор |
||
программного |
||||
|
Кодирование |
|
|
|
|
Тестирование |
Тестер |
Разработчик |
|
|
продукта |
|
||
|
Верификация |
|
|
|
|
Внедрение |
Внедренец |
Разработчик Заказчик |
|
27 |
|
|
|
Идентификация целей, задач и действий
Каскадная и итерационная модели ЖЦ ПП
Каскадная модель хорошо функционирует при примененииВыборв циклах разработкимодели, в которых проектные требования четко определяются заранее и с большой
вероятностью не будут корректироваться потом.
Переносжизненногоуже существующего продуктациклана новую платформу может служить в качестве хорошего примера
использованияпрограммногокаскадной модели ЖЦ в проекте.
Модифицированная (итерационная) модель
включает итерации между фазами, параллельные фазы и управление изменениямипродуктамежду действиями в рамках
фаз.
28
Идентификация целей, задач и действий
V-образная модель ЖЦ разработки ПП
Планирование проекта требований
Анализ требований продукта и спецификаций
Разработка архитектуры циклавысшего уровня
Детальная проработка
Кодирование
Модульное тестирование
Интеграция и тестирование
Системное и приёмочное тестирование
Внедрение, эксплуатация и сопровождение
29
Идентификация целей, задач и действий
V-образная модель ЖЦ разработки ПП
V-образная модель является разновидностью каскаднойВыбор. Модель демонстрируетмоделикомплексный подход к определению этапов проекта и фаз процесса,
подчеркивает логические связи между аналитическими фазамижизненного, фазами планирования, проектированияциклаи тестирования.
При этом особое значение придаётся тестированию, верификациипрограммногои аттестации промежуточных продуктов
и версий на всех фазах создания ПО: план приёмки продукта, напримерпродукта, разрабатывается на этапе общего планирования, интеграционного тестирования – на фазах анализа, проектирования и т д.
30