Предыдущая серия была тут - http://18delphi.blogspot.com/2013/04/3-rumtmarc-ak.html
Итак. Интервью с заказчиком поведено.
Первичные требования - собраны:
Итак. Интервью с заказчиком поведено.
Первичные требования - собраны:
Итак, требования.
Нефункциональные.
Программа должна работать под Windows XP и
выше.
Интерфейс пользователя
Стандартное окно с возможностью закрытия размеров
таких-то
В верхней части должно быть окошко для ввода данных
с клавиатуры и отбражения результатов.
Под ним расположены кнопки для ввода цифр
0..9, разделитель дробной части ., кнопки для действий +, -, *, /, =,
стирание предыдущего символа, обнуление. Размеры кнопок и расположение -
такое-то
Программа должна позволять вводить информацию для
произведения действий с клавиатуры и через кнопки
интерфейса.
Требования
0. Начало
0.1. При открытии программа содержит 0 в качестве
текущего значения, отображаемого в окне ввода/отображения
информации.
0.2. При открытии текущее значение 0, значение
предыдущего операнда 0, тип производимого действия не определен.
0.3. Программа находится в режиме ввода
данных.
1. Выход
1.0. На выходе программа закрывает окно и
освобождает все занятые ресурсы.
2. Очистка текущего состояния
2.0. При нажатии на "обнуление" (или ESC
клавиатуры) текущее значение становится равным 0, значение предыдущего операнда
0, тип производимого действия не определен.
2.1. Программа переходит в режим ввода
данных.
3. Ввод данных
3.0. Ввод цифр
3.0.0. Если программа в режиме ввода данных, то к
введенной последовательности символов в окне текущего значения добавляется
введенный символ.
3.0.1. Если программа в режиме "после действия", то
в окне текущего значения устанавливается введенный символ, и программа переходит
в режим ввода данных.
3.1. Ввод точки-разделителя дробной
части
3.1.0. Если программа в режиме ввода
данных
3.1.0.0. если ранее точка-разделитель не была
введена, то к введенной последовательности символов в окне текущего значения
добавляется точка-разделитель.
3.1.0.1. если ранее точка-разделитель была введена,
то введенная последовательность символов в окне текущего значения не
изменяется.
3.1.1. Если программа в режиме "после действия", то в
окне текущего значения устанавливается значение "0.".
3.2. Ввод действий +, -,
/,*,=
3.2.0. Если запомненный тип производимого действия определен, то программа
выполняет соответствующую бинарную операцию между "значением предыдущего
операнда" и текущим значением (конвертированным до числа с плавающей точкой
64-битной точности). Вычисленное значение помещается в окно текущего
значения.
3.2.1. Тип производимого действия устанавливается в соответствии с
введенным действием (при действии "=" тип производимого действия не
определен)
3.2.2. Программа переходит в режим "после действия"
3.3. Cтирание
предыдущего неверно введенного символа
3.3.0. Если программа в режиме ввода данных, то от
введенной последовательности символов в окне текущего значения отрезается
последний введенный символ.
3.3.1. Если программа в режиме "после действия", то
в окне текущего значения устанавливается значение "0"
Следующая серия - http://18delphi.blogspot.com/2013/04/5-rumtmarc-al.html
Следующая серия - http://18delphi.blogspot.com/2013/04/5-rumtmarc-al.html
Комментариев нет:
Отправить комментарий