Современные модели

· Объектно-ориентированная модель.

Данная методология предполагает конструирование программного решения из готовых объектов, для которых определяются правила их взаимодействия, переводящие объекты из одного состояния в другое. Такая модель, предусматривающая полное соответствие процесса разработки положениям объектно-ориентированной методологии (объектно-ориентированный анализ, проектирование, программирование), эффективна в крупных проектах, а также там, где применяются так называемые средства быстрой разработки (RAD, Rapid Application Development), основанные на этих технологиях и содержащие готовые библиотеки классов.

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

· Итеративная модель.

Впервые предложенная Филиппом Крачтеном в 1995г., данная модель объединяет главные преимущества спиральной, инкрементной, каскадной моделей, а также методов разработки на основе создания прототипов и объектно-ориентированного подхода. Она завоевала большую популярность и в том или ином виде используется во многих современных проектах.

Итеративная модель предлагает использование итераций на всех этапах жизненного цикла

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

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

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

· Модели быстрой разработки.

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

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

Быстрая разработка приложений - RAD (Rapid Application Development) - концепция создания средств разработки программных продуктов, уделяющая особое внимание быстроте и удобству программирования, созданию технологического процесса, позволяющего программисту максимально быстро создавать компьютерные программы

Фазы:

· этап планирования требований

· пользовательское описание

· фаза конструирования («до полного завершения»)

· перевод на новую систему эксплуатации

· Адаптированные и комбинированные модели.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: