Software Requirements Specification (SRS) for Net Worth Calculator
Introduction
Purpose:
The purpose of this document is to outline the requirements for the development of a Net Worth Calculator application. This application assists users in determining their overall financial net worth by aggregating and calculating their assets and liabilities.
Scope:
The Net Worth Calculator will provide users with a comprehensive tool to assess their financial position. Users will input details about their assets and liabilities, and the system will calculate and display their net worth.
System Overview
System Description:
The Net Worth Calculator will be a web-based application accessible through a browser. It aims to offer users a user-friendly interface to input financial details and receive an accurate calculation of their net worth.
System Architecture:
The application will follow a client-server architecture, with the client being the web browser and the server handling the net worth calculation logic.
Functional Requirements
Use Cases:
Calculate Net Worth:
- Users can input details about their assets (e.g., savings, investments, properties) and liabilities (e.g., loans, debts).
- The system will calculate and display the user’s net worth by subtracting total liabilities from total assets.
Functional Requirements:
Input:
The system shall accept the following input:
- Assets:
- Savings
- Investments (e.g., stocks, mutual funds)
- Real Estate (e.g., properties)
- Liabilities:
- Loans (e.g., home loan, car loan)
- Debts (e.g., credit card debt)
Calculation:
- The system shall calculate the net worth by subtracting the total liabilities from the total assets.
Output:
- The system shall display the user’s net worth.
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 assets and liabilities, along with a “Calculate” button.
- The calculated net worth 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 net worth calculation and display of results.
Performance Requirements
Response Time:
The system should provide a response time of under 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 net worth 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 types and amounts of assets and liabilities to ensure accurate net worth calculations.
Test Case 1:
- Inputs: Savings = 50,000 INR, Investments = 1,00,000 INR, Real Estate = 30,00,000 INR, Loans = 10,00,000 INR, Debts = 5,000 INR.
- Expected Output: Net Worth ≈ 71,995,000 INR
Test Case 2:
- Inputs: Savings = 20,000 INR, Investments = 80,000 INR, Real Estate = 25,00,000 INR, Loans = 5,00,000 INR, Debts = 2,000 INR.
- Expected Output: Net Worth ≈ 49,078,000 INR
Test Case 3:
- Inputs: Savings = 1,00,000 INR, Investments = 1,50,000 INR, Real Estate = 40,00,000 INR, Loans = 15,00,000 INR, Debts = 10,000 INR.
- Expected Output: Net Worth ≈ 25,140,000 INR
Acceptance Criteria:
The application is considered successful if it produces correct net worth values based on the provided assets and liabilities.
Project Timeline
Milestones:
Design, Development, Testing, Deployment.
Development Phases:
Frontend development, Backend development, Testing, Deployment.
Glossary
None
Database Structure
Tables:
Net_Worth_Records:
- RecordID (Primary Key, Auto-increment)
- Savings (Decimal)
- Investments (Decimal)
- RealEstate (Decimal)
- Loans (Decimal)
- Debts (Decimal)
- NetWorth (Decimal)
- CalculationDate (DateTime)
Conclusion
This extended SRS document provides a more detailed overview of the Net Worth 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.