Software development methodologies
содержание
Процесс разработки ПО
Составляющие процесса
Каскадная модель разработки
применение
Плюсы и минусы
Итеративная модель разработки
Гибкая методология разработки
scrum
применение
Плюсы и минусы
Kanban
kanban
применение
Плюсы и минусы
литература
вопросы
423.97K
Категория: ПрограммированиеПрограммирование

Software development methodologies

1. Software development methodologies

APRIL 5, 2017
SOFTWARE
DEVELOPMENT
METHODOLOGIES
Axana Skinder

2. содержание

СОДЕРЖАНИЕ
1. Процесс разработки программного обеспечения
2. Составляющие процесса
3. Каскадная модель разработки
Применение
Плюсы и минусы
4. Итеративная модель разработки
5. Гибкая методология разработки
6. Scrum
Применение
Плюсы и минусы
7. Kanban
Применение
Плюсы и минусы
8. Литература
SOFTWARE DEVELOPMENT METHODOLOGIES
2

3. Процесс разработки ПО

ПРОЦЕСС РАЗРАБОТКИ ПО
Это последовательность действий, выполняемых с момента принятия
решения о необходимости создания программного продукта до его выпуска
в свет.
SOFTWARE DEVELOPMENT METHODOLOGIES
3

4. Составляющие процесса

СОСТАВЛЯЮЩИЕ ПРОЦЕССА
требования
архитектура
дизайн
имплементация
тестирование
релиз
поддержка
SOFTWARE DEVELOPMENT METHODOLOGIES
4

5. Каскадная модель разработки

КАСКАДНАЯ МОДЕЛЬ РАЗРАБОТКИ
Waterfall
требования
архитектура
дизайн
имплементация
тестирование
релиз
SOFTWARE DEVELOPMENT METHODOLOGIES
5

6.

КАСКАДНАЯ МОДЕЛЬ РАЗРАБОТКИ
Waterfall
требования + тестирование
архитектура + тестирование
дизайн + тестирование
имплементация +
тестирование
отладка + тестирование
релиз + тестирование
SOFTWARE DEVELOPMENT METHODOLOGIES
6

7. применение

ПРИМЕНЕНИЕ
ПОДХОДИТ
Длительные проекты
Распределенная команда
Медицинское, военное ПО
SOFTWARE DEVELOPMENT METHODOLOGIES
78
НЕ ПОДХОДИТ
Небольшие проекты
Небольшие команды
Часто меняются требования

8. Плюсы и минусы

ПЛЮСЫ И МИНУСЫ
88
+
-
Подробная документация
Медленная реализация
Проект легко контролируется
«Жесткие» требования
Акцент на качество
Отсутствие промежуточных
версий
SOFTWARE DEVELOPMENT METHODOLOGIES

9. Итеративная модель разработки

ИТЕРАТИВНАЯ МОДЕЛЬ РАЗРАБОТКИ
требования
релиз
тестирование
SOFTWARE DEVELOPMENT METHODOLOGIES
дизайн
имплементация
9

10. Гибкая методология разработки

ГИБКАЯ МЕТОДОЛОГИЯ РАЗРАБОТКИ
Agile methodology
Серия подходов к разработке программного обеспечения,
использующих итеративную модель
Agile Manifesto:
Личности и их взаимодействия важнее, чем процессы и
инструменты
Работающее программное обеспечение важнее, чем
полная документация
Сотрудничество с заказчиком важнее, чем контрактные
обязательства
Реакция на изменения важнее, чем следование плану
SOFTWARE DEVELOPMENT METHODOLOGIES
10

11. scrum

SCRUM
Input from End-Users,
Customers, Team and
other Stakeholders
SOFTWARE DEVELOPMENT METHODOLOGIES
11

12. применение

ПРИМЕНЕНИЕ
ПОДХОДИТ
Небольшие проекты
Команда =< 7 человек
Медицинское, военное ПО
SOFTWARE DEVELOPMENT METHODOLOGIES
12
8
НЕ ПОДХОДИТ
Длительные проекты
Распределенные команды

13. Плюсы и минусы

ПЛЮСЫ И МИНУСЫ
+
постоянный контроль процесса
разработки
четко расписаны роли и
задачами
быстро идентифицируются
проблемы
быстрый запуск проекта
SOFTWARE DEVELOPMENT METHODOLOGIES
13
8
-
короткие скрипты
много митигов
часто меняются требования

14. Kanban

KANBAN
Методология разработки программного обеспечения,
использующая принцип «точно в срок»
Принципы:
• Использование канбан-доски
• Ограничение на количество рабочих задач
• Оценка трудозатрат опциональна или отсутствует
• Отсутствие совещаний по планированию
• Отсутствие фиксированных релизов
SOFTWARE DEVELOPMENT METHODOLOGIES
14

15. kanban

KANBAN
SOFTWARE DEVELOPMENT METHODOLOGIES
15

16. применение

ПРИМЕНЕНИЕ
ПОДХОДИТ
16
8
НЕ ПОДХОДИТ
Команда поддержки
Продукт, который не вышел в
релиз
Длительный проект
Медицинское ПО, военное ПО
SOFTWARE DEVELOPMENT METHODOLOGIES

17. Плюсы и минусы

ПЛЮСЫ И МИНУСЫ
+
17
8
-
непрерывная работа
отсутствие дэдлайнов
никто не перегружен
время на наладку процесса
процесс разработки виден всем
стабильный состав команды
минимум митинг
нет ограничений по размеру
команды
команда может быть
распределенной
SOFTWARE DEVELOPMENT METHODOLOGIES
отсутствие долгосрочного
планирования

18. литература

ЛИТЕРАТУРА
Scrum и XP: заметки с передовой – Хенрик Книберг
Agile Estimating and Planning (Mike Cohn)
Agile Software Development with Scrum ( Ken Schwaber,
Mike Beedle)
http://www.scrumhub.com/
SOFTWARE DEVELOPMENT METHODOLOGIES
18

19. вопросы

ВОПРОСЫ
SOFTWARE DEVELOPMENT METHODOLOGIES
19
English     Русский Правила