СТРАТЕГИИ КОНСТРУИРОВАНИЯ

advertisement
лекция №2
СТРАТЕГИИ КОНСТРУИРОВАНИЯ
ТКПО
Средства
Методы
Процедуры
жизненный
цикл
1. Системный анализ
1
2. Анализ требований
3. Проектирование
2
4. Кодирование
3
4
5. Тестирование
5
6
6. Сопровождение
автор Уинстон Рой, 1970 – Royce.
Managing the development of large
software systems: concepts and
techniques
макетирование
прототипирование
Ожидания
заказчика
Построение /
уточнение макета
Оценка макета
инкрементальная модель
1-й инкремент
1.Анализ
1
2. Проектирование
2
1.Анализ
1
3. Кодирование
2-й инкремент
3
4. Тестирование
2. Проектирование
4
2
1.Анализ
1
3. Кодирование
Поставка3-й
1-го инкремент
инкремента
3
2. Проектирование
4. Тестирование
4
2
3. Кодирование
Поставка 2-го инкремента
3
4. Тестирование
4
Поставка 3-го инкремента
RAD
RAPID APPLICATION DEVELOPMENT
1. Бизнес-моделирование
2. Моделирование данных
3. Моделирование обработки
4. Генерация приложения
5. Тестирование и объединение
спиральная модель
Барри Боэм, 1988
I
II
2
3
4
1
5
6
9
7
8
IV
III
компонентно-ориентированная
модель
USDP
Якобсон, Буч и Рамбо, 1999
UNIFIED SOFTWARE DEVELOPMENT PROCESS
USDP
Якобсон, Буч и Рамбо, 1999
UNIFIED SOFTWARE DEVELOPMENT PROCESS
USDP
USDP описывает шесть моделей:
● Модель вариантов использования
● Аналитическая модель
● Модель проектирования
● Модель развертывания
● Модель реализации
● Модель тестирования
XP
Кент Бек, 1999
eXtreme Programming
XP-экстремум
XP-реализация
Проверка кода
Код проверяется всё время Парное программирование
Тестирование
Тестирование выполняется Тестирование модуля,
всё время, даже с помощью ф ункциональное
заказчика
тестирование
XP
Проектирование
Проектирование – часть
ежедневной работы
разработчика
Реорганизация (refactoring)
Простота
Для системы вы бирается
простейшее проектное
решение, поддерживающее
ее текущую
ф ункциональность
Самая простая вещь,
которая могла бы
работать. Принцип KISS.
«Это вам не понадобится»
Архитектура
Каждый постоянно
работает над уточнением
архитектуры
Метаф ора
XP
Тестирование интеграции Интегрируется и
Непрерывная интеграция
тестируется несколько раз
в день
Короткие итерации
Итерации предельно
Игра планирования
коротки – секунды,
минуты, часы, а не неделя,
месяц, год
XP-реализация
Пользовательские
истории
Новая
история,
скорость
проекта
требования
Планирование
реализации План
Итерация
ошибки
Тесты
приемки
реализации
неопред.
оценки
оптим.
оценки
Архитектурный
выброс
сценарии
тестирования
Выброс
след. итерация
Малые
реализации
базис XP
1)Игра планирования (Planning game)
2)Частая смена версий (Small releases)
3)Метафора (Metaphor)
4)Простое проектирование
5)Тестирование (TDD - Test Driven Development)
6)Реорганизация (Refactoring)
7)Парное программирование
8)Коллективное владение кодом
9)Непрерывная интеграция.
10)40-часовая неделя.
11)Локальный заказчик.
12)Стандарты кодирования
Далее …
MSF, SCRUM, Agile, …
Download