Professional Documents
Culture Documents
Web Calculator Functional Specification
Web Calculator Functional Specification
Web Calculator Functional Specification
SPECIFICATION
Version 1.0
Author: Ragini Rachna Singh
1.1 Purpose
This document is intended to define the detailed functionalities, behaviours, and interactions of
QCAL. By outlining the specific features and operations that the calculator will perform, this
document aims to serve as a comprehensive guide for the development team, designers, and
stakeholders involved in the project. The specification will also serve as a central reference point for
discussions and decisions related to the application's features and behaviours.
b. Homogeneity: Ensure that all team members have a consistent understanding of the
application's requirements. By defining the expected behaviour and user flows, the
specification helps prevent misunderstandings and discrepancies in implementation.
c. Guidance for Development: Serve as a roadmap for developers to implement the QCAL's
functionalities accurately and efficiently. Developers can refer to the specification to
understand how to structure the code, handle user input, error handling and display
calculation results.
d. Digital Experience: Contribute to the creation of a user-friendly and easy to use calculator
that meets user expectations. By detailing user interface components, user interactions,
and error handling, the specification ensures that the calculator provides a seamless and
intuitive experience.
e. Testing Framework: Provide a basis for quality assurance and testing efforts. Testers can
create test cases and scenarios based on the specified requirements to verify that the
calculator functions as intended.
f. Flexibility and Scalability: Lay the foundation for potential future enhancements or
modifications to the QCAL. The specification's comprehensive overview enables
stakeholders to consider additional features or improvements in a well-structured manner.
1.2 Scope
The scope defines the features, functionalities, and limitation of QCAL- the QCAL. It defines the
boundaries of the project and outlines what is included and excluded from the application's
scope.
b. User Interface Components: The webpage will be minimalist and contain the home and
help buttons other than the calculator . It will comprise numeric buttons (0-9), operation
buttons (+, -, *, ÷,%, √), an equal button (=) to calculate results, a decimal button and a clear
button (C,AC & CE) to reset inputs. Details on this follow in the document under section 2.
Interface
c. Input Handling: The calculator will accurately interpret user inputs, allowing them to build
numerical expressions through button clicks. The user can clear the input or start a new
calculation using the C, CE or AC button.
d. Calculation Display: The calculator will display both the input expression and the calculated
result in a designated display area. Results will be presented in a readable format.
e. Compatible Design: The QCAL's interface will be responsive, adapting to various screen
sizes/ browsers and orientations to ensure usability on different devices.
1.3.1 Terms
a. QCAL- Name of the web tool designed to perform arithmetic calculations through a
web browser.
b. User Interface (UI)- The visual and interactive elements that users interact with on the
QCAL, including buttons, input fields, and display areas.
c. User Experience (UX)- The overall experience a user has while interacting with the
QCAL, encompassing usability, accessibility, and satisfaction.
d. Numeric Buttons: Interactive buttons that allow users to input numerical values into the
calculator.
e. Operation Buttons-Buttons that represent arithmetic operations such as addition,
subtraction, multiplication, division, percentage, decimal and square root.
f. Display Area-The designated space where input expressions and calculation results are
displayed. It will also display errors.
g. Equal Button (=)- The button users click to calculate and display the result of the entered
expression.
h. Clear Buttons -Refers to the 3( C, CE & AC) buttons that user can use to clear entries on
the display screen and memory.
1.3.2 Acronyms
a. UI/UX: User Interface/User Experience - The combined design and usability aspects of
the calculator.
b. QA: Quality Assurance- Process of testing and ensuring that the calculation functions
correctly and meets the requirements.
HOME HELP
00
C CE AC
7 8 9
4 5 6 x
1 2 3 .
0
o QCAL logo- Use the image file attached in the addendum of this document. The logo banner
should cover 1/6th of the screen height. Maintain aspect ratio.
o Home Button – This button brings back user to home page with all values on calculator
initialised and all entries cleared.
o Help Button- Upon clicking this button, following screen should come up with Support
Details.
4 5 6 x
1 2 3 .
0
2.1.2 Calculator
The design of QCAL is a critical aspect that directly impacts the user's interaction and overall
experience. The design aims to provide a visually appealing, intuitive, and efficient user interface that
facilitates seamless calculation processes.
3. FUNCTIONAL REQUIREMENT
QCAL is a QCAL and will be accessed through URL www.qcal.com. QCAL will be accessible across
all browsers and devices. The calculator will do calculations for integers ( negative numbers, zero
and positive numbers) and decimal.
The display screen will handle 13 characters for calculations. Out of these
o 12 characters are for numeric digits
3.4.1 Addition
o The user can input numbers using the numeric buttons.
o The number can be switched to negative using the Integer Toggle Key
o Enter first number followed by + button then second number.
o Result is displayed on the screen
o Refer Error Handling Section 3.6 for exception handling.
o If result is greater than allowed characters ( 12 digits with 1 sign/11 digits with 2 sign)
then round off the result. Display R at top left to indicate that value is rounded off.
3.4.2 Subtraction
o The user can input numbers using the numeric buttons.
o The number can be switched to negative using the Integer Toggle Key
o Enter first number followed by - button then second number.
o Result is displayed on the screen
o Refer Error Handling Section 3.6 for exception handling.
o If result is greater than allowed characters ( 12 digits with 1 sign/11 digits with 2 sign)
then round off the result. Display R at top left to indicate that value is rounded off.
3.4.3 Multiplication
o The user can input numbers using the numeric buttons.
o The number can be switched to negative using the Integer Toggle Key
o Enter first number followed by * button then second number.
o Result is displayed on the screen
o Refer Error Handling Section 3.6 for exception handling.
o If result is greater than allowed characters ( 12 digits with 1 sign/11 digits with 2 sign)
then round off the result. Display R at top left to indicate that value is rounded off.
3.4.4 Division
o The user can input numbers using the numeric buttons.
o The number can be switched to negative using the Integer Toggle Key
o Enter first number followed by ÷ button then second number.
o Result is displayed on the screen
o Refer Error Handling Section 3.6 for exception handling.
3.4.5 Percentage
o The user can input numbers using the numeric buttons.
o The number can be switched to negative using the Integer Toggle Key
o Enter number followed by % button .
o Compute the percentage by dividing number by 100 . Result is displayed on the screen.
o Refer Error Handling Section 3.6 for exception handling.
o If result is greater than allowed characters ( 12 digits with 1 sign/11 digits with 2 sign)
then round off the result. Display R at top left to indicate that value is rounded off.
3.6.1 C Clear
This function will cancel or delete entire calculation.
Error Screen
HOME HELP
Cannot divide by 0
C CE AC
7 8 9
4 5 6 x
1 2 3 .
0
4. TEST SCOPE
Testing QCAL involves ensuring that it performs accurate calculations, handles different scenarios
correctly, and provides a seamless user experience. Here is a scope for testing QCAL
Test Platform
Sno Functionality Test Scenario Expected result Comments
Category Device Browser
QCAL home page should
Unit Enter URL www.qcal.com open up. Contrast and Test across all browser
1 URL Device1 Browser 1
Testing on the browser page aspect ratio is adjusted as and device combination
per browser & Device
Unit Numeric Press each numeric Key on Pressed Key value should Test across all browser
5 Device1 Browser 1
Testing Keys QCAL. appear on display and device combination
Unit Function Press each arithmetic Pressed Key value should Test across all browser
6 Device1 Browser 1
Testing Keys function Key on QCAL. appear on display and device combination
Unit Press Home button on the Initial webpage of QCAL is Test across all browser
7 Home Device1 Browser 1
Testing web page displayed and device combination
Unit Press Help button on Help screen of QCAL is Test across all browser
8 Help Device1 Browser 1
Testing webpage displayed and device combination
Unit Input numeric digits. Test Test across all browser
9 Display Unit Device1 Browser 1 Max digit length 12
Testing max Length and device combination
Input numeric digits and
Unit Test across all browser
10 Display Unit negative sign Test max Device1 Browser 1 Max 13 digits with sign
Testing and device combination
Length
Table 3- Data matrix for Testing. Use this combination chart to test all arithmetic operation
Numeric Type
Positive Negative
Positive Negative Zero Decimal Decimal
Test
Sno Functionality Test Scenario Expected result
Category
Functional
11 Error handling Division by zero Cannot divide by 0
Testing
Functional
12 Error handling Input more than 12 digit Input too long
Testing
Functional
16 Error handling Unresponsive Key on QCAL Please refresh page
Testing
6. ADDENDUM
QCAL logo bar image file