• Механическая обработка и изготовление деталей из металла
  • Комплектация производства промышленным оборудованием
  • Комплексная поставка микроэлектронных компонентов
+7(342)203-78-58
Тех.отд: +7-922-308-78-81

Прототип это модель: SDLC — модель прототипа программного обеспечения

Опубликовано: 10.02.2023 в 09:28

Автор:

Категории: Станки по металлу

Содержание

SDLC — модель прототипа программного обеспечения

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

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

Что такое прототипирование программного обеспечения?

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

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

Ниже приведен пошаговый подход к разработке прототипа программного обеспечения.

Идентификация основного требования

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

Разработка первоначального прототипа

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

Обзор прототипа

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

Пересмотреть и улучшить прототип

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

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

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

Программное прототипирование – типы

В промышленности используются разные типы прототипов программного обеспечения. Ниже приведены основные типы прототипов программного обеспечения, широко используемые –

Throwaway / быстрое прототипирование

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

Эволюционное прототипирование

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

Инкрементальное прототипирование

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

Экстремальное прототипирование

Экстремальное прототипирование используется в области веб-разработки. Он состоит из трех последовательных фаз. Во-первых, базовый прототип со всеми существующими страницами представлен в формате HTML. Затем обработка данных моделируется с использованием уровня прототипов сервисов. Наконец, службы реализованы и интегрированы в окончательный прототип. Этот процесс называется Extreme Prototyping, используемым для привлечения внимания ко второй фазе процесса, когда полностью функциональный пользовательский интерфейс разрабатывается с очень небольшим учетом реальных служб.

Программное прототипирование – приложение

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

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

Программное прототипирование – плюсы и минусы

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

Преимущества модели прототипа заключаются в следующем –

  • Повышенная вовлеченность пользователей в продукт еще до его внедрения.

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

  • Сокращает время и затраты, поскольку дефекты могут быть обнаружены намного раньше.

  • Доступна более быстрая обратная связь с пользователем, что приводит к лучшим решениям.

  • Отсутствующие функциональные возможности могут быть легко идентифицированы.

  • Запутанные или сложные функции могут быть определены.

Повышенная вовлеченность пользователей в продукт еще до его внедрения.

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

Сокращает время и затраты, поскольку дефекты могут быть обнаружены намного раньше.

Доступна более быстрая обратная связь с пользователем, что приводит к лучшим решениям.

Отсутствующие функциональные возможности могут быть легко идентифицированы.

Запутанные или сложные функции могут быть определены.

Недостатки прототипа модели заключаются в следующем –

Риск недостаточного анализа требований из-за слишком большой зависимости от прототипа.

Пользователи могут запутаться в прототипах и реальных системах.

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

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

Усилия, вложенные в создание прототипов, могут быть слишком большими, если они не контролируются должным образом.

Прототипная модель данных / Хабр

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

Структура


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

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

Но одной иерархией не смоделировать объекты реального или воображаемого мира. Например, товар не поместить одновременно в несколько каталогов. Необходимо связывание объектов из разных ветвей иерархии.

Наследование


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

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

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

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

Логика


Недостаточно иметь только структуры данных. Их необходимо оживить, наделив объекты логикой. Логика реализуется методами (функциями) объекта. Могут быть методы проверки объекта перед сохранением, методы обработки запросов, формирования отображения и любые другие. Всё зависит от назначения объекта. При прототипировании новый объект вместе со свойствами прототипа наследует и его логику, естественно, с возможностью дополнять и переопределять её.

Идентификация


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

Существует два способа реализации прототипирования. В первом способе прототип полностью копируется, новый объект получает копии всех подчиненных прототипа. В случаи изменения прототипа, необходимо осуществлять обновление всех прототипированных объектов и их подчиненных, которые не были ещё переопределены. Минусом является сложность обновления и дублирование данных, зато можем идентифицировать любой объект.

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

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

P.S.


Прототипная модель данных отличается своей гибкостью и естественностью строения. Не нужно городить вспомогательных сущностей, например, для реализации связей «многие-ко-многим», проектировать структуры данных, пытаясь предусмотреть все варианты развития проекта, ведь в случаи чего нужно будет только перенести данные в другую ветку, всё равно, что сделать перестановку в комнате без переделывания её планировки. Но, ввиду отсутствия готовых решений, прототипную модель приходится моделировать на других моделях данных. Например, на реляционной, от чего проявляются различные проблемы и ограничения. Оставлю этот вопрос открытым для обсуждения. Если кто возьмется за создание СУБД с прототипной моделью, позовите меня в команду.

Дополнительная информация:

1. Применение модели в архитектуре CMS: boolive.ru/createcms/data-and-logic-model

2. Реализация на MySQL с учетом горизонтального масштабирования: boolive.ru/createcms/sectioning

404: Страница не найдена

ИТ-директор

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

Что я могу сделать сейчас?

Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:

Поиск

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

Просмотр по категории

Облачные вычисления


  • Взвесьте преимущества и недостатки гибридного хранилища данных

    Помимо других преимуществ, гибридное облачное хранилище данных может предложить повышенную гибкость и масштабируемость, а также доступ по требованию …


  • AWS запускает новые инстансы EC2 на выставке re:Invent 2022

    Неправильный тип экземпляра может повлиять на производительность рабочей нагрузки и даже увеличить затраты. В этом году на выставке re:Invent AWS выпустила новый EC2 …


  • Amazon, Google, Microsoft и Oracle выиграли контракт JWCC

    Контракт Министерства обороны США на совместные боевые действия в облаке позволяет отделам Министерства обороны приобретать облачные услуги и . ..

Мобильные вычисления


  • 5 функций и платформ MDM для малого бизнеса

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


  • Как малому бизнесу выбрать подходящие мобильные устройства

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


  • Вопросы и ответы Jamf: как упрощенная регистрация BYOD помогает ИТ-специалистам и пользователям

    Руководители Jamf на JNUC 2022 делятся своим видением будущего с упрощенной регистрацией BYOD и ролью iPhone в …

Дата-центр


  • Классические и квантовые вычисления: в чем разница?

    Классические и квантовые компьютеры имеют много различий в своих вычислительных возможностях и рабочих характеристиках. Знай их…


  • Топ-5 колокейшн провайдеров 2023 года

    Колокейшн-компании предлагают широкий спектр возможностей и услуг, которые могут помочь организациям сократить или исключить расходы …


  • Ключевые различия между стандартами BICSI и TIA/EIA
    Стандарты

    для центров обработки данных помогают организациям проектировать объекты с учетом эффективности и безопасности. Организации могут использовать BICSI и TIA …

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

Автор: Мэтью Мартин

Часы

Обновлено

Что такое модель прототипа?

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

 

Этапы модели прототипирования

Модель прототипирования имеет следующие шесть этапов SDLC:

Шаг 1: Сбор и анализ требований

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

Этап 2: Быстрый дизайн

Второй этап — предварительный или экспресс-проект. На этом этапе создается простой дизайн системы. Однако это не законченная конструкция. Он дает пользователю краткое представление о системе. Быстрый дизайн помогает в разработке прототипа.

Шаг 3: Создание прототипа

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

Шаг 4: Первоначальная оценка пользователем

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

Шаг 5: Доработка прототипа

Если пользователя не устраивает текущий прототип, вам необходимо доработать прототип в соответствии с отзывами и предложениями пользователя.

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

Шаг 6. Внедрение продукта и его техническое обслуживание

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

Типы моделей прототипов

Четыре типа моделей прототипов:

  1. Быстроразовые прототипы
  2. Эволюционный прототип
  3. Инкрементальный прототип
  4. Экстремальный прототип

Прототип Rapid Throwaway

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

В этом методе разработанный прототип будет отброшен и не будет частью окончательно принятого прототипа. Этот метод полезен для изучения идей и получения мгновенной обратной связи по требованиям клиентов.

Эволюционное прототипирование

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

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

Инкрементальное прототипирование

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

Экстремальное прототипирование:

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

  1. Базовый прототип со всеми существующими страницами присутствует в формате HTML.
  2. Вы можете смоделировать процесс обработки данных, используя уровень сервисов-прототипов.
  3. Сервисы реализованы и интегрированы в окончательный прототип.

Передовой опыт прототипирования

Вот несколько моментов, на которые следует обратить внимание в процессе прототипирования:

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

Преимущества модели прототипирования

Вот важные плюсы/выгоды использования моделей прототипирования:

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

Недостатки модели прототипирования

Вот важные минусы/недостатки модели прототипирования:

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

Резюме

  • В программной инженерии методология прототипа представляет собой модель разработки программного обеспечения, в которой прототип создается, тестируется и затем при необходимости перерабатывается до тех пор, пока не будет получен приемлемый прототип.
  • 1) Сбор и анализ требований, 2) Быстрое проектирование, 3) Создание прототипа, 4) Первоначальная оценка пользователями, 5) Уточнение прототипа, 6) Внедрение продукта и его обслуживание; 6 шагов процесса прототипирования
  • Типы моделей прототипов: 1) прототипы Rapid Throwaway 2) эволюционный прототип 3) инкрементный прототип 4) экстремальный прототип
  • Регулярные встречи необходимы для своевременного выполнения проекта и предотвращения дорогостоящих задержек в подходе к прототипированию.

Всего комментариев: 0

Оставить комментарий

Ваш email не будет опубликован.

Вы можете использовать следующие HTML тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>