Académique Documents
Professionnel Documents
Culture Documents
Contents
1
2
3
4
5
5.1
5.1.1
5.1.2
5.1.3
5.1.4
5.1.5
5.2
Introduction.....................................................................................................................2
Glossary of Terms...........................................................................................................3
User Classes and Characteristics....................................................................................5
Assumptions and Dependencies.....................................................................................5
Specific Requirements....................................................................................................6
Functional requirements.................................................................................................6
General Application requirements..................................................................................6
Basic Calculator Operations.........................................................................................17
Trigonometric Functions...............................................................................................29
Binary Functions...........................................................................................................44
Number Conversions....................................................................................................51
Non Functional.............................................................................................................59
1 Introduction
This document contains the requirements proposal for a Scientific Calculator for our
customer. The requirements listed are written for the perspective of potential users and
are based on the interview process and use-cases created. This is not a technical
document and should be accessible to all potential users of the system.
The requirements are spit into different sections for ease of use, and easy search. Lists
of the individual sections are given in the Overview section of this document.
The purpose of this user-requirements document is to give an outline of how the
proposed system will work as concerned specific processes that users would previously
have done manually.
Each individual requirements briefly describes how the system should operate (upon
completion) in performing certain tasks. Each individual requirement contains a unique
requirement number, and groups of numbers are used to clearly identify different
groups of activities. The title of each requirement clearly identifies the process.
The rationale describes the reason for including such a requirement if necessary. There
is also a dependency, which relates each requirement to another, or group of others, if
it is deemed they are related or dependent upon each other.
A glossary of terms is given to clearly describe the meaning of certain terms as
concerned this particular project. Although many of these descriptions may seem
obvious, the purpose is to clarify an agreed meaning for certain terms to avoid any
misunderstanding or potential confusion between the parties involved.
2 Glossary of Terms
Operator
Customer
Developer
Addition
Subtraction
Division
Multiplication
Evaluate equation
Sine
Cos
Tan
ASine
ACos
ATan
HSine
HCos
HTan
InvSine
InvCos
InvTan
InvHSine
InvHCos
InvHTan
Pi
represents Percentage
square root
Nth Root
Nth Root
represents power
Deg
represents degree
Rad
represents radians
Grad
Hex
Hexadecimal
Oct
Octal
Bin
Binary
Dec
Decimal
Log
Ln
Exp
AND
OR
Binary OR Operation
XAND
XOR
Exclusive OR operation
NAND
NOR
Number
N!
Factorial N
Equation
This is someone that uses the application. They have knowledge of the
calculations they need calculate. They understand the requirements of
the applications in relation to write the equations.
Developer
5 Specific Requirements
5.1 Functional requirements
5.1.1
Requirement No:
1000
Description:
The application has to run from the command line.
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
Requirement No:
Requirement No:
1004
Requirement No:
1005
Requirement No:
1006
Description:
Requirement No:
1007
Description:
Requirement No:
1008
Description:
Requirement No:
1009
Description:
If there is multiple () in the equation the inner most () will be completed first
Requirement No:
1010
Description:
Requirement No:
1202
Description:
Requirement No:
1203
Description:
Multiplication shall be performed on each number either side of the * symbol
Requirement No:
1204
Description:
Division shall be performed on each number either side of the / symbol
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1205
Description:
Percentage shall be performed on each number either side of the % symbol
Rationale:
Requirement No:
1206
Description:
Square root shall be performed on the number beside the sqrt sign
Rationale:
Requirement No:
1207
Description:
PI will be available for calculations.
Rationale:
Source:
Requirement No:
1208
Description:
Evaluation on the power of two numbers will be possible
Rationale:
Source:
Requirement No:
1209
Description:
Evaluation log to the base 10 will be possible
Rationale:
Source:
Customer
Requirement No:
1210
Description:
Evaluation log to the base n will be possible
Rationale:
Source:
Customer
Requirement No:
1211
Description:
Evaluation of factorial n will be possible
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1212
Description:
Evaluation of nth root
Rationale:
Source:
Customer
Dependencies:
Requirement No:
1301
Description:
Trigonometric Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1302
Description:
Trigonometric Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Requirement No:
1303
Description:
Trigonometric Arc Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Requirement No:
1304
Description:
Trigonometric Arc Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1305
Description:
Trigonometric Arc Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
Requirement No:
1306
Description:
Trigonometric Hyperbolic Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
Requirement No:
1307
Description:
Trigonometric Hyperbolic Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1308
Description:
Trigonometric Hyperbolic Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1309
Description:
Trigonometric Inverse Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1310
Description:
Trigonometric Inverse Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1311
Description:
Trigonometric Inverse Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1312
Description:
Trigonometric Inverse Hyperbolic Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1313
Description:
Trigonometric Inverse Hyperbolic Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1314
Description:
Trigonometric Inverse Hyperbolic Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1401
Description:
Binary AND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1402
Description:
Binary OR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1403
Description:
Binary NAND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1404
Description:
Binary NOR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1405
Description:
Binary XAND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1406
Description:
Binary XOR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1501
Description:
Conversion from number to Octal
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1502
Description:
Conversion from number to Binary
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1503
Description:
Conversion from number to decimal
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1504
Description:
Calculations can be done in degrees
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1505
Description:
Calculations can be done in radians
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1506
Description:
Calculations can be done in grad
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
1507
Description:
Exp equations can be evaluated
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
5001
Description:
The machine that runs the application will have the ability to run a java application.
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:
Requirement No:
5002
Description:
If the program cannot compute the equation then an error should be reported
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes: