Vous êtes sur la page 1sur 60

Scientific Calculator Requirements Specification

Requirements on Scientific Calculator

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

Scientific Calculator Requirements Specification

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.

Scientific Calculator Requirements Specification

2 Glossary of Terms
Operator

The person that uses the application

Customer

The person that requested the application

Developer

Some one from the development team

Addition

Subtraction

Division

Multiplication

Evaluate equation

Sine

Returns the trigonometric sine of an angle

Cos

Returns the trigonometric cosine of an angle

Tan

Returns the trigonometric tangent of an angle

ASine

Returns the trigonometric arc sine of an angle

ACos

Returns the trigonometric arc cosine of an angle

ATan

Returns the trigonometric arc tangent of an angle

HSine

Returns the trigonometric hyperbolic sine of an angle

HCos

Returns the trigonometric hyperbolic cosine of an angle

HTan

Returns the trigonometric hyperbolic tangent of an angle

InvSine

Returns the inverse sine of an angle

InvCos

Returns the inverse cosine of an angle

InvTan

Returns the inverse tangent of an angle

InvHSine

Returns the inverse hyperbolic sine of an angle

InvHCos

Returns the inverse hyperbolic cosine of an angle

InvHTan

Returns the inverse hyperbolic tangent of an angle

Pi

returns the double value of Pie

represents Percentage

Scientific Calculator Requirements Specification


Sqrt

square root

Nth Root

Nth Root

represents power

Deg

represents degree

Rad

represents radians

Grad

Grad or 1/400 of a circumference of a circle

Hex

Hexadecimal

Oct

Octal

Bin

Binary

Dec

Decimal

Log

Logarithm to the base 10

Ln

Logarithm to the base n

Exp

returns Eulers number e raised to a power of value

AND

Binary AND Operation

OR

Binary OR Operation

XAND

Binary exclusive AND Operation

XOR

Exclusive OR operation

NAND

Binary NOT AND Operation

NOR

Binary NOT OR Operation

Number

This shall be a number or the result of an equation

N!

Factorial N

Equation

A combination of numbers and operators

Scientific Calculator Requirements Specification

3 User Classes and Characteristics


The following classes of user will be defined:
Operator

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

A developer understands how the application works in relation to code


and mathematical formulas.

4 Assumptions and Dependencies


Assumption 1. The hardware that will be used to run the application will be able to
perform all the required calculations.
Assumption 2. The hardware will have enough memory to run the program.
Assumption 3. There is no GUI required for this application.
Assumption 4. The user knows how to use the mathematical formulas provided

Scientific Calculator Requirements Specification

5 Specific Requirements
5.1 Functional requirements
5.1.1

General Application requirements

Requirement No:
1000
Description:
The application has to run from the command line.
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification


Requirement No:
1001
Description:
The application has to accept formulas from the command line
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:

Scientific Calculator Requirements Specification


1002
Description:
The application has to accept plain text files from the command line
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:

Scientific Calculator Requirements Specification


1003
Description:
Help can be accessed from the command line
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1004

Scientific Calculator Requirements Specification


Description:
The application has to accept decimal numbers
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1005

Scientific Calculator Requirements Specification


Description:
The application has to accept hexadecimal numbers
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1006
Description:

Scientific Calculator Requirements Specification

The application has to accept Octal numbers


Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1007
Description:

Scientific Calculator Requirements Specification


The application has to accept Binary numbers
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1008
Description:

Scientific Calculator Requirements Specification


Any number inside () brackets shall be calculated separately
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1009
Description:
If there is multiple () in the equation the inner most () will be completed first

Scientific Calculator Requirements Specification


Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1010
Description:

Scientific Calculator Requirements Specification


In the event of an equation where there is addition, subtraction, multiplication or division the
multiplication and division will be performed first and then the addition or subtraction.
Rationale:
There are different results if it is not known which takes precedence
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

5.1.2 Basic Calculator Operations


Requirement No:
1201
Description:

Scientific Calculator Requirements Specification


Addition shall be performed on each number either side of the + symbol
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1202
Description:

Scientific Calculator Requirements Specification


Subtraction shall be performed on each number either side of the - symbol
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1203
Description:
Multiplication shall be performed on each number either side of the * symbol

Scientific Calculator Requirements Specification


Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1204
Description:
Division shall be performed on each number either side of the / symbol
Rationale:

Scientific Calculator Requirements Specification

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:

Scientific Calculator Requirements Specification


Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1206
Description:
Square root shall be performed on the number beside the sqrt sign
Rationale:

Scientific Calculator Requirements Specification


Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1207
Description:
PI will be available for calculations.
Rationale:
Source:

Scientific Calculator Requirements Specification


Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1208
Description:
Evaluation on the power of two numbers will be possible
Rationale:
Source:

Scientific Calculator Requirements Specification


Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1209
Description:
Evaluation log to the base 10 will be possible
Rationale:
Source:
Customer

Scientific Calculator Requirements Specification


Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1210
Description:
Evaluation log to the base n will be possible
Rationale:
Source:
Customer

Scientific Calculator Requirements Specification


Dependencies:
Conflicts:
Other references:
History of changes:

Requirement No:
1211
Description:
Evaluation of factorial n will be possible
Rationale:
Source:
Customer
Dependencies:

Scientific Calculator Requirements Specification

Conflicts:
Other references:
History of changes:

Requirement No:
1212
Description:
Evaluation of nth root
Rationale:
Source:
Customer
Dependencies:

Scientific Calculator Requirements Specification


Conflicts:
Other references:
History of changes:

5.1.3 Trigonometric Functions


Requirement No:
1300
Description:
Trigonometric Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:

Scientific Calculator Requirements Specification


Conflicts:
Other references:
History of changes:

Requirement No:
1301
Description:
Trigonometric Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:

Scientific Calculator Requirements Specification

Other references:
History of changes:

Requirement No:
1302
Description:
Trigonometric Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:

Scientific Calculator Requirements Specification


Other references:
History of changes:

Requirement No:
1303
Description:
Trigonometric Arc Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:

Scientific Calculator Requirements Specification


Other references:
History of changes:

Requirement No:
1304
Description:
Trigonometric Arc Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:

Scientific Calculator Requirements Specification

History of changes:

Requirement No:
1305
Description:
Trigonometric Arc Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:

Scientific Calculator Requirements Specification


History of changes:

Requirement No:
1306
Description:
Trigonometric Hyperbolic Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:

Scientific Calculator Requirements Specification


History of changes:

Requirement No:
1307
Description:
Trigonometric Hyperbolic Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1308
Description:
Trigonometric Hyperbolic Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1309
Description:
Trigonometric Inverse Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1310
Description:
Trigonometric Inverse Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1311
Description:
Trigonometric Inverse Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1312
Description:
Trigonometric Inverse Hyperbolic Sine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1313
Description:
Trigonometric Inverse Hyperbolic Cosine will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1314
Description:
Trigonometric Inverse Hyperbolic Tangent will have to be performed
Rationale:
Source:
Customer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

5.1.4 Binary Functions


Requirement No:
1400
Description:
Binary numbers will have the MSB on the left and the LSB on the Right
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1401
Description:
Binary AND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1402
Description:
Binary OR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1403
Description:
Binary NAND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1404
Description:
Binary NOR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1405
Description:
Binary XAND operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1406
Description:
Binary XOR operations can be performed
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

5.1.5 Number Conversions


Requirement No:
1500
Description:
Conversion from number to hexadecimal
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1501
Description:
Conversion from number to Octal
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1502
Description:
Conversion from number to Binary
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1503
Description:
Conversion from number to decimal
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1504
Description:
Calculations can be done in degrees
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1505
Description:
Calculations can be done in radians
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1506
Description:
Calculations can be done in grad
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

Requirement No:
1507
Description:
Exp equations can be evaluated
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

5.2 Non Functional


Requirement No:
5000
Description:
Evaluation will not take longer than 200mSec
Rationale:
Source:
Developer
Dependencies:
Conflicts:
Other references:
History of changes:

Scientific Calculator Requirements Specification

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:

Scientific Calculator Requirements Specification

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:

Vous aimerez peut-être aussi