SDLC - программная модель прототипа
Прототипирование программного обеспечения относится к созданию прототипов программных приложений, которые отображают функциональные возможности разрабатываемого продукта, но могут не соответствовать точной логике исходного программного обеспечения.
Прототипирование программного обеспечения становится очень популярным как модель разработки программного обеспечения, поскольку позволяет понять требования клиентов на ранней стадии разработки. Это помогает получить ценную обратную связь от клиента и помогает дизайнерам и разработчикам программного обеспечения понять, что именно ожидается от разрабатываемого продукта.
Что такое прототипирование программного обеспечения?
Прототип - это рабочая модель программного обеспечения с ограниченным функционалом. Прототип не всегда соответствует точной логике, используемой в реальном программном приложении, и требует дополнительных усилий, которые следует учитывать при оценке усилий.
Прототипирование используется для того, чтобы пользователи могли оценить предложения разработчиков и опробовать их перед внедрением. Это также помогает понять требования, которые специфичны для пользователя и могут не учитываться разработчиком при проектировании продукта.
Ниже приведен пошаговый подход к разработке прототипа программного обеспечения.
Идентификация основных требований
Этот шаг включает понимание самых основных требований к продукту, особенно с точки зрения пользовательского интерфейса. На этом этапе можно игнорировать более сложные детали внутреннего дизайна и внешние аспекты, такие как производительность и безопасность.
Разработка первоначального прототипа
На этом этапе разрабатывается первоначальный прототип, где демонстрируются самые основные требования и предоставляются пользовательские интерфейсы. Эти функции могут не работать точно так же внутри самого разработанного программного обеспечения. Между тем, в разработанном прототипе используются обходные пути, чтобы дать покупателю тот же вид и ощущение.
Обзор прототипа
Разработанный прототип затем представляется заказчику и другим важным участникам проекта. Отзывы собираются организованным образом и используются для дальнейшего усовершенствования разрабатываемого продукта.
Пересмотреть и улучшить прототип
Отзывы и комментарии обзора обсуждаются на этом этапе, и с заказчиком проводятся некоторые переговоры, основанные на таких факторах, как временные и бюджетные ограничения, а также техническая осуществимость фактического внедрения. Принятые изменения снова включаются в новый разработанный прототип, и цикл повторяется до тех пор, пока ожидания клиента не оправдаются.
Прототипы могут иметь горизонтальные или вертикальные размеры. Горизонтальный прототип отображает пользовательский интерфейс продукта и дает более широкое представление о системе в целом, не концентрируясь на внутренних функциях. Вертикальный прототип с другой стороны - это детальная проработка конкретной функции или подсистемы продукта.
Назначение как горизонтального, так и вертикального прототипа различно. Горизонтальные прототипы используются для получения дополнительной информации об уровне пользовательского интерфейса и бизнес-требованиях. Его можно даже представить в торговых демонстрациях, чтобы вести бизнес на рынке. Вертикальные прототипы носят технический характер и используются для получения подробной информации о точном функционировании подсистем. Например, требования к базе данных, взаимодействия и нагрузки обработки данных в данной подсистеме.
Создание прототипов программного обеспечения - Типы
В отрасли используются разные типы прототипов программного обеспечения. Ниже приведены основные типы прототипов программного обеспечения, которые широко используются.
Выброс / быстрое прототипирование
Одноразовое прототипирование также называется быстрым или закрытым прототипом. Этот тип прототипирования требует очень мало усилий с минимальным анализом требований для создания прототипа. Как только фактические требования поняты, прототип отбрасывается, а реальная система разрабатывается с очень четким пониманием требований пользователя.
Эволюционное прототипирование
Эволюционное прототипирование, также называемое макетированием, основано на создании реальных функциональных прототипов с минимальной функциональностью вначале. Разработанный прототип является сердцем будущих прототипов, на которых построена вся система. При использовании эволюционного прототипирования хорошо понятные требования включаются в прототип, а требования добавляются по мере их понимания.
Инкрементальное прототипирование
Инкрементное прототипирование относится к созданию нескольких функциональных прототипов различных подсистем и последующей интеграции всех доступных прототипов в целостную систему.
Экстремальное прототипирование
Экстремальное прототипирование используется в области веб-разработки. Он состоит из трех последовательных фаз. Во-первых, в формате HTML представлен базовый прототип со всеми существующими страницами. Затем обработка данных моделируется с использованием уровня прототипов услуг. Наконец, сервисы реализованы и интегрированы в окончательный прототип. Этот процесс называется экстремальным прототипированием и используется для привлечения внимания ко второй фазе процесса, когда разрабатывается полностью функциональный пользовательский интерфейс без учета реальных услуг.
Создание прототипов программного обеспечения - Применение
Создание прототипов программного обеспечения наиболее полезно при разработке систем с высоким уровнем взаимодействия с пользователем, таких как онлайн-системы. Системы, которым требуется, чтобы пользователи заполняли формы или проходили через различные экраны перед обработкой данных, могут очень эффективно использовать прототипирование, чтобы обеспечить точный внешний вид еще до разработки реального программного обеспечения.
Программное обеспечение, которое требует слишком большой обработки данных, а большая часть функций является внутренней с очень небольшим пользовательским интерфейсом, обычно не выигрывает от прототипирования. В таких проектах разработка прототипа может быть дополнительными накладными расходами и потребовать дополнительных усилий.
Создание прототипов программного обеспечения - плюсы и минусы
В типичных случаях используется прототипирование программного обеспечения, и решение следует принимать очень осторожно, чтобы усилия, затраченные на создание прототипа, значительно повысили ценность разработанного окончательного программного обеспечения. У модели есть свои плюсы и минусы, о которых говорится ниже.
Преимущества модели прототипирования заключаются в следующем:
Повышение вовлеченности пользователей в продукт еще до его внедрения.
Поскольку отображается рабочая модель системы, пользователи получают лучшее представление о разрабатываемой системе.
Сокращает время и стоимость, так как дефекты можно обнаружить намного раньше.
Доступна более быстрая обратная связь с пользователями, ведущая к лучшим решениям.
Отсутствующие функции можно легко определить.
Могут быть идентифицированы сбивающие с толку или сложные функции.
Недостатки модели прототипирования следующие:
Риск недостаточного анализа требований из-за слишком большой зависимости от прототипа.
Пользователи могут запутаться в прототипах и реальных системах.
На практике эта методология может увеличить сложность системы, поскольку объем системы может выходить за пределы первоначальных планов.
Разработчики могут попытаться повторно использовать существующие прототипы для создания реальной системы, даже если это технически невозможно.
Усилия, вложенные в создание прототипов, могут быть слишком большими, если за ними не следить должным образом.