Software Requirements Specification (SRS) for Savings Goal Calculator
Introduction
Purpose:
The purpose of this document is to outline the requirements for the development of a Savings Goal Calculator application. This application helps users set and achieve financial savings goals over a specified period by providing insights into required monthly savings.
Scope:
The Savings Goal Calculator will allow users to input details such as the target savings amount, duration, and preferred type of savings (e.g., monthly contributions). The system will calculate and display the required monthly savings to achieve the specified savings goal.
System Overview
System Description:
The Savings Goal Calculator will be a web-based application accessible through a browser. It aims to assist users in planning and achieving their financial goals by providing personalized savings recommendations.
System Architecture:
The application will follow a client-server architecture, with the client being the web browser and the server handling the savings goal calculation logic.
Functional Requirements
Use Cases:
Calculate Monthly Savings:
- Users can input details such as the target savings amount, duration, and preferred type of savings (e.g., monthly contributions).
- The system will calculate and display the required monthly savings to achieve the specified savings goal.
Functional Requirements:
Input:
The system shall accept the following input:
- Target Savings Amount (in INR)
- Duration (in months or years)
- Type of Savings (e.g., monthly contributions)
Calculation:
- The system shall calculate the required monthly savings based on the specified target savings amount, duration, and type of savings.
[av_hr class=’invisible’ icon_select=’yes’ icon=’ue808′ font=’entypo-fontello’ position=’center’ shadow=’no-shadow’ height=’-10′ custom_border=’av-border-thin’ custom_width=’50px’ custom_margin_top=’30px’ custom_margin_bottom=’30px’ custom_border_color=” custom_icon_color=” id=” custom_class=” template_class=” av_uid=” sc_version=’1.0′ admin_preview_bg=”]
Output:
- The system shall display the required monthly savings to achieve the savings goal 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 the target savings amount, duration, and type of savings, along with a “Calculate” button.
- The calculated required monthly savings 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 savings goal 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 financial regulations.
Hardware Limitations:
The system should be compatible with devices with standard web-browsing capabilities.
Security Requirements
Authentication:
The application may or may not require user authentication, depending on whether users want to save their savings goal calculation data.
Data Protection:
If authentication is implemented, user data should be stored securely.
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 scenarios with different target savings amounts, durations, and types of savings to ensure accurate required monthly savings calculations.
Test Case 1:
- Inputs: Target Savings Amount = 1,00,000 INR, Duration = 12 months, Type of Savings = Monthly Contributions.
- Expected Output: Required Monthly Savings ≈ 8,333 INR
Test Case 2:
- Inputs: Target Savings Amount = 5,00,000 INR, Duration = 24 months, Type of Savings = Lump Sum.
- Expected Output: Required Monthly Savings ≈ 20,833 INR
Test Case 3:
- Inputs: Target Savings Amount = 2,50,000 INR, Duration = 18 months, Type of Savings = Bi-monthly Contributions.
- Expected Output: Required Monthly Savings ≈ 13,889 INR
Acceptance Criteria:
The application is considered successful if it produces correct required monthly savings based on the provided savings goal inputs.
Project Timeline
Milestones:
Design, Development, Testing, Deployment.
Development Phases:
Frontend development, Backend development, Testing, Deployment.
Glossary
None
Database Structure
Tables:
Savings_Goal_Calculator_Records:
- RecordID (Primary Key, Auto-increment)
- TargetSavingsAmount (Decimal)
- Duration (Integer)
- TypeOfSavings (String)
- RequiredMonthlySavings (Decimal)
- CalculationDate (DateTime)
Conclusion
This extended SRS document provides a more detailed overview of the Savings Goal 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.