Процесс производства ПО: методы, технология и инструментальные средства

Содержание

Слайд 2

Содержание: Понятие технологии разработки программного обеспечения Методы, средства и процедуры ТРПО

Содержание:

Понятие технологии разработки программного обеспечения
Методы, средства и процедуры ТРПО
Жизненный цикл

ПО
Парадигмы жизненного цикла ПО
Слайд 3

Проблематика аппаратная сложность опережает наше умение строить ПО, использующее потенциальные возможности

Проблематика

аппаратная сложность опережает наше умение строить ПО, использующее потенциальные возможности аппаратуры;
наше

умение строить новые программы отстает от требований к новым программам;
нашим возможностям эксплуатировать существующие программы угрожает низкое качество их разработки.
Решение – грамотная организация процесса создания ПО, реализация технологических принципов промышленного конструирования программных систем (ПС)
Слайд 4

Основные составляющие технологии конструирования ПО Технология конструирования программного обеспечения — система

Основные составляющие технологии конструирования ПО

Технология конструирования программного обеспечения — система инженерных

принципов для создания экономичного ПО, которое надежно и эффективно работает в реальных компьютерах
Программные продукты (программные системы)
Процессы, обеспечивающие создание продуктов.
Слайд 5

Методы, средства и процедуры ТРПО Методы обеспечивают решение следующих задач: планирование

Методы, средства и процедуры ТРПО

Методы обеспечивают решение следующих задач:
планирование и

оценка проекта;
анализ системных и программных требований;
проектирование алгоритмов, структур данных и программных структур;
кодирование;
тестирование;
сопровождение.
Слайд 6

Средства (утилиты) обеспечивают автоматизированную или автоматическую поддержку методов. Процедуры определяют: порядок

Средства (утилиты) обеспечивают автоматизированную или автоматическую поддержку методов.
Процедуры определяют:
порядок применения

методов и утилит;
формирование отчетов, форм по соответствующим требованиям;
контроль, который помогает обеспечивать качество и координировать изменения;
формирование этапов, по которым руководители оценивают прогресс.
Слайд 7

«Жизненный цикл проекта имеет определенные начальную и конечную точки, привязанные к

«Жизненный цикл проекта имеет определенные начальную и конечную точки, привязанные к

временной шкале. Проект в своем естественном развитии проходит ряд отдельных фаз...
…Существует общее соглашение о выделении четырех обобщенных фаз жизненного цикла: - концепция (инициация, идентификация, отбор); - определение (анализ); - выполнение (практическая реализация или внедрение, производство и развертывание, проектирование или конструирование, сдача в эксплуатацию, инсталляция, тестирование и т.п.); - закрытие (завершение, включая оценивание после завершения)...»
эксперт по управлению высокотехнологичными проектами Арчибальд Р.

Жизненный цикл ПО

Слайд 8

Парадигмы (модели) жизненного цикла ПО Модель или парадигма жизненного цикла определяет

Парадигмы (модели) жизненного цикла ПО

Модель или парадигма жизненного цикла определяет концептуальный

взгляд на организацию жизненного цикла и его основные фазы, принципы перехода между ними. Методология (метод) задает комплекс работ, их детальное содержание и ролевую ответственность специалистов на всех этапах выбранной модели жизненного цикла, а также рекомендует практики (best practices), позволяющие максимально эффективно воспользоваться соответствующей методологией и ее моделью.
Слайд 9

Водопадная модель Инкрементная модель Спиральная модель

Водопадная модель
Инкрементная модель
Спиральная модель

Слайд 10

Водопадная модель

Водопадная модель

Слайд 11

Макетирование

Макетирование

Слайд 12

Инкрементная (итеративная) модель

Инкрементная (итеративная) модель

Слайд 13

Слайд 14

Спиральная модель (автор – Б. Боэм) Наиболее распространенные риски: Дефицит специалистов.

Спиральная модель (автор – Б. Боэм)

Наиболее распространенные риски:
Дефицит специалистов. 
Нереалистичные сроки

и бюджет.
Реализация несоответствующей функциональности.
Разработка неправильного пользовательского интерфейса.
“Золотая сервировка”, перфекционизм, ненужная оптимизация и оттачивание деталей.
Непрекращающийся поток изменений.
Нехватка информации о внешних компонентах, определяющих окружение системы или вовлеченных в интеграцию.
Недостатки в работах, выполняемых внешними (по отношению к проекту) ресурсами.
Недостаточная производительность получаемой системы.
“Разрыв” в квалификации специалистов разных областей знаний.
Слайд 15

Слайд 16

Компонентно-ориентированная модель

Компонентно-ориентированная модель

Слайд 17

ХР-процесс Итерационный цикл разработки: кодирование, тестирование, выслушивание заказчика и проектирование. Базис

ХР-процесс

Итерационный цикл разработки: кодирование, тестирование, выслушивание заказчика и проектирование.
Базис ХР образуют

следующие двенадцать методов:
1. Игра планирования (Planning game)
2. Частая смена версий (Small releases)
3. Метафора (Metaphor)
4. Простое проектирование (Simple design)
5. Тестирование (Testing)
6. Реорганизация (Refactoring)
7. Парное программирование (Pair programming)
8. Коллективное владение кодом (Collective ownership)
9. Непрерывная интеграция (Continuous integration)
10. 40-часовая неделя (40-hour week)
11. Локальный заказчик (On-site customer)
12. Стандарты кодирования (Coding standards)
Слайд 18