Программная инженерия

Содержание

Слайд 2

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Software Development Life Cycle, SDLC Жизненный

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Software Development Life Cycle, SDLC
Жизненный

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

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ SDLC является общепризнанной аббревиатурой жизненного цикла

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

SDLC является общепризнанной аббревиатурой жизненного цикла

разработки программного обеспечения.
SDLC также называется процессом разработки программного обеспечения.
SDLC – это структура, определяющая задачи, которые выполняют на каждом этапе процесса разработки программного обеспечения.
ISO / IEC 12207 является международным стандартом для процессов жизненного цикла программного обеспечения. Он является стандартом, который определяет все задачи, необходимые для разработки и поддержки программного обеспечения.
Слайд 4

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Работа SDLC направлена на снижение стоимости

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Работа SDLC направлена на
снижение стоимости

разработки программного обеспечения,
одновременно улучшая качество и
сокращая время разработки.
Слайд 5

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Достижение этих явно расходящихся целей происходит

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Достижение этих явно расходящихся целей происходит

благодаря следованию плана, который устраняет типичные подводные камни для проектов по разработке программного обеспечения:
Оценку существующих аналогичных систем на предмет их недостатков.
Определение требования к новой системе.
Создание программного обеспечения на этапах проектирования, разработки, тестирования и развертывания.
Слайд 6

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Основные стадии жизненного цикла разработки программного обеспечения

ЖИЗНЕННЫЙ ЦИКЛ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Основные стадии жизненного цикла разработки программного

обеспечения
Слайд 7

ПЛАНИРОВАНИЕ И АНАЛИЗ ТРЕБОВАНИЙ Анализ требований – наиболее важный и фундаментальный

ПЛАНИРОВАНИЕ И АНАЛИЗ ТРЕБОВАНИЙ

Анализ требований – наиболее важный и фундаментальный этап

жизненного цикла.
Выполняется старшими членами команды с входными данными
от клиента,
отдела продаж,
исследований рынка и экспертов в целевой отрасли.
Эта информация затем используется для планирования базового проектного подхода и проведения технико-экономического обоснования продукта в экономической, эксплуатационной и технической областях.
Слайд 8

ПЛАНИРОВАНИЕ И АНАЛИЗ ТРЕБОВАНИЙ Планирование требований для обеспечения качества и выявление

ПЛАНИРОВАНИЕ И АНАЛИЗ ТРЕБОВАНИЙ

Планирование требований для обеспечения качества и выявление рисков,

связанных с проектом, также осуществляется на этом этапе.
Результатом технико-экономического обоснования является определение разных технических подходов, которые могут быть использованы для успешной реализации проекта с минимальными рисками.
Слайд 9

ОПРЕДЕЛЕННЫЕ ТРЕБОВАНИЯ Спецификация требований к программному продукту (Software Requirement Specification, SRS)

ОПРЕДЕЛЕННЫЕ ТРЕБОВАНИЯ

Спецификация требований к программному продукту (Software Requirement Specification, SRS)

состоит из всех требований к продукту, которые должны быть разработаны в течение жизненного цикла проекта.
Это следующий шаг после проведения анализа требований, который заключается в четком определении и документированиеи требований к продукту и их утверждение заказчиком или аналитиками рынка.
Слайд 10

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА Спецификация требований SRS – это справочная информация для

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА

Спецификация требований SRS – это справочная информация для архитекторов,

разрабатывающих архитектуру продукта.
На основе требований, указанных в Спецификации, архитекторами обычно предлагается и документируется более одного подхода к проектированию архитектуры продукта в спецификации разрабатываемого решения (Design Document Specification, DDS).
Слайд 11

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА Спецификация разрабатываемого решения рассматривается всеми важными заинтересованными сторонами:

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА

Спецификация разрабатываемого решения рассматривается всеми важными заинтересованными сторонами:
заказчики

проекта,
субподрядчики,
разработчики,
специалисты по качеству и внедрению будущего продукта.
На основе разных параметров, таких как оценка риска, надежность продукта, модульность проектирования, бюджетные и временные ограничения – для продукта выбирается наиболее оптимальный подход к проектированию.
Слайд 12

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА Подход к проектированию четко определяет все архитектурные модули

ПРОЕКТИРОВАНИЕ АРХИТЕКТУРЫ ПРОДУКТА

Подход к проектированию четко определяет все архитектурные модули продукта,

а также их связь и представление потоков данных с внешними и сторонними модулями (если таковые имеются).
Внутренний дизайн всех модулей предлагаемой архитектуры должен быть четко определен с мельчайшими деталями в DDS.
Слайд 13

СОЗДАНИЕ ИЛИ РАЗРАБОТКА ПРОДУКТА На этом этапе SDLC начинается фактическая разработка

СОЗДАНИЕ ИЛИ РАЗРАБОТКА ПРОДУКТА

На этом этапе SDLC начинается фактическая разработка

и создается продукт. Программный код создается в соответствии с DDS.
Если конструкция выполнена в детальном и организованном формате, то разработку кода можно выполнить без дополнительных затрат ресурсов и времени на разные согласования.
Слайд 14

СОЗДАНИЕ ИЛИ РАЗРАБОТКА ПРОДУКТА Разработчики должны следовать рекомендациям по кодированию, определенным

СОЗДАНИЕ ИЛИ РАЗРАБОТКА ПРОДУКТА

Разработчики должны следовать рекомендациям по кодированию, определенным

их организацией и инструментами программирования, такими как компиляторы, интерпретаторы, отладчики и т. д., используемым для написания кода.
Язык программирования выбирается в зависимости от типа разрабатываемого программного обеспечения и требований к нему.
Слайд 15

ТЕСТИРОВАНИЕ ПРОДУКТА Этот этап обычно является подмножеством всех этапов; как и

ТЕСТИРОВАНИЕ ПРОДУКТА

Этот этап обычно является подмножеством всех этапов; как и

в современных моделях SDLC, тестовые мероприятия в основном участвуют во всех этапах SDLC.
Этот этап относится только к этапу тестирования продукта, на котором дефекты продукта озвучиваются, отслеживаются, исправляются и повторно тестируются до тех пор, пока продукт не достигнет стандартов качества, определенных в спецификации требований.
Слайд 16

РАЗВЕРТЫВАНИЕ И ОБСЛУЖИВАНИЕ Как только продукт протестирован и готов к развертыванию,

РАЗВЕРТЫВАНИЕ И ОБСЛУЖИВАНИЕ

Как только продукт протестирован и готов к развертыванию,

он официально выпускается на соответствующем рынке.
Иногда развертывание продукта происходит поэтапно в соответствии с бизнес-стратегией организации.
Сначала продукт может быть выпущен в ограниченном сегменте и протестирован в реальной бизнес-среде (приемочное тестирование – User Acceptance Testing, UAT).
Слайд 17

РАЗВЕРТЫВАНИЕ И ОБСЛУЖИВАНИЕ Затем, основываясь на обратной связи, продукт может быть

РАЗВЕРТЫВАНИЕ И ОБСЛУЖИВАНИЕ

Затем, основываясь на обратной связи, продукт может быть

выпущен «как есть» или с предлагаемыми улучшениями на целевой сегмент рынка.
После того как продукт выпущен на рынок, его жизненный цикл переходит на стадию поддержки.
Поддержка программного продукта включает в себя
устранение дефектов, найденных пользователями, или добавление улучшений, предложенных ими,
добавление новой функциональности, обеспечивающей развитие продукта.
Слайд 18

МОДЕЛИ РЕАЛИЗАЦИИ ЖИЗНЕННОГО ЦИКЛА Существует ряд моделей, реализующих жизненный цикл разработки

МОДЕЛИ РЕАЛИЗАЦИИ ЖИЗНЕННОГО ЦИКЛА

Существует ряд моделей, реализующих жизненный цикл разработки

программного обеспечения и дающих конкретные рекомендации о том, как именно реализовывать тот или иной этап жизненного цикла.
Эти модели также называются моделями процессов разработки программного обеспечения.
Каждая модель процесса состоит из серии шагов, уникальных для своего типа, чтобы обеспечить успех в процессе разработки программного обеспечения.