Как вы устраняете двусмысленности в спецификации?

StackOverflow https://stackoverflow.com/questions/626737

  •  06-07-2019
  •  | 
  •  

Вопрос

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

Если пользователю несколько раз не удается пройти аутентификацию, отправьте ЕМУ уведомление.

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

Как бы вы поступили, чтобы устранить неясные фрагменты в каких-либо спецификациях?(не только тот, о котором я упомянул)

А также, какого рода Темы должен ли я искать в Google или в книгах для подобных ситуаций?Разработка программного обеспечения?Гибкая разработка?Я не уверен, с чего начать.

Мы были бы очень признательны за любые полезные ноу-хау и советы.

Это было полезно?

Решение

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

Пример:

Требования пользователя:

Требование 1:Если пользователю несколько раз не удается пройти аутентификацию, отправьте ЕМУ уведомление.

Производные Требования:

Требование 1.1 Если пользователю не удается пройти аутентификацию после трех (3) попыток, система приостанавливает действие учетной записи и отправляет электронное письмо в службу ИТ-поддержки.

Требование 1.1.1 В электронном письме о приостановке действия учетной записи будет указано следующее:

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

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

Для получения дополнительной информации используйте Google "управление требованиями" или "разработка требований".Сектор оборонной промышленности - это загруженный с примерами и шаблонами, возможно, слишком много ;)

Некоторые я добавил в закладки:

Другие советы

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

Общаться с (желательно в таком порядке):

  • Бизнес-аналитики
  • Клиент (лицо(ы), оплачивающее конечный продукт)
  • Конечные пользователи

Постройте или создайте прототип, а затем покажите его людям, написавшим спецификацию.

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

Ты обдумываешь это.

<Ол>
  • Значение 'количество раз' может быть легко помещено в web.config
  • Установите для него предполагаемое подходящее значение. (не беспокойтесь о том, что ошибаетесь)
  • Отправьте электронное письмо своему менеджеру с вашим предположением, и как они могут изменить его, если ваше предположение неверно.
  • Часть уведомления в спецификации может быть принята, если любое другое уведомление приложения является электронной почтой (что нереально). В противном случае спросите, прежде чем что-то делать.

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

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

    Из этого примера я бы вернулся к клиенту и спросил, хотят ли они «количество раз»; быть настраиваемым. Это также может привести к таким вопросам, как:

    1) Кто будет поддерживать настроенное количество раз. 2) Понадобится ли им интерфейс для просмотра этих настроек и их изменения.

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

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

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

    1) Руководитель проекта / бизнес-аналитик - > Скорее всего, они ближе всего к проекту, которые могут помочь быстро решить проблемы со спецификациями. Это может быть связано с тем, чтобы спрашивать других и перезвонить вам позже, но это должно быть приемлемо.

    2) Специалист-аналитик / сотрудник - > Например, в случае, если вы упомянули, где существуют последствия для безопасности, если есть сотрудник службы безопасности, который может иметь политику для обеспечения соблюдения этого и должен быть в обсуждении. Другим примером может быть наличие сетевого аналитика, который рассматривает архитектуру с точки зрения аппаратного обеспечения, что может быть полезно в некоторых случаях.

    3) Владелец продукта - > Кто отвечает за определение заявки. Обратите внимание, что это не технический специалист, поэтому быть конкретным и иметь рекомендации может быть полезно, если вы столкнулись с " Вы знаете, я не думал об этом ... " Ответ.

    4) Руководитель группы / руководитель группы - > Если ничего не помогает, обратитесь к начальнику и попросите разъяснений.

    " Сбор требований " или " Анализ требований " являются общими терминами для этой части «жизненного цикла разработки программного обеспечения»; или «жизненный цикл разработки систем»; отбросить еще несколько терминов, которые можно найти, и найти много статей.

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

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

    Если спецификация не является точной, может быть, это просто не имеет значения? Не важно, чтобы что-то еще работало? Сделайте вызов, пусть it будет 1000. Убедитесь, что он не жестко запрограммирован. Хорошая идея - поместить его в какой-нибудь файл конфигурации (но не показывать интерфейсу конечного пользователя, потому что пользователь обычно имеет даже меньше идей, чем вы).

    Если это вопрос совместимости, то что делают другие парни? это 200 в Windows? Чем сделать это 200. Теперь вы подходите и Windows, и спецификация & nbsp; & nbsp; неплохо: -)

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

    Что касается корпоративного предпринимательства, это означает, что оно следует Общей корпоративной политике.

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

    Для этого вы можете создать фокус-группу или связаться с клиентом / соответствующим заинтересованным лицом.

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top