Software Requirements Specification (SRS) for Income Tax Calculator
Introduction
Purpose:
The purpose of this document is to outline the requirements for the development of an Income Tax Calculator application. This application calculates income tax liability based on income, deductions, and exemptions, providing users with accurate and reliable tax estimates.
Scope:
The Income Tax Calculator will serve as a tool for individuals to estimate their income tax liability before filing their tax returns. Users will input details such as income sources, deductions, and exemptions, and the system will calculate and display the estimated income tax.
System Overview
System Description:
The Income Tax Calculator will be a web-based application accessible through a browser. It aims to provide users with a user-friendly interface to input their financial details and receive accurate income tax calculations.
System Architecture:
The application will follow a client-server architecture, with the client being the web browser and the server handling the tax calculation and logic.
Functional Requirements
Use Cases:
Calculate Income Tax:
- Users can input details such as income from various sources, deductions, exemptions, and other relevant financial information.
- The system will calculate and display the estimated income tax liability based on the provided details.
Functional Requirements:
Input:
The system shall accept the following input:
- Income from Salary
- Income from Business or Profession
- Income from Capital Gains
- Deductions (e.g., HRA, 80C, 80D)
- Exemptions (e.g., LTCG exemption)
Calculation:
- The system shall use the applicable income tax slabs, deductions, and exemptions to calculate the total income tax liability.
Output:
- The system shall display the estimated income tax liability to the user.
Non-Functional Requirements:
- The system should provide a response time of under 3 seconds.
- The application should be accessible on common web browsers (Chrome, Firefox, Safari).
External Interface Requirements
User Interfaces:
- The user interface shall include input fields for income from various sources, deductions, exemptions, along with a “Calculate” button.
- The estimated income tax liability shall be displayed prominently.
Hardware Interfaces:
- The system should be compatible with standard computing hardware.
Software Interfaces:
- The application shall be developed using HTML, CSS, and JavaScript.
- The server-side logic can be implemented using a backend framework (e.g., Node.js, Django).
Communication Interfaces:
- The application will communicate with the server for the calculation and display of results.
Performance Requirements
Response Time:
The system should respond within 3 seconds for a typical user input.
Throughput:
The application should handle at least 50 simultaneous users.
System Constraints
Regulatory Requirements:
The application should comply with relevant tax regulations and laws.
Hardware Limitations:
The system should be compatible with devices with standard web-browsing capabilities.
Security Requirements
Authentication:
The application may not require user authentication as it’s a public tool.
Data Protection:
The system should not store or retain any user input data after the calculation.
Quality Attributes
Reliability:
The application should produce accurate results based on the provided input.
Maintainability:
The code should be well-documented for ease of maintenance.
Usability:
The user interface should be intuitive, requiring minimal guidance.
Testing Requirements
Test Cases:
Test cases should cover various income scenarios, deductions, and exemptions to ensure accurate income tax calculations.
Test Case 1:
- Inputs: Income from Salary = 8,00,000 INR, Income from Business = 2,00,000 INR, Deductions (80C) = 1,50,000 INR, Exemptions = 50,000 INR.
- Expected Output: Estimated Income Tax ≈ 30,000 INR
Test Case 2:
- Inputs: Income from Salary = 12,00,000 INR, Income from Capital Gains = 1,00,000 INR, Deductions (HRA) = 80,000 INR, Exemptions = 30,000 INR.
- Expected Output: Estimated Income Tax ≈ 1,80,000 INR
Test Case 3:
- Inputs: Income from Business = 5,00,000 INR, Deductions (80D) = 20,000 INR, Exemptions = 10,000 INR.
- Expected Output: Estimated Income Tax ≈ 50,000 INR
Acceptance Criteria:
The application is considered successful if it produces correct estimated income tax amounts based on the applicable tax rules and calculations.
Project Timeline
Milestones:
Design, Development, Testing, Deployment.
Development Phases:
Frontend development, Backend development, Testing, Deployment.
Glossary
None
Database Structure
Tables:
Income_Tax_Records:
- RecordID (Primary Key, Auto-increment)
- IncomeFromSalary (Decimal)
- IncomeFromBusiness (Decimal)
- IncomeFromCapitalGains (Decimal)
- Deductions_80C (Decimal)
- Deductions_HRA (Decimal)
- Deductions_80D (Decimal)
- Exemptions (Decimal)
- EstimatedIncomeTax (Decimal)
- CalculationDate (DateTime)
Conclusion
This extended SRS document provides a more detailed overview of the Income Tax Calculator application, including the database structure and additional test cases. It should be reviewed and approved by relevant stakeholders before proceeding with the development phase.