Перейти к содержанию

Ограничение (Constraint)

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

Attn

Ограничение — это предполагаемое решение, а дополнительные вопросы «почему?» позволяют добраться до сути — до требования, для удовлетворения которого предназначено это решение.

Примеры

  • CON-1. Пользователь щелчком в верхней части списка проектов изменяет порядок сортировки. [конкретный элемент управления на пользовательском интерфейсе, примененный как ограничение дизайна на функциональное требование]

  • CON-2. Для реализации продукта может использоваться ПО с открытым кодом, доступное в рамках лцензии GNU. [ограничение реализации]

  • CON-3. Приложение должно использовать Microsoft .NET Framework 4.5. [архитектурное ограничение]

  • CON-4. Банкомат содержит только 20-долларовые банкроты. [физическое ограничение]

  • CON-5. Интернет-платежи могут выполняться только через PayPal. [ограничение дизайна]
  • CON-6. Все используемые в приложении текстовые данные должны храниться в виде XML-файлов. [ограничение данных]

Источники ограничения

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

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

  • ограничения или требования, налагаемые нормативными документами и другими бизнес-правилами;

  • ограничения, связанные с оборудованием, например требования к срокам, ограничения памяти или процессора, размер, вес, материалы или затраты;

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

  • соглашения, связанные с пользовательским интерфейсом существующего продукта, которые необходимо соблюдать при улучшении существующего продукта;
  • интерфейсы с другими существующими системами, такие как форматы данных и протоколы связи;