Программная инженерия | Модель прототипирования

Опубликовано: 17 Февраля, 2022

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

Модель прототипирования - одна из наиболее часто используемых моделей жизненного цикла разработки программного обеспечения (модели SDLC). Эта модель используется, когда заказчики заранее не знают точные требования к проекту. В этой модели сначала разрабатывается, тестируется и уточняется прототип конечного продукта в соответствии с отзывами клиентов, пока не будет получен окончательный приемлемый прототип, который формирует основу для разработки конечного продукта.

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

Доступны четыре типа моделей:

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

Б) Эволюционное прототипирование -
В этом методе первоначально разработанный прототип постепенно дорабатывается на основе отзывов клиентов, пока он, наконец, не будет принят. По сравнению с Rapid Throwaway Prototyping, он предлагает лучший подход, который экономит время и усилия. Это связано с тем, что разработка прототипа с нуля для каждой итерации процесса иногда может быть очень неприятной для разработчиков.

C) Инкрементное прототипирование - в этом типе инкрементального прототипирования конечный ожидаемый продукт разбивается на различные небольшие части прототипов и разрабатывается индивидуально. В конце концов, когда все отдельные части разработаны должным образом, разные прототипы вместе объединяются в единый конечный продукт в их предопределенном порядке. Это очень эффективный подход, который снижает сложность процесса разработки, когда цель делится на части, и каждая часть разрабатывается индивидуально. Временной интервал между началом проекта и окончательной доставкой значительно сокращается, поскольку все части системы прототипируются и тестируются одновременно. Конечно, может существовать вероятность того, что части просто не будут соответствовать друг другу из-за некоторого недостатка на этапе разработки - это можно исправить только путем тщательного и полного построения всей системы до начала прототипирования.

D) Экстремальное прототипирование - этот метод в основном используется для веб-разработки. Он состоит из трех последовательных независимых фаз:

D.1) На этом этапе базовый прототип со всеми существующими статическими страницами представлен в формате HTML.

D.2) На 2-м этапе создаются функциональные экраны с имитацией процесса обработки данных с использованием уровня услуг прототипа.

D.3) Это последний шаг, на котором все услуги реализуются и связываются с окончательным прототипом.

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

Преимущества -

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

Недостатки -

  • Дорогой как по времени, так и по деньгам.
  • Каждый раз, когда заказчик оценивает прототип, требования могут сильно различаться.
  • Плохая документация из-за постоянно меняющихся требований клиентов.
  • Разработчикам очень сложно учесть все изменения, которые требует заказчик.
  • Существует неопределенность в определении количества итераций, которые потребуются, прежде чем прототип будет окончательно принят заказчиком.
  • Увидев ранний прототип, клиенты иногда требуют, чтобы реальный продукт был доставлен в ближайшее время.
  • Разработчики, спешащие создавать прототипы, могут прийти к неоптимальным решениям.
  • Заказчик может потерять интерес к продукту, если он / она не удовлетворен первоначальным прототипом.

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

Читать далее: Классическая модель водопада, спиральная модель, итеративная модель водопада

Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями теории CS для собеседований по SDE с помощью курса теории CS по доступной для студентов цене и будьте готовы к работе в отрасли.