Добавил:
Рад, если кому-то помог Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции (1 курс, 2 семестр) УТкПО / Управление требованиями к программному обеспечению 1

.pdf
Скачиваний:
4
Добавлен:
01.11.2025
Размер:
1.18 Mб
Скачать

Участники

разработки

ПО

Заказчики – формируют требования к продукту, верхнеуровнево описывают задачу на языке бизнес целей и выгоды.

Архитекторы – разрабатывают архитектурное решение продукта, схему интеграций с другими системами.

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

Участники

разработки

ПО

Разработчики – разрабатывают и документируют код ПО, занимаются отладкой и исправлением ошибок, проверяют код при помощи Unit-тестирования, собирают билды и поставки, готовят инструкции по установке.

Тестировщики (QA специалисты) – отвечают за качество ПО, выполняя для этого анализ требований, разработку планов и сценариев тестирования, выполняя тестирование ПО и т.д.

Команда поддержки – занимаются выводом ПО в эксплуатацию, установками и настройкой среды для пользователей.

Пользователи – являются конечными потребителями ПО, в рамках процесса разработки могут привлекаться к приемочному тестированию.

Жизненный

цикл

разработки

программного

обеспечения

Жизненный цикл разработки

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

Анализ требований

Жизненный цикл разработки ПО начинается со стадии анализа, во время которого участники процесса обсуждают требования, предъявляемые к конечному продукту. Цель этой стадии – определение детальных требований к системе. Кроме этого, необходимо убедиться в том, что все участники правильно поняли поставленные задачи и то, как именно каждое требование будет реализовано на практике.

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

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

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

Анализ требований

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

Анализ требований

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

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

На стадии проектирования (называемой также стадией дизайна и архитектуры) программисты и системные архитекторы, руководствуясь требованиями, разрабатывают высокоуровневый дизайн системы.

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

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

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

программы, используемые базы данных и многое другое. Дизайн, как правило, закрепляется отдельным документом – дизайн-спецификацией (Design Specification Document, DSD).

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

Блок-схемы;

ER-диаграммы;

UML-диаграммы;

Макеты – например, нарисованный в фотошопе прототип сайта.

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

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

Разработка и программирование

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