Алоха! Сегодня продолжаем разбирать вопросы, которые любят задавать на собеседовании на роль BA/SA и затронем тему жизненного цикла разработки ПО:
#вопросыссобеседования
Часть 9:
📍
Вопрос 1: Что такое жизненный цикл разработки ПО?
✅
Краткий ответ:
Жизненный цикл программного обеспечения (ЖЦ ПО) описывает процесс разработки программного обемпечеия, включая все этапы от начала до конца.
Этапы разработки:
1. Определние потребностей заказчика (идея)
2. Сбор и анализ требований
3. Проектирование (документирование требований и дизайн)
4. Разработка ПО
5. Тестирование
6. Внедрение и поддержка продукта
Бизнес-аналитик участвует на каждом этапе ЖЦ ПО
📎
Материалы по теме:
-
Жизненный цикл программного обеспечения и какое место занимает Бизнес-аналитик в нем
-
Что такое ЖЦ Разработки ПО и какие проблемы возникают на каждом этапе SDLC?
-
Жизненный цикл проекта и его фазы от инициации до завершения
📍
Вопрос 2: Какие бывают модели/
методологии жизненного цикла разработки ПО?
✅
Краткий ответ:
1️⃣
Водопадная/Каскадная модель - модель, в которой процесс разработки выглядит как поток, переходящий от одной стадии к другой в строгом порядке, без возможности пропуска стадии или возврата назад.
➕
Преимущесвта:
- Хорошо подходит проектам, где требования жестко фиксированы и не меняются
- стабильность требований в течение всего жизненного цикла ПО
- прозрачные и прогнозируемые сроки прохождения каждой фазы
- простой алгоритм реализации модели
➖
Недостатки:
- невозможность изменять и дополнять список требований на последующих этапах жизненного цикла
- дополнительные затраты на корректировку уже завершенных этапов
- отсутствие промежуточных результатов – продукт можно объективно оценить лишь после официального запуска
2️⃣
Итеративная модель - осуществление разработки с использованием одного цикла разработки, который последовательно повторяется до полного завершения проекта.
➕
Преимущесвта:
- организация эффективной обратной связи проектной команды с заказчиком
- более быстрое решение возникших проблем и ошибок, что ведет к минимизации затрат на устранение рисков
- быстрый выпуск MVP
➖
Недостатки:
- нет фиксированного бюджета и сроков, а также нужна сильная вовлеченность Заказчика в процесс
- при итерациях приходится отбрасывать часть сделанной ранее работы
3️⃣
Спиральная модель - повторяющаяся последовательность циклов разработки с непрерывным контролем рисков
➕
Преимущесвта:
- реализация связи с пользователем с высокой частотой и на ранних этапах модели, что обеспечивает создание нужного продукта высокого качества
- хорошо подходит для проектов с высокой степенью риска
- минимизация рисков через многократные итерации
➖
Недостатки:
- высокая стоимость проектирования
- необходимость в высокопрофессиональных знаниях для оценки рисков
- необходимость в четком распределении работ между разработчиками
4️⃣
Гибкая модель
В данном подходе работа над проектом осуществляется через короткие итерации, называемые спринтами, в течение которых разработчики фокусируются на реализации наиболее значимых в данное время элементов проекта. На каждом этапе работы заказчик оценивает текущие результаты и может внести изменения в требования к продукту
➕
Преимущесвта:
- высокая скорость разработки продукта, что позволяет быстро адаптироваться к меняющимся условиям рынка;
- привлечение заказчика к разработке, что повышает прозрачность и контролируемость проекта;
- улучшение коммуникации в команде, что ускоряет процесс разработки и повышает качество продукта.
➖
Недостатки:
- не дает гарантий на долгосрочные планы
- нет жесткой структуры и даже методов для всех проектов
- отсутствие четкого плана, очень “поверхностное” описание требований к системе
- необходимо иметь большой уровень знаний и опыта команды
Есть и другие модели ЖЦ ПО
📎
Материалы по теме:
-
Модели жизненного цикла проекта
-
Agile, Waterfall. Модели и методологии разработки ПО
-
Самые распрастранненые модели разработки ПО
Источник:
@ba_and_sa
‼️Предыдущие части смотрите по #собеседование #вопросыссобеседования