Разработка программного обеспечения – это процесс, направленный на создание и поддержание работоспособности качества и надежности программного обеспечения, используя технологии, методологию и практики из информатики, управления проектами, математики, инженерии и других областей знания.
На сегодняшний день существует большое количество подходов к разработке программного обеспечения, описанных различными методологиями. Задача этих методологий заключается в улучшении производительности, качества и надёжности разработки программного обеспечения. Не существует единого стандарта, которого стоит придерживаться при разработке, так как в зависимости от требований, которые предъявляются к продукту, а также условий, в рамках которых будет вестись работа, выгодно выбрать тот или иной метод, который лучшим образом отвечает поставленной задаче.
На сегодняшний день существует множество типов методологий разработки программного обеспечения со своими преимуществами и недостатками. Но при решении поставленной задачи выбор лучшей методологии стоит производить из группы гибких методик разработки. Гибкая методология, обычно, предполагает наличие небольшой команды разработчиков, а также очень проста для реализации и легко адаптируется к изменениям требований к продукту на любом этапе жизненного цикла.
Гибкая методология разработки – серия подходов к разработке программного обеспечения, ориентированных на использование итеративной разработки и динамическое формирование требований, и обеспечение их реализации в результате постоянного взаимодействия внутри самоорганизующихся рабочих групп, состоящих из специалистов различного профиля.
Основные идеи гибких методик разработки:
Личности и их взаимодействия важнее, чем процессы и инструменты;
Работающее программное обеспечение важнее, чем полная документация;
Сотрудничество с заказчиком важнее, чем контрактные обязательства;
Реакция на изменения важнее, чем следование плану.
Гибкая методология разработки придерживается следующих принципов:
удовлетворение клиента за счёт ранней и бесперебойной поставки ценного программного обеспечения;
приветствие изменений требований даже в конце разработки (это может повысить конкурентоспособность полученного продукта);
частая поставка рабочего программного обеспечения (каждый месяц или неделю или ещё чаще);
тесное, ежедневное общение заказчика с разработчиками на протяжении всего проекта;
проектом занимаются мотивированные личности, которые обеспечены нужными условиями работы, поддержкой и доверием;
рекомендуемый метод передачи информации – личный разговор (лицом к лицу);
работающее программное обеспечение – лучший измеритель прогресса;
спонсоры, разработчики и пользователи должны иметь возможность поддерживать постоянный темп на неопределённый срок;
постоянное внимание улучшению технического мастерства и удобному дизайну;
простота – искусство не делать лишней работы;
лучшие технические требования, дизайн и архитектура получаются у самоорганизованной команды;
постоянная адаптация к изменяющимся обстоятельствам.
Рассмотрим несколько методов более конкретно.
Do'stlaringiz bilan baham: |