Моделирование сценариев использования для калькулятора - PullRequest
5 голосов
/ 18 июня 2010

Мне нужна помощь в моделировании диаграммы вариантов использования из темы, она будет в java GUI

Создайте калькулятор, который

1. Разрешить пользователю вводить правильное арифметическое утверждение, которое включает число, оператор +, - и скобку '(' и ')';

2. Когда пользователь нажимает кнопку «Рассчитать», отображается результат;

3. Некоторые законные утверждения будут ((3 + 2) -4 + 2) (равно 3) и (-2 + 3) - (3-1) (равно -1);

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

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

Я разработал две диаграммы вариантов использования с использованием UML на NetBeans 6.5.1. Один из вариантов использования. Я не уверен, содержит ли он слишком много вариантов использования и т. Д., В то время как другой, я думаю, может быть слишком расплывчатым для topic.i надеюсь получить некоторую обратную связь о том, подходит ли диаграмма варианта использования, спасибо. я включил то, что было бы в GUI

use cast 1

alt text alt text

Ответы [ 2 ]

4 голосов
/ 18 июня 2010

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

Некоторые более конкретные комментарии:

  • Как я уже упоминал, варианты использования должны описывать функции высокого уровня. Press Calculate не является функцией, Calculate является. Press Last Calculation должно быть Store Last Calculation и т. Д.

  • Непонятно, что делает Press Backspace. Backspace - это просто ключ, а не сценарий использования.

  • Пакет ParserSys пытается описать внутренние компоненты системы. Это не относится к диаграмме вариантов использования. Для этого следует использовать другие диаграммы.

  • Вариант использования Store Result (первая картинка) не должен быть на этой диаграмме. Но если это то, что может сделать пользователь, это должно быть связано с пользователем.

Edit:

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

Хороший способ определения вариантов использования так же прост, как задать себе вопрос: «[Актер] должен уметь [что]» (или что-то подобное). [Что] тогда ваш вариант использования. Если он не вписывается в это предложение, то, вероятно, это не вариант использования.

3 голосов
/ 18 июня 2010

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

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

...