0% found this document useful (0 votes)
10 views89 pages

Smart Recurring Deposit: A Project Report On

The project report focuses on the development of a Smart Recurring Deposit (RD) system aimed at enhancing the management of RD accounts through technology. It highlights the features and benefits of RDs, such as fixed monthly deposits, stable interest rates, and flexible terms, while addressing the limitations of traditional management methods. The proposed system seeks to provide users with real-time access, automated deposit management, and improved communication channels to facilitate a more efficient and user-friendly experience.

Uploaded by

yogeshgavit208
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views89 pages

Smart Recurring Deposit: A Project Report On

The project report focuses on the development of a Smart Recurring Deposit (RD) system aimed at enhancing the management of RD accounts through technology. It highlights the features and benefits of RDs, such as fixed monthly deposits, stable interest rates, and flexible terms, while addressing the limitations of traditional management methods. The proposed system seeks to provide users with real-time access, automated deposit management, and improved communication channels to facilitate a more efficient and user-friendly experience.

Uploaded by

yogeshgavit208
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

A

PROJECT REPORT ON

Smart Recurring Deposit


IN THE FULFILLMENT OF MASTER’S DEGREE IN
COMPUTER APPLICATIONS OF SAVITRIBAI
PHULE PUNE UNIVERSITY

SUBMITTED BY

VAIBHAV MADHUKAR MORE


G221309071

GUIDED BY
Mrs. Prof. A. L. Rane

MASTER OF COMPUTER APPLICATION


(UNDER FACULTY OF ENGINEERING)

DEPARTMENT OF MCA
K.K. WAGH INSTITUTE OF ENGINEERING EDUCATION
& RESEARCH, NASHIK 422003
(An Autonomous institute from A.Y. 2022-23)

SAVITRIBAI PHULE PUNE UNIVERSITY


YEAR 2023-2024
DISSERTATION APPROVAL SHEET

A Project titled
“Smart Recurring
Deposit”
Has been successfully
completed by
Vaibhav Madhukar More
G221309071
At Department of MCA

K.K. Wagh Institute of Engineering Education & Research, Nashik


422 003,

(An Autonomous Institute from A.Y. 2022-23)

Archana L. Dr. V. C. Bagal


Rane I/c Head of
Guide

Master of Computer
Applications
(Under Faculty of Engineering)

Department of MCA
`
Abstract
A Recurring Deposit (RD) is a term-deposit offered by banks, designed to help
individuals save regularly and earn returns on their investments. This project aims to
investigate the features and benefits of RDs and understand their role in promoting
financial security and savings discipline among individuals.

To achieve this, the project examines RD accounts, focusing on key features such as
fixed monthly deposits, a stable interest rate that remains unchanged throughout the
tenure, flexible terms ranging from 6 months to 10 years, and the minimum deposit
amounts required by various banks. It also explores the conditions under which
premature withdrawals are allowed and the associated penalties.

The findings reveal that RDs provide stability and predictability to investors, thanks to
the fixed interest rate and regular deposits. The flexible tenure options enable
individuals to align their investments with their financial goals. With minimum
deposit amounts starting as low as Rs. 1000, RDs are accessible to a wide population.
The allowance for premature withdrawals, albeit sometimes penalized, offers
additional flexibility for those who might need early access to their funds. Moreover,
RDs are effective in inculcating a disciplined savings habit, encouraging individuals to
save consistently and build a substantial corpus over time.

The study finds that RDs are a popular and reliable saving-cum-investment tool
offered by most major banks in India. By providing a safe and structured way to save,
RDs help individuals achieve financial stability and security, making them an
invaluable financial instrument for meeting specific financial goals such as funding
education, planning a wedding, or making significant purchases.

Keywords: - Financial security, Fixed monthly deposits, Interest rate, Premature


withdrawals, Recurring Deposit (RD), Savings habit

vi
TABLE OF CONTENT
Sr No Content Page
No
Abstract vi
List of Figures viii
List of Tables ix
Abbreviations x
1 Introduction 1
1.1 Detailed Problem 2
Definition
1.2 Current Market Survey 2
1.3 Need of the System 3
1.4 Advanced/Addition 4
/Updation to the previous
system
1.5 Organization of the report 4
2 Requirement Analysis 6
2.1 Requirement Analysis 6
2.2 Project Plan 10
2.3 Team Structure 12
3 Literature Survey 15
3.1 Existing System 15
3.2 Proposed System 15
4 Methodology 18
4.1 Software used 18
4.2 Hardware specification 18
4.3 Programming language 18
4.4 Platform 18
4.5 Components 19
4.6 Tools 19
4.7 Coding style followed 19
5 Modelling and Design 20
5.1 UML diagrams / DFDs 20
5.2 ER Diagram 35
5.3 Methods and Procedures 39
6 Testing 42
6.1 Format Technical Reviews 42
6.2 Test Plan 43
6.3 Test Cases 45
6.4 Test Results 49
7 Results 51
8 Conclusion 74
9 Bibliography 75
10 Acknowledgement 76
LIST OF FIGURES
Sr. No Captions Page No
1. Class Diagram 21
2. Use Case Diagram 23
3. Activity Diagram 25
4. User Sequence 27
Diagram
5. Admin Sequence 29
Diagram
6. DFD Level 0 31
7. DFD Level 1 33
8. DFD Level 2 34
9. ER Diagram 36
10. User Login 51
11. User Registration (1) 52
12. User Registration (2) 53
13. RD User Dashboard 54
14. Payment 55
15. Admin Login 56
16. Admin Dashboard 57
17. RD Passbook Entry 58
18. RD User 59
19. Sign in 60
20. Dashboard 61
21. RD Passbook 62
22. RD Passbook Print 63
23. RD Passbook PD 64
24. RD PDF 65
25. RD CSV File 66
26. RD User Details 67
27. RD User Details 68
28. RD User Update 69
29. Admin 70
30. User Registration 71
31. Passbook Entry 72
32. Agent 73

viii
LIST OF TABLES
Sr. No Title Page No
1. Test Cases for User 47
Module
2. Test Cases 48
for Admin
Module

ix
ABBREVIATIONS
SRD- Smart Recurring
Deposit RD- Recurring
Deposit
FD- Fixed Deposit
NBFCs - Non-Banking Financial
Companies EMIs- Equated Monthly
Instalments
IDE- Integrated Development
Environment UI- User Interface
(UX)- User Experience
HTML- Hyper Text Markup
Language CSS- Cascading Style
Sheet
PHP- Hypertext Preprocessor
RDBMS- Relational Database Management
System API- Application Programming Interface
UML-Unified Modelling
Language DFD- Data Flow
Diagram
ERD- Entity Relationship
Diagram TC- Test Case
Q/A- Question and Answer
x
1. Introduction
A Recurring Deposit, commonly known as RD, is a unique term-deposit that is
offered by Indian Banks. It is an investment tool which allows people to make
regular deposits and earn decent returns on the investment. Due to the regular deposit
factor and an interest component, it often provides flexibility and ease of investments
to users/individuals.
However, it is essential to know that RDs are different from Fixed Deposits/FDs.
RDs are flexible in most aspects. An RD account holder can choose to invest a fixed
amount each month while earning decent interest on the amount. RDs are an ideal
saving-cum- investment instrument.
Most major banks in India offer Recurring Deposit Accounts, with a term that often
ranges between 6 months to 10 years, also providing individuals with the opportunity
to choose a term according to their needs. However, the interest rate, once
determined, does not change during the tenure; and on maturity, the individual will
be paid a lumpsum amount which includes the regular investments as well as the
interest earned.
Recurring Deposit schemes aim at inculcating a regular habit of saving in people.
The minimum amount for deposits often varies from one bank to another. You could
invest with an amount as small as Rs. [Link] minimum period of deposit is six
months, while the maximum period of a deposit is 10 years. The rate of interest is
equivalent to that offered for a Fixed Deposit. Therefore, the interest rates are higher
than Savings Account.
Premature withdrawals are However, depending on the bank, they may allow you to
close your account before the maturity period on certain conditions. A Recurring
Deposit can be funded periodically through Standing Instructions that are usually
instructions given by the customer to the bank, to credit the RD account every month
from his/her Savings or Current Account.
Among the low-risk investment tools with moderate and assured returns, Recurring
Deposit (RD) is a popular investment option in India. It comes with an option of
flexibility for customers in the choice of investment amount and tenure accompanied
by multiple other benefits. Available in flexible tenure options ranging from 6
months to 10years, this investment tool offered by multiple banks and NBFCs helps
channelize monthly savings for long or short-term corpus creation. Investors can thus
choose a minimum amount to be invested every month over the term for assured
wealth generation.
You can opt to open your Recurring Deposit account with multiple financial
institutions like banks, NBFCs, or even post offices. While the minimum amount of
investment may vary from one institution to another, you can usually start with a
considerably small amount, say Rs. 500 every month, as per your budget.
Among the low-risk investment tools with moderate and assured returns, Recurring
Deposit (RD) is a popular investment option in India. It comes with an option of
flexibility for customers in the choice of investment amount and tenure accompanied
by multiple other benefits.
Available in flexible tenure options ranging from 6 months to 10 years, this
investment tool offered by multiple banks and NBFCs helps channelize monthly
savings for long or short-term corpus creation. Investors can thus choose a minimum
1
amount to be

2
every month over the term for assured wealth generation. If you do not have a
lumpsum amount to meet short-term goals, depositing a small share of your income
to the RD account every month serves the purpose well.
RD allows you to earn fixed interests on the amount invested at frequent intervals
until the investment matures or a predetermined term end. The total amount (i.e., the
capital invested and the interest accumulated) is disbursed to the investor after the
maturity period completes.
Almost all banks in the country along with several other institutions offer Recurring
Deposit investment options. The interest rates are, thus, highly competitive.
Depending on the prevalent market trends at the time of account creation, the interest
rates may vary anywhere between 5% and 8%. The average interest rates, however,
hover around 6% to7% for most banks.
1.1 Detailed Problem Definition

While Recurring Deposits (RDs) have been a popular investment choice, traditional
methods of managing RD accounts often lack convenience and accessibility for
users. Manual processes for deposit management, such as visiting bank branches or
filling out physical forms, can be cumbersome and time-consuming. This manual
approach not only consumes valuable time but also requires users to adhere to the
bank's operating hours, potentially causing inconvenience for those with busy
schedules. Additionally, the lack of real-time transaction tracking means that
customers may not have immediate access to information regarding their RD
investments, leading to a lack of transparency and control over their financial
portfolio. Without timely updates on their investment status, customers may miss out
on opportunities to adjust their savings strategy or capitalize on favorable market
conditions, thereby hindering their financial planning efforts.

Furthermore, limited interaction channels with financial institutions further


exacerbate these challenges. Customers may find it difficult to get timely assistance
or clarification on their RD accounts due to restricted communication avenues. This
limitation in communication channels can lead to frustration and dissatisfaction
among users who expect seamless and efficient customer service. Moreover, the
absence of digital platforms for managing RD accounts restricts users' ability to
conveniently access their investment information or perform transactions on-the-go.
As a result, there is a pressing need in the market for innovative solutions that can
address these pain points and provide users with a seamless RD experience. By
leveraging technology to automate deposit management processes, offer real-time
transaction tracking, and enhance communication channels with customers, financial
institutions can bridge the gap between traditional RD offerings and the evolving
expectations of today's digital- savvy consumers.

1.2 Current Market Survey

A comprehensive analysis of the current market reveals a growing demand for digital
solutions that streamline RD management and enhance user experience. lives, from
banking to investment management, there is a corresponding expectation for
innovative
3
RD management systems that offer convenience, accessibility, and efficiency. This
shift is driven by factors such as the widespread adoption of smartphones, the
proliferation ofinternet connectivity, and the growing comfort with online banking
services. Consequently, financial institutions are under pressure to adapt to these
changing dynamics and provide digital solutions that meet the evolving needs of their
customers. By leveraging technology to offer seamless RD management experiences,
institutions can not only differentiate themselves in a competitive market but also
enhance customer satisfaction and loyalty.

Moreover, the COVID-19 pandemic has further accelerated the digital transformation
of the financial sector, as social distancing measures and lockdowns necessitated a
reliance on remote banking services. This unprecedented global event has
underscored the importance of digital platforms in facilitating uninterrupted access to
financial products and services, including RD management. Customers now expect
the flexibility to manage their investments from the safety and comfort of their
homes, without the need for physical interaction or paper-based processes.
Consequently, there is a growing recognition among financial institutions of the need
to prioritize digital innovation and invest in robust RD management systems that can
cater to the evolving preferences and behaviors of consumers. By embracing
digitalization and offering user-friendly, feature-rich RD platforms, banks and
financial institutions can not only adapt to the new normal but also future-proof their
businesses in an increasingly digital- centric landscape.

1.3 Need of the System

The Smart Recurring Deposit System addresses these challenges by leveraging


technology to provide users with a user-friendly, efficient, and secure platform for
managing their RD accounts. By integrating features such as real-time account
access, transaction tracking, and automated deposit management, the system aims to
revolutionize the way users interact with their RD investments.

 Flexible Deposits: Instead of a fixed deposit amount every month, the system
could allow for variable deposits within a specified range. This could help
account holders manage their savings better based on their monthly income and
expenses.
 Automated Deposits: While some banks already offer this feature, ensuring that
all banks provide an option for automated deposits from a linked savings or
checking account could make maintaining an RD account more convenient.
 Tiered Interest Rates: The system could offer increased interest rates for higher
deposit amounts or longer tenures, encouraging account holders to save more.
 Online Management: Full-featured online management of RD accounts,
including opening new accounts, closing accounts, setting deposit amounts, and
view ingaccrued interest and balance.
 Alerts and Notifications: Implementing a system of alerts and notifications for
upcoming deposits, successful deposits, failed transactions, maturity date re-
minders, etc., could help account holders manage their RD accounts more
effectively.

4
1.4 Advances / Additions/ Updation to the previous system

Compared to traditional RD management methods, the Smart Recurring Deposit


System offers several advancements and additions:

 Real-time access to RD accounts via a user-friendly Android application.


 Seamless integration with bank systems for automated deposit management
and transaction tracking.
 Enhanced security features, including secure authentication and data
encryption, to safe guard user information.
 Improved user engagement through notifications, alerts, and personalized
recommendations.

Compared to traditional RD management methods, the Smart Recurring Deposit


System represents a significant leap forward in terms of technological
sophistication and user experience. One of the key enhancements is the
provision of real-time access to RD accounts through a user-friendly Android
application. This mobile application empowers users to conveniently monitor
their investments, review transaction history, and track the growth of their
savings anytime, anywhere. By eliminating the need for physical visits to bank
branches or reliance on cumbersome paperwork, the mobile app offers
unparalleled convenience and flexibility to users, aligning with the evolving
preferences of today's digital-first consumers.

Moreover, the Smart Recurring Deposit System boasts seamless integration


with bank systems for automated deposit management and transaction tracking.
This integration ensures that deposits are processed efficiently and accurately,
minimizing the risk of errors or delays. Through automated systems, users can
set up recurring deposits, modify investment amounts, or even initiate
premature withdrawals with ease, thereby enhancing overall operational
efficiency and customer satisfaction.

Furthermore, the Smart Recurring Deposit System focuses on enhancing user


engagement through proactive communication and personalized
recommendations. Users receive timely notifications and alerts regarding
upcoming deposit dates, maturity reminders, or changes in interest rates,
ensuring that they stay informed and empowered to make informed decisions
about their investments. Additionally, the system leverages data analytics and
machine learning algorithms to offer personalized recommendations tailored to
each user's financial goals, risk tolerance, and investment preferences. By
providing relevant and actionable insights, financial institutions can foster
deeper engagement and strengthen relationships with their customers, ultimately
driving greater loyalty and retention.

1.5 Organization of the report

 This report is meticulously organized to furnish a holistic portrayal of the Smart


Recurring Deposit System, meticulously covering multifaceted dimensions such
as system architecture, functionality, implementation methodologies, accrued
benefits, and poignant user testimonials.
 Furthermore, the report is enriched with insightful case studies meticulously
curated to spotlight successful system
5 implementations across diverse
organizational landscapes.
 This report serves as a comprehensive guide to the Smart Recurring Deposit
System (SRDS), meticulously dissecting its various facets. We'll embark on a
journey that explores the system's architecture, its functionalities, the
methodologies employed in its creation, the tangible benefits it offers, and user
testimonials that paint a vivid picture of its real-world impact.
 Each section within this narrative is meticulously crafted to provide a nuanced
understanding. We'll delve into the intricate details of the SRDS design, tracing
its developmental trajectory from conception to implementation. We'll explore
thevarious deployment modalities available and how they cater to diverse user
needs. Finally, we'll examine the pragmatic implications of the SRDS,
showcasing howit streamlines recurring deposit management for users.
 To further solidify the value proposition of the SRDS, the report will be
enrichedwith insightful case studies. These meticulously curated narratives will
spotlight successful system implementations across a broad spectrum of
organizational landscapes. Through these empirical accounts, we'll not only
elucidate the system's effectiveness in meeting the multifaceted needs of users
but also underscore its transformative impact.
 Case studies will illustrate how the SRDS can catalyze operational efficiencies,
streamline processes, and ultimately generate tangible value propositions for
stakeholders. By contextualizing real-world scenarios and their outcomes, these
case studies will serve as compelling testimonials to the system's efficacy and
versatility. They will offer valuable insights and inspiration for prospective
adopters and stakeholders alike, providing a clear roadmap for integrating the
SRDS into their financial management strategies.
 Furthermore, the report will incorporate visual aids such as flowcharts,
diagrams,and screenshots to enhance understanding. These elements will serve
to simplifycomplex concepts and provide a clear visual representation of the
SRDS' functionalities and user interactions.
 Ultimately, this report aspires to be a one-stop resource for anyone seeking to
understand and explore the potential of the Smart Recurring Deposit System.
Bypresenting information in a clear, concise, and engaging manner, the report
aims to empower readers to make informed decisions about leveraging the
SRDS to achieve their financial goals.
 The report will also delve into the technical underpinnings of the
SRDS,providing a high-level overview of the system architecture and
its core components.
 This section will be beneficial for stakeholders with a technical background,
offering insights into the technology stack used and the design choices that
contribute to the system's performance and scalability. However, the technical
details will be presented in a way that remains accessible to a broader
audience.
 To further enhance the reader's understanding, the report will incorporate
industry benchmarks and comparisons. Highlighting how the SRDS stacks
up against existing solutions in terms of features, security, and user
experience willprovide valuable context.

6
2. Requirement Analysis
Before diving into the specifics of the Smart Recurring Deposit System, it's crucial to
conduct a thorough requirement analysis to ensure that the product meets the needs
and expectations of its users. Requirement analysis is a critical phase in the software
development lifecycle where the goals, functionalities, and constraints of the system
are identified and documented. This process lays the foundation for the entire
development effort, guiding the design, implementation, and testing phases.
2.1.1 Product Perspective

The Smart Recurring Deposit System is designed as a new, self-contained product


aimed at enhancing the user experience in managing recurring deposits through an
Android application. The system consists of two major components: the Android app
for end-users and the Django-based admin panel for administrators. This product
does not replace any existing systems but introduces a novel approach to handling
recurring deposits with enhanced features and ease of use.

The overall system architecture includes:

 Android Application: Developed using Java and Android Studio, for users to
manage their recurring deposits.
 Django Admin Panel: Developed using Python and Django framework,
for administrators to monitor and manage user activities.
 MySQL Database: To store user data, transaction history, and other
related information.
 RESTful APIs: For communication between the Android app and the Django backend.

2.1.2 Product Functions

The Smart Recurring Deposit System must perform the following major functions:

From the User's Point of View:

1. Necessary Functions:

 User Registration and Login: Users must be able to register and log in to the
system securely.
 Manage Recurring Deposits: Users should be able to create, view, and manage
their recurring deposit accounts.
 Transaction History: Users must have access to their transaction history for
review and management.

2. Desirable Functions:

 Notifications: Users should receive notifications for deposit due dates,


confirmations, and other relevant events.
 Profile Management: Users should be able to update their profile information.

7
3. Other Requirements:

 Customer Support: Users should have access to a help or support feature


for assistance.

From the Developer's Point of View:

1. Necessary Functions:

 User Authentication: Implementation of secure authentication using JWT tokens.


 API Integration: Development of RESTful APIs for seamless communication
betweenthe Android app and the backend.
 Data Management: Ensuring efficient handling and storage of user data
and transactiondetails in MySQL and SQLite.

2. Desirable Functions:

 Scalability: The system should be scalable to handle an increasing number of users


andtransactions.
 Performance Optimization: Optimization of both the app and backend for fast
andresponsive user experience.

3. Other Requirements:

 Documentation: Comprehensive documentation for users and developers.

2.1.3 User Classes and Characteristics

The primary user classes anticipated for this product include:

1. End-Users:

 Characteristics: Individuals with basic technical expertise who use the app to
managetheir recurring deposits.
 Frequency of Use: Regularly, depending on their deposit schedules.
 Security Level: Standard user access with secure authentication.

2. Administrators:

 Characteristics: Personnel with higher technical expertise responsible for


managing thebackend and user activities.
 Frequency of Use: Frequently, to monitor and manage the system.
 Security Level: Elevated access with administrative privileges

8
2.1.4 Operating Environment

The software operates in the following environments:

1. Android Application:

 Hardware Platform: Android smartphones.


 Operating System: Android OS version 5.0 (Lollipop) and above.
 Other Software Components: Integrated with SQLite for local data storage.

2. Django Admin Panel:

 Hardware Platform: Web servers.


 Operating System: Any OS that supports Python (e.g., Linux, Windows).
 Other Software Components: MySQL for database management, Bootstrap
for frontendinterface.

2.1.5 Design and Implementation Constraints

During the design and implementation of the software, several constraints were
rigorously considered to ensure both compliance and functionality. These constraints
encompassed various aspects including regulatory policies, hardware limitations,
technology stack, and security measures, among others.

1. Corporate or Regulatory Policies: Compliance with data protection


regulations, such as the General Data Protection Regulation (GDPR), was
paramount. This necessitated stringent measures for data handling, storage, and
processing to protect userprivacy and ensure data security. The app incorporated
features for user consent, data anonymization, and the ability for users to request data
deletion, aligning with GDPR mandates. These policies influenced the design of the
database schemas and user interaction flows to ensure transparency and user control
over personal data.

2. Hardware Limitations: Given the diverse range of devices that would


potentially run the app, it was crucial to optimize performance for devices with
limited resources, such as lower memory capacity and slower processing speeds.
This required efficient memory management, minimizing background processes, and
optimizing code to reduce CPU usage. The development team implemented
lightweight data handling andprocessing techniques to ensure smooth performance
even on lower-end devices.

3. Interfaces to Other Applications: The decision was made to design the system
as astandalone solution with no dependencies on external applications. This
simplified the architecture but required comprehensive internal functionalities to
ensure all necessaryfeatures were built in-house.
4. Specific Technologies and Tools: The selection of technologies was driven by
theirsuitability for the tasks and their compatibility with the overall system design.
For Android app development, Android Studio, Java, and XML were chosen to
leverage their robustness and widespread use. The backend was built using Python
and Django, with MySQL as the database, chosen for their scalability and ease of
integration.
9
Retrofit was utilized for efficient and reliable API communication, while Bootstrap
wasselected for creating a responsive and user-friendly web interface for the admin
panel.

5. Security Considerations: Security was a critical concern, addressed through the


implementation of JSON Web Tokens (JWT) for secure user authentication. JWT
provided a robust mechanism to ensure that user sessions were secure and protected
against common vulnerabilities like session hijacking. Data encryption was also
implemented to safeguard sensitive information both in transit and at rest, further
enhancing the security posture of the application.

6. Design Conventions: Adhering to best practices in coding standards and design


patterns was fundamental to ensuring the maintainability and scalability of the
[Link] development team followed established design principles such as MVC
(Model- View-Controller) and applied coding standards to ensure consistency and
readability ofthe code. This approach facilitated easier debugging, testing, and future
enhancements.

2.1.6 User Documentation

Comprehensive user documentation was developed and delivered to ensure that end-
users and administrators could effectively utilize the software. This documentation
included various components designed to cater to different user needs and
preferences.

1. User Manuals: Detailed user manuals were created, providing extensive


information on the functionalities of both the Android app and the admin panel.
These manuals included step-by-step instructions, screenshots, and troubleshooting
tips to assist users in navigating the software with ease. The manuals covered all
aspects of the software, from installation and initial setup to advanced features and
customization options.

2. Online Help: To provide immediate assistance within the app, integrated help
features were developed. These features allowed users to access help topics directly
within the Android app, offering context-sensitive assistance based on the user’s
current activity. This integration ensured that users could quickly find answers to
their questions without needing to leave the app.

3. Tutorials: Recognizing the need for practical, hands-on guidance, a series of


step-by- step tutorials were created. These tutorials guided users through the major
functionalities of the app, enabling them to learn by doing. The tutorials were
designed to be interactive and engaging, helping users build confidence and
proficiency in using the software.

4. Delivery Formats: User documentation was provided in versatile formats to


ensure accessibility and convenience. PDFs were chosen for their portability and ease
of distribution, allowing users to download and refer to the manuals offline.
Additionally, the documentation was made accessible online through the app and the
admin panel, ensuring that users could access the latest information and updates from
any device with internet connectivity.

10
2.2 Project Plan

The Smart Recurring Deposit (RD) Android application project is structured into several
phases, each with specific objectives and tasks to ensure a comprehensive development
process. Initially, the project focuses on system architecture design, where architectural
diagrams and a MySQL database schema are created to establish a solid foundation. This
phase also includes defining RESTful API endpoints for seamless communication
between the mobile app and the backend system.

Subsequent phases involve developing user-centric UI/UX designs using tools like Adobe
XD or Figma, and integrating robust security features such as JWT-based authentication
and data encryption standards. The development phase, spanning eight weeks, covers the
creation of the Android application and its backend using Django, along with thorough
unit and integration testing. Finally, the project culminates in a structured deployment
phase, where the application is launched on the Google Play Store, and the backend is
deployed on production servers, followed by post-deployment support to ensure system
reliability and user satisfaction.

The development phase, spanning eight weeks, is divided into three sub-phases: Android
app development, backend development, and database integration. During this phase, the
Android Studio environment is set up, and key functionalities like user registration, login,
RD account management, and transaction history are implemented. The backend,
developed using Django, includes user authentication, API integration, and admin
functionalities for monitoring user activities. Database integration ensures seamless
communication between the app, backend, and database, with thorough testing to ensure
data integrity.

Finally, the project culminates in a structured testing and deployment phase. Testing
includes unit tests for individual components, integration tests to ensure smooth
interactions between system components, and user acceptance testing (UAT) to gather
real-user feedback. The deployment phase involves setting up the production
environment, deploying the app to the Google Play Store, and launching the backend on
production servers. Post-deployment support is provided to monitor system performance
and address any issues, ensuring user satisfaction and system reliability.

2.2.1 Project Overview

This project involves the development of an Android application, its backend system, and
database integration. The plan spans several phases, each focusing on specific objectives
and tasks to ensure a comprehensive and cohesive development process.

Phase 1: System Architecture Design (1 week)

 The initial phase focuses on designing the system architecture, including creating
architectural diagrams to visually represent the system structure. The database schema is
designed using MySQL to efficiently store and manage data. RESTful API endpoints are
defined to facilitate seamless communication between the application and the backend.

11
Phase 2: UI/UX Design (1 week)

 During this phase, user interface and experience designs are developed. Wireframes and
mock-ups are created using tools such as Adobe XD or Figma, providing visual
prototypes of the app interface. The final UI/UX designs are then completed and
approved, readying them for the development phase.

Phase 3: Security Design (1 week)

 Security features are integrated into the system, focusing on designing secure
authentication methods using JWT tokens. Data encryption standards are implemented to
ensure that user information is protected both during storage and transmission.

Phase 4: Development (8 weeks)

 Android App Development (4 weeks): The Android application is developed in this


phase. The development environment is set up using Android Studio. Key functionalities
such as user registration, login, RD account management, transaction history, and
notifications are implemented.
 Backend Development (3 weeks): The backend is developed using Django. The
environment is set up, and backend logic for user authentication and API communication
is implemented. Admin functionalities are created to monitor and manage user activities.
 Database Integration (1 week): The MySQL database is configured for production use.
Database connections are developed and integrated to ensure smooth communication
between the app, backend, and database. Necessary data migration and thorough testing
are performed.

Phase 5: Testing (3 weeks)

 Unit Testing (1 week): Individual components and functionalities of the Android app and
backend are tested. Unit tests are written and executed to ensure that each part functions
correctly.
 Integration Testing (1 week): Seamless integration of all system components is ensured
by testing the interactions between the Android app and the backend, and verifying
database operations.
 User Acceptance Testing (1 week): The system is validated with end-users through UAT
sessions. Feedback is gathered and used to make necessary adjustments, ensuring the app
meets user expectations before deployment.

Phase 6: Deployment (2 weeks)

 Production Environment Setup (1 week): The production environment is prepared by


setting up servers and the database, configuring security settings, and establishing backup
procedures.
 Application Deployment (3 days): The Android app is deployed to the Google Play
Store, and the Django backend is made live on production servers.
 Post-Deployment Support (4 days): Post-deployment support includes monitoring
system performance and addressing any issues that arise, ensuring user satisfaction and
system reliability.

12
2.3 Team Structure

2.3.1 Project Manager

Responsibilities:

 Oversee overall project progress.


 Coordinate between different teams.
 Manage project timeline, resources, and budget.
 Ensure clear communication with stakeholders.

Required Skills:

 Strong leadership and organizational skills.


 Experience in project management.
 Excellent communication and problem-solving abilities.

2.3.2 Android Developers


Responsibilities:

 Develop and test the Android application.


 Implement user registration, login, RD account management, transaction history,
and notifications.
 Ensure the app adheres to security and performance standards.

Required Skills:

 Proficiency in Java and Android Studio.


 Experience with mobile app development and UI/UX design.
 Knowledge of SQLite for local data storage.

2.3.3 Backend Developers


Responsibilities:
 Develop and test the Django-based admin panel.
 Implement user authentication, API integration, and admin functionalities.
 Ensure secure and efficient communication between the app and backend.

Required Skills:

 Proficiency in Python and Django framework.


 Experience with RESTful API development.

13
 Knowledge of database management and data security practices.

2.3.4 Database Administrator


Responsibilities:

 Manage MySQL database setup and maintenance.


 Ensure efficient storage and retrieval of user data and transaction details.
 Monitor database performance and perform data migrations as needed.

Required Skills:

 Proficiency in MySQL and database management.


 Experience with database optimization and security.
 Knowledge of data backup and recovery procedures.

2.3.5 UI/UX Designer

Responsibilities:

 Design user interfaces and user experiences for the Android app.
 Create wireframes, mockups, and prototypes.
 Conduct user feedback sessions and refine designs based on feedback.

Required Skills:

 Proficiency in design tools like Adobe XD, Figma, or Sketch.


 Experience with mobile app design and user experience principles.
 Strong creativity and attention to detail.

2.3.6 QA/Testers
Responsibilities:

 Conduct unit, integration, and user acceptance testing.


 Identify and report bugs, and ensure they are resolved before release.
 Verify that the application meets the specified requirements and standards.

Required Skills:

 Experience in software testing and quality assurance.


 Knowledge of testing tools and methodologies.
 Strong analytical and problem-solving skills.

2.3.7 Support Team

Responsibilities:

 Provide post-deployment support and maintenance.


 Monitor system performance and address any issues that arise.
14
 Assist users with any problems or queries related to the app.

Required Skills:

 Experience in technical support and maintenance.


 Strong communication and customer service skills.
 Ability to troubleshoot and resolve technical issues.

2.3.8 Continuous Learning and Improvement


Responsibilities:

 Stay abreast of the latest technologies and industry trends.


 Participate in continuous learning opportunities and training sessions.

Required Skills:

 Open-mindedness and a willingness to learn.


 Ability to apply new knowledge to practical scenarios.
 Commitment to personal and professional growth.

2.3.9 Team Members Allocation

 Project Manager: 1
 Android Developers: 2-3
 Backend Developers: 2
 Database Administrator: 1
 UI/UX Designer: 1
 QA/Testers: 2-3
 Support Team: 2

15
3. Literature Survey
3.1 Existing System
The existing system for Recurring Deposits (RD) involves a few key steps:
 Opening an RD Account: You can open an RD account with financial institutions
like banks, Non-Banking Financial Companies (NBFCs), or even post offices Some
banks also allow you to open an RD account online.
 Choosing the Deposit Amount and Tenure: You can choose a minimum amount to
be invested every month over the term for wealth generation. The minimum
investment amount varies from one bank to another. The deposit tenure ranges from
6 months to 10 years.
 Making Regular Deposits: An RD allows you to make regular deposits (usually
monthly) into your RD account. Some banks allow funding of RD periodically
through Standing Instructions given by the customer to the bank.
 Earning Interest: RD allows you to earn fixed interests on the amount invested at
frequent intervals until the investment matures or a predetermined term end. The
interest rate offered on RDs is always higher than the interest earned through a
savings account.
 Maturity: The total amount (i.e., the capital invested and the interest accumulated) is
disbursed to the investor after the maturity period completes
 Premature Withdrawal and Closure: Most banks allow premature closure of the
RD account, although this might come with a penalty

3.2 Proposed System


Here are some potential improvements that could be made based on the current system:
 Flexible Deposits: Instead of mandating a fixed deposit amount every month, the
system could allow for variable deposits within a specified range. This flexibility
would enable account holders to adjust their monthly deposits according to their
financial situation, allowing them to save more during months of higher income and
adjust accordingly during periods of higher expenses.
 Automated Deposits: While some banks already offer automated deposits,
ensuring that all banks provide an option for automated deposits from a linked
savings or checking account could significantly enhance convenience. Automated
deposits ensure timely contributions to RD accounts, reducing the risk of missed
deposits and helping account holders maintain their savings discipline effortlessly.

 Tiered Interest Rates: The introduction of tiered interest rates based on


deposit amounts or tenure could incentivize account holders to save more. Higher
interest rates for larger deposits or longer tenures would encourage account holders
to commit to higher savings targets, ultimately benefiting both the savers and the
banks through increased funds under management.
 Online Management: Implementing a full-featured online management
system for RD accounts can provide account holders with greater control and
convenience. Features could include the ability to open new accounts, close

16
existing accounts, set or modify deposit amounts, view accrued interest, and check
the current balance. This digital approach aligns with modern banking trends and
meets the growing demand for online financial services.

 Alerts and Notifications: A robust system of alerts and notifications can


greatly enhance account management. Notifications for upcoming deposit due dates,
successful deposit confirmations, failed transaction alerts, maturity date reminders,
and more can keep account holders informed and proactive in managing their RD
accounts. Such a system reduces the likelihood of missed payments and provides
peace of mind to account holders.

 Premature Withdrawal Flexibility: Offering more lenient terms for


premature withdrawals, such as reduced penalties or a grace period in which
withdrawals can be made without penalty, can make RD accounts more appealing.
This flexibility can attract individuals who might otherwise be hesitant to lock their
funds for extended periods. A balanced approach to penalties ensures that account
holders have access to their funds in emergencies while still encouraging disciplined
saving.

 Mobile App Integration: Integrating RD account management into a bank's


mobile app can provide account holders with on-the-go access to their accounts.
Mobile apps can offer the same comprehensive features as the online portal,
including deposit scheduling, account monitoring, and transaction alerts, all from the
convenience of a smartphone.

 Personalized Financial Advice: Incorporating personalized financial advice


based on the account holder’s saving patterns and financial goals can add significant
value. Financial advisors or automated advisory tools can suggest optimal deposit
amounts, recommend tenure extensions, or provide insights into achieving specific
financial milestones.

 Secure and User-Friendly Interface: Ensuring that all online and mobile
interactions with RD accounts are secure is paramount. Implementing robust security
measures, such as two-factor authentication and encryption, alongside a user-friendly
interface, can provide account holders with confidence in the safety and ease of
managing their savings.

 Customizable RD Plans: Allowing account holders to customize their RD plans


based on their unique financial needs and goals can make RD accounts more
attractive. Customizable features might include the ability to choose deposit
frequency, adjust maturity dates, and select from various interest compounding
options.
3.2.1 Objective of Proposed System
The proposed system either does not require paper work or very few paper works are
required. All the data is fetched into the mobile immediately and various bills can be
generated through this app. Since all the data is kept in a database, no data of
the
17
organization can be destroyed. Moreover, works become very easy because there is
no need to keep data on papers.
The proposed system offers a comprehensive range of features and advantages over
traditional paper-based billing systems. Its scope includes the following key
functionalities and benefits:

 Enhanced EMI Management: The app is designed to assist users in managing their
Equated Monthly Instalments (EMIs) with greater efficiency. Users can schedule
payments, receive reminders for due dates, and track their payment history, ensuring
they stay on top of their financial commitments without the hassle of manual
tracking.
 Mature Amount and EMI Tracking: Users gain clear visibility into the expected
maturity amount of their RD accounts and can monitor the number of EMIs paid.
 Quality and Faster Service: The transition to a digital platform enables the
provision of quicker and higher-quality services. Users experience reduced wait
times and can access account information and perform transactions instantaneously,
enhancing overall user satisfaction.
 Easy Future Maintenance: The app facilitates the maintenance of a detailed and
organized database of RD account information. This digital record- keeping
simplifies data retrieval and management, ensuring that users and administrators can
easily access and update account information as needed.
 User Registration and Authentication: To access the app's services, users must
first register their basic details. This registration process ensures that all users are
authenticated, enhancing security. Once registered, users can log in securely at any
time to manage their accounts, ensuring that their data is protected and easily
accessible.
 Integrated Payment Options: The app supports various payment methods, offering
users the flexibility to make deposits and EMI payments through their preferred
platforms, including credit/debit cards, net banking, and digital wallets. This
integration simplifies the payment process and ensures that users can manage their
finances with ease.
 Comprehensive Payment Reports: Users can generate detailed reports on their
payment history, including the number of payments made and any outstanding
amounts. These reports provide a clear overview of the user's financial activity,
helping them to stay organized and informed about their RD account status.
 User Dashboard: The dashboard serves as a centralized hub where users can view a
summary of key information, such as the number of EMIs paid, the remaining
balance, and the expected maturity amount. This feature ensures that users have all
the essential details at their fingertips, making account management more intuitive
and efficient.
 Alerts and Notifications: A robust system of alerts and notifications keeps users
informed about important account activities. Reminders for upcoming EMI due
dates, confirmations of successful transactions, alerts for failed payments, and
notifications of maturity dates help users manage their accounts proactively and
avoid missed payments.

18
4. Methodology
In the development of the Smart Recurring Deposit System, a systematic approach
was followed to ensure efficient implementation and optimal performance. The
methodology encompassed a comprehensive selection of software, hardware,
programming languages,platforms, components, and tools, along with adherence to
coding standards.

4.1 Software Used

The development process relied on a suite of software tools and packages to facilitate
various stages of the project. Key software used includes:

 Android Studio: The official Integrated Development Environment (IDE)


for Androidapp development.
 MySQL: An open-source relational database management system (RDBMS)
for efficientdata storage and management.
 PHP: A widely-used server-side scripting language designed for web development.
 Java: A versatile and widely-used programming language, particularly for Android
appdevelopment.
 Django Framework: A high-level web framework for Python, enabling rapid
development of secure and scalable web applications.
 Visual Studio Code (VS Code): A lightweight and versatile source code editor
forwriting and debugging code.

4.2 Hardware Specification

The development environment adhered to specific hardware requirements to ensure


optimal performance. The hardware specifications included:

 Processor: Intel CORE i3 or higher.


 RAM: 4GB or more.
 Hard Disk Space: Minimum 64GB.

4.3 Programming Language

The primary programming languages utilized in the development process were:

 Python: A high-level, interpreted programming language known for its simplicity


andreadability.
 Java: A versatile and widely-used programming language, particularly for Android
appdevelopment.
 PHP 7: A widely-used server-side scripting language designed for web development.

4.4 Platform

The Smart Recurring Deposit System was developed primarily for the Android
platform,leveraging the capabilities of Android smartphones for user interaction and
engagement.

19
4.5 Components

The system integrated various components, each serving a specific function within
the application. Key components included:

 Database Management System: MySQL was employed for efficient storage


and retrievalof user data and transaction details.
 Web Framework: Django provided the foundation for building secure and scalable
webapplications.
 Front-end Framework: Bootstrap was utilized for designing responsive and
visuallyappealing user interfaces.

4.6 Tools

Several tools were instrumental in the development process, aiding in design, coding,
testing, and deployment. Key tools used include:

 Android Emulator: Facilitated testing and debugging of Android applications on


desktop computers without requiring physical devices.
 XAMPP: Provided a local web server environment for testing PHP-based web
applications before deployment.

4.7 Coding Style Followed

A structured and consistent coding style was adhered to throughout the development
process to ensure readability, maintainability, and scalability of the codebase. Best
practices and coding conventions recommended by the respective programming
languages and frameworks were followed diligently.

By employing a systematic methodology and leveraging a diverse set of software,


hardware, programming languages, platforms, components, and tools, the
development team successfully created the Smart Recurring Deposit System,
delivering a user- friendly,efficient, and secure platform for managing RD accounts.

20
5. Modeling and Design
5.1 UML diagrams / DFDs
 Unified Modelling Language (UML) diagrams are essential tools in software
engineering, providing a standardized way to visualize, describe, construct, and
document the artifacts of a software system. They play a crucial role in modelling
complex software systems by representing both their structure and behavior. UML
diagrams are broadly categorized into structural diagrams and behavioral diagrams.
 A Data Flow Diagram (DFD) is a visual representation of how data moves through a
system, illustrating the interaction between external entities, processes, data flows,
and data stores. External entities represent sources or destinations of data, processes
depict actions or transformations, data flows show the movement of data, and data
stores represent where data is stored. DFDs provide a clear understanding of system
functionality, aiding in the identification of potential issues and optimizations within
the system.
.
5.1.1 Class Diagram
 A Class Diagram is a type of Unified Modelling Language (UML) diagram that
illustrates the structure of a system by depicting the classes of objects within it, along
with their attributes, methods, and relationships with other classes. It shows the static
structure of a system, highlighting the blueprint of objects and their interactions.
Classes are represented as rectangles, with attributes listed above the line and
methods below it. Relationships between classes, such as associations, inheritance,
and dependencies, are shown through lines connecting the classes. Class diagrams
are essential for understanding the architecture of a system and facilitating
communication among developers during the design phase of software development.
 Class Diagrams, a fundamental aspect of Unified Modelling Language (UML),
provide a comprehensive blueprint of a system's structure, encapsulating its classes,
attributes, methods, and their relationships. In a Class Diagram, classes are depicted
as rectangles, with attributes listed above the line and methods below it.
Relationships, like associations, inheritance, and dependencies, are represented by
lines connecting the classes. These diagrams not only aid in system visualization but
also serve as a communication tool among stakeholders and developers, facilitating a
shared understanding of the system's architecture and design decisions throughout the
software development lifecycle.

21
Figure 5.1.1 Class Diagram
As shown in figure 5.1.1 The class diagram outlines a system where users can
manage their accounts, including logging in, registering, updating, and deleting their
information. Users can also interact with the EMI PAY class to confirm transactions
and retrieve payment details, view their passbook entries through the Passbook class,
and generate reports for RD details, EMI details, and passbook entries using the
Report class. Additionally, an Admin class is present with capabilities to add, update,
create, and delete entries, indicating higher-level administrative functions over the
system.

5.1.2 Use Case Diagram


 A Use Case Diagram is a type of Unified Modelling Language (UML) diagram that
illustrates the interactions between actors (users) and a system. It provides a high-
level overview of the system's functionality from the perspective of its users. Use
Case Diagrams are composed of actors, use cases, and relationships between them.
Actors represent entities external to the system, such as users or other

22
systems, while use cases represent the specific functionality or tasks the system
provides to its users.
 Relationships between actors and use cases, such as associations, extend, and
include, depict how actors interact with the system to achieve certain goals. Use Case
Diagrams are valuable for capturing user requirements, clarifying system boundaries,
and facilitating communication between stakeholders and development teams during
the early stages of software development.
 It offers a visual representation of how users (actors) interact with a system to
achieve specific goals. Here's a breakdown of their key elements and how they work
together:
1. Actors:
Represent external entities that interact with the system. These can be:

 Primary Actors: Users with direct interaction with the system (e.g., account holder
in an SRDS).
 Secondary Actors: External systems that interact with the system (e.g., payment
gateway in an SRDS).

2. Use Cases:

 Capture functionalities or tasks offered by the system to actors. These represent a


complete flow of activities initiated by an actor to achieve a specific goal.
 Use cases can be:

– Atomic: Represent a single, well-defined task (e.g., "Deposit Funds" in an SRDS).


– Composite: Encompass a broader set of functionalities that may involve multiple
atomic use cases (e.g., "Manage Recurring Deposit" in an SRDS, which might
include creating, modifying, or terminating a deposit).

3. Relationships:

 Association: The fundamental connection between actors and use cases. It depicts
how an actor interacts with a system to realize a specific use case. The association
can be unidirectional (actor initiates interaction) or bidirectional (interaction flows
between actor and system).
 Extend: Represents an optional variation of an existing use case. This allows for
modelling alternative scenarios that might not be the typical flow but are still
relevant. (e.g., "Deposit Funds" use case can be extended to handle "Deposit Funds
with Insufficient Balance").

23
Figure 5.2.1 Use Case Diagram

As shown in figure 5.2.1 is a use case diagram for a Smart Recurring Deposit
system. Let's break down the elements and explain what each part represents:
Actors

1. Admin: This actor represents the administrative user who has the ability to manage
thesystem and perform administrative functions.
2. User: This actor represents a regular user of the system who interacts with it to
managetheir recurring deposits.

Use Cases

The diagram includes several use cases (functions) that the actors can perform:

24
1. Register: This use case allows a new user to create an account in the system.
2. Login: This use case allows both Admin and User to log into the system.
3. Manage User: This use case is likely specific to the admin, who can manage user
accounts, possibly including creating, updating, and deleting user information.
4. Manage Passbook Entry: This use case allows for the management of passbook
entries, which might include adding, updating, and viewing entries related to
recurring deposits.
5. View RD Details: This use case allows users to view details of their recurring
deposits (RD).
6. Payment: This use case involves making payments related to recurring deposits. It
might involve sub-use cases like:
o UPI: Payment through Unified Payments Interface.
o Net Banking: Payment through internet banking.
7. Add EMI: This use case likely allows the user to add their Equated
Monthly Installment (EMI) for their recurring deposit.
8. Generate Report: This use case allows the generation of reports, which might
include summaries of transactions or account statuses.
9. View/Pay EMI Details: This use case allows users to view and pay their EMI details.
10. Logout: This use case allows users to log out of the system.

Relationships

 The lines connecting the actors (Admin and User) to the use cases indicate which
actor can perform which use case. Both Admin and User can log in and out, make
payments ,view RD details, and manage passbook entries, among other actions.
 Arrows between use cases (e.g., Payment leading to UPI and Net Banking) show
dependencies or inclusions, indicating that the Payment use case includes the ability
to choose a payment method.

Diagram Summary

 Admin: Can manage users, manage passbook entries, generate reports, and perform
all the actions that a regular user can.
 User: Can register, log in, manage their passbook entries, view RD details, make
payments using UPI or Net Banking, add and view/pay EMIs, and log out.

5.1.3 Activity Diagram

 An Activity Diagram, another type of Unified Modelling Language (UML) diagram,


illustrates the flow of activities or processes within a system. Unlike Use Case
Diagrams, which focus on user-system interactions, Activity Diagrams delve into the
internal workings of the system itself.
 Activity Diagrams consist of activities, transitions, decisions, forks, joins, and swim
lanes. Activities represent specific actions or tasks, while transitions denote the flow
of control between activities. Decisions depict branching points in the process, and
forks and joins show parallel activities and synchronization points. Swim lanes group
activities based on the responsible entity or system component. Activity Diagrams
are valuable for modelling workflows, business processes, and system behaviors,
aiding in system analysis, design, and optimization

25
Figure 5.1.3 Activity Diagram
As shown in figure 5.1.3 an activity diagram for a Smart Recurring Deposit (RD)
system. An activity diagram shows the workflow of various activities in the system.
Let's explain each part of the diagram
Main Activities

1. Login: Both users and admins start by logging into the system.

User Flow

 User Registration: New users need to register first.


o Verification: Post registration, user verification is done.
o If verification fails (No), the process ends here.
o If verification is successful (Yes), the user can proceed.
 View RD Account Details: Once logged in, users can view their RD account details.
 View EMI: Users can view their Equated Monthly Instalments (EMI) details.
 Cancel EMI / Confirm EMI: Users have the option to either cancel or confirm
their EMI.
26
– Pay EMI: If the EMI is confirmed, the user proceeds to pay the EMI.
– View Payment Details: After payment, users can view the payment details.

 Logout: The user can log out from the system.

Admin Flow

 Admin Login: Admins also start by logging into the system.


 Verification: Post login, admin verification is done.
o If verification fails (No), the process ends here.
o If verification is successful (Yes), the admin can proceed.
 Manage RD User: Admins can manage RD user accounts.
 Manage Passbook Entry: Admins can manage passbook entries for users.
 Manage Report: Admins can manage and generate reports.
 Logout: The admin can log out from the system.

Diagram Summary

 Left Column (User):

– The user registration and subsequent login process.


– Viewing and managing RD account details and EMI.
– Making payments and viewing payment details.
– Logging out.

 Right Column (Admin):

– Admin login and verification.


– Managing RD users and passbook entries.
– Managing and generating reports.
– Logging out.

This activity diagram clearly shows the workflow for both users and admins,
highlighting the different paths and decisions taken based on verification and user
actions.

5.1.4 Sequence Diagram

 A Sequence Diagram, a type of Unified Modelling Language (UML) diagram,


illustrates the interactions between objects or components within a system over time.
It shows the sequence of messages exchanged between objects, depicting the order of
actions and their timing.
 Sequence Diagrams consist of lifelines, messages, activations, and objects. Lifelines
represent the lifespan of objects, while messages depict the communication between
them. Activations indicate the period during which an object is performing an action,
and objects represent instances of classes or components involved in the interaction.
Sequence Diagrams are valuable for visualizing the dynamic behavior of systems,
clarifying the flow of control between objects, and identifying potential issues or
optimizations in system design.

27
[Link] User Sequence Diagram

A User Sequence Diagram, also known as a User Interaction Diagram, is a type of


diagram used to illustrate the interactions between a user and a system. It represents
the sequence of actions or events that occur as a user interacts with a system to
achieve a particular goal. User Sequence Diagrams typically consist of actors
(representing users or external systems), actions or events performed by the user,
and system responses or outputs.

Figure [Link] User Sequence


Diagram

As shown in figure [Link] A sequence diagram shows the interaction between different entities
(actors, systems, databases) over time, emphasizing the sequence of messages.

Entities

1. Actor (User): The end-user interacting with the system.


2. System: The RD system handling user requests.
3. Database: The backend database storing and retrieving RD details.

Sequence of Interactions
1. Registration:

 User sends a registration request to the System.


 System forwards this request to the Database.
 Database processes the request, gets approved, and responds to the System.
 System confirms successful registration to the User.

28
2. Login:

 User logs in.


 System validates the login by checking with the Database.
 Database confirms the user is valid.
 System sends a successful login message to the User.

3. View/Search RD Packages & RD Details:

 User requests to view or search RD packages and details.


 System sends a request to the Database to fetch RD details.
 Database retrieves RD details and sends them to the System.
 System displays RD details to the User.

4. Select RD Pack:

 User selects an RD package.


 System processes the selection and updates the Database with the selected RD
pack details.
 Database stores the RD pack details and confirms back to the System.

5. Pay EMI:

 User initiates an EMI payment.


 System processes the payment and updates the Database with payment details.
 Database stores the payment details and confirms the payment.
 System notifies the User of a successful EMI payment.

6. Logout:

 User logs out.


 System confirms successful logout to the User.

Diagram Summary

 The sequence diagram clearly delineates the flow of actions between the user, the
RD system, and the database.
 It begins with user registration, followed by login, viewing RD details,
selecting RD package, paying EMI, and finally logging out.
 Each step involves interaction with the database to fetch, store, or confirm
details.
 The arrows indicate the direction of messages, showing a clear flow of
communication.

This sequence diagram effectively illustrates the step-by-step interactions in the


Smart Recurring Deposit system, ensuring that the user actions and system responses
are clearly mapped out.

29
[Link] Admin Sequence Diagram
 An Admin Sequence Diagram, similar to a User Sequence Diagram, illustrates
interactions between an administrator (or administrative user) and a system.
 It depicts the sequence of actions and events that occur as an administrator interacts
with the system to perform administrative tasks or manage system resources. Like
User Sequence Diagrams, Admin Sequence Diagrams typically feature actors
(representing administrators or administrative roles), actions performed by the
administrator, and system responses or outputs

Figure [Link] Admin Sequence Diagram


As shown in figure [Link] Admin Sequence Diagram for a Smart Recurring Deposit
Entities

1. Admin: The administrative user interacting with the system.


2. System: The RD system handling admin requests.
3. Database: The backend database storing and managing RD user and passbook
details.

Sequence of Interactions

1. Admin Login:

30
 Admin sends a login request to the System.
 System forwards this request to the Database for verification.
 Database checks the credentials and confirms the admin's validity.
 System sends a successful login message to the Admin.

2. Manage RD User:

 Admin selects the option to manage RD user accounts.


 System sends a request to the Database to fetch user details.
 Database retrieves the user details and sends them to the System.
 System displays the user details to the Admin.
 Admin can add, update, or delete user information.
 System processes these changes and updates the Database.
 Database confirms the changes to the System.
 System notifies the admin of the successful update.

3. Manage Passbook Entry:

 Admin selects the option to manage passbook entries.


 System sends a request to the Database to fetch passbook entries.
 Database retrieves the entries and sends them to the System.
 System displays the passbook entries to the Admin.
 Admin can add, update, or delete passbook entries.
 System processes these changes and updates the Database.
 Database confirms the changes to the System.
 System notifies the admin of the successful update.

4. Generate Report:

 Admin selects the option to generate a report.


 System processes the request and gathers the necessary data.
 System retrieves the data from the Database.
 Database sends the requested data to the System.
 System generates the report and presents it to the Admin.

5. Logout:

 Admin logs out of the system.


 System confirms successful logout to the Admin.

Diagram Summary

 The admin sequence diagram starts with the admin login process.
 Post login, the admin can manage RD users, manage passbook entries, and
generate reports.
 Each action involves interaction with the database to fetch, update, or store
information.
 The arrows indicate the direction of messages, showing a clear flow of
communication between the admin, the system, and the database.

31
This sequence diagram clearly outlines the workflow for admin activities in the
Smart Recurring Deposit system, highlighting the sequence of interactions and
ensuring that admin actions and system responses are mapped out in a detailed
manner.

5.1.5 DFD
 A Data Flow Diagram (DFD) for a Smart Recurring Deposit System would illustrate
the flow of data between various components such as user inputs, the recurring
deposit processing system, and data storage elements. Key processes like user
registration, deposit scheduling, and interest calculation would be shown, along with
data flows representing user information, deposit details, and transaction records.
 Data stores would include user databases and deposit records, while external entities
could involve users and banks interacting with the system. This DFD provides a clear
visualization of how data moves through the Smart RD System, highlighting key
interactions and data processing steps.

[Link] DFD Level 0


 A Level 0 Data Flow Diagram (DFD) for a Smart Recurring Deposit System provides
a high-level overview of the entire system as a single process.

 It shows the main external entities, such as Users and Banks, interacting with the
system. Users provide inputs such as registration details and recurring deposit
instructions, while Banks interact for transaction processing.

Figure [Link] DFD Level 0


32
As shown in the figure,[Link] the Level 0 Data Flow Diagram (DFD) for a Smart
Recurring Deposit (RD) System provides a high-level overview of the system's
primary processes and interactions. The central process, labelled "RD System,"
interacts with four external entities: User Management, Login Management, System
Management, and Passbook Management.

User Management handles user registration and updates, feeding user data into the
RD System. Login Management manages authentication and access, providing user
credentials to the RD System. System Management oversees system configurations
and operations, interacting with the RD System for updates and maintenance.
Passbook Management deals with recording and viewing transactions, sending and
receiving data from the RD System to ensure accurate passbook entries. The arrows
indicate the flow of data between these entities and the central RD System,
highlighting the system's main functional areas and their interconnections.

Explanati
on:

1. User Management: Manages user information and operations.


2. Login Management: Handles user login processes and credential
verification.
3. Passbook Management: Manages passbook entries and related activities.
4. System Management: Oversees overall system operations and
maintenance.
5. RD System: Central system that interacts with all management processes.

Data
Flow:

 User Management ↔ RD System


 Login Management ↔ RD System
 Passbook Management ↔ RD System
 System Management ↔ RD System

[Link] DFD Level 1


 In a level 1 Data Flow diagram (DFD) for Smart Recurring Deposit (RD) System, the
main process “RD System”, is broken down into its key sub- processes to provide
more detail on the system’s functionality. These sub- processes might include “User
Registration and Management”, "Recurring Deposit Account Management,"
“Transaction Processing,” "Interest Calculation," and "Report Generation.”
 Each of these processes interacts with corresponding data stores such as "User
Database," "RD Accounts Database," and "Transaction Records." External entities
like Users and Banks interact with these sub-processes through data flows, such as
users providing registration details, scheduling deposits, and banks confirming
transactions.
 This detailed view helps in understanding how user inputs are processed into
recurring deposits, how transactions are managed, how interest is calculated, and
how various reports are generated, thus ensuring efficient operation and data
management within the system

33
Figure [Link] DFD Level 1
As shown in figure [Link] level 1 data flow diagram (DFD) depicts a high- level
overview of a smart recurring deposit system. It illustrates the system’s fundamental
processes and how data flows between them.

Explanatio
n

1. User Register: Users register with the system.


2. Login Management: Users log into the system, and their credentials are
verified.
3. Passbook Management: Users manage their passbook entries.
4. RD System: Central system that handles all processes.
5. Generate User Details: The system generates and provides user details.
6. Check Login Credentials: The system checks user login credentials.
7. Manage Passbook Entry: The system manages and records passbook entries.

Data Flow:

 Registration:
o User Register → RD System → Generate User Details.
 Login:
o Login Management → RD System → Check Login Credentials.
 Passbook:
o Passbook Management → RD System → Manage Passbook Entry.

[Link] DFD Level 2


 A level 2 DFD for a smart recurring deposit system would delve deeper into each level
1process. For instance, it might show how User Register captures user details (name,
address, etc.), how Login Management interacts with the Check Login Credentials process
(verifying username and password against database), or how the RD System breaks down
into creating a new deposit (specifying amount, frequency), managing existing deposits
(viewing details, changing deposit amount), and potentially terminating deposits.

34
 This level offers a more granular view of how the system executes specific functions.

Figure [Link] DFD Level 2

As shown in figure [Link] This level 2 DFD zooms in on user management, showing
how admins can add, edit, or remove users, manage user roles and permissions,
generate login reports, while users can log in, potentially reset forgotten passwords,
and the system responds with success/failure messages or password resets.
This Data Flow Diagram (DFD) Level 2 outlines the administrative processes within a system:

1. Admin:

 Logs into the system through the "Login to System" process.


 If the admin forgets their password, they can go through the "Forgot
Password" process. If login fails, it follows the "Login Failed" path.

2. Manage Module:

 Once logged in, the admin accesses the "Manage Module," which is the central hub
for various tasks.

35
3. Tasks within Manage Module:

 Manage User Details: Admin can add, update, or delete user information.
 Manage Login Report: Admin can view and manage login activity
reports.
 Manage Report: Admin can generate and handle various reports.
 Passbook Management: Admin can oversee passbook-related activities.
 Manage Role of User: Admin can assign or change user roles.
 Manage User Permission: Admin can set specific user permissions.

5.2 ER Diagram

 The Entity- Relationship (ER) Diagram outlines the key entities involved in the RD
system, such as Users, Accounts, Deposits, Transactions, and Interest Rates.
 It defines the relationships and cardinalities between these entities, ensuring a clear
understanding of the database structure and interactions.
 The ER diagram acts as the data schema for your smart recurring deposit system. It
outlines the core entities (data objects) and their relationships.
 This structure forms the foundation of your data organization. Depending on the
system's features, additional entities and relationships might be necessary.
 This could include a separate "Account" entity linked to the User for different
account types, or an "Interest Rate" entity linked to the RD to manage various
interest rate options.
 The ER diagram for smart recurring deposit system serves as a roadmap for your data
structure. It defines the essential data elements (entities) and how they interact.
 The key players are Users and Recurring Deposits (RDs). The User entity stores user
information like unique IDs, names, contact details, and login credentials. A single
User can be linked to multiple RDs, allowing them to create various savings plans.
The RD entity, on the other hand, captures details specific to each deposit plan, such
as deposit amount, frequency, start/maturity dates, and interest rate.
 These entities are connected through relationships. A User can have many RDs
associated with them, reflecting their ability to create multiple plans. Conversely, a
single RD can have many Transactions linked to it. Each Transaction represents an
individual deposit made towards a specific RD, essentially tracking the deposit
history.
 This structure forms the core of your data organization. Depending on the system's
features, you might introduce additional entities. For example, a separate" Account"
entity linked to the User could manage different account types, or an "Interest Rate"
entity linked to the RD could manage various interest rate options.

36
Figure 5.2 ER Diagram

As shown in figure 5.2 The ER diagram depicts a smart recurring deposit system
where users can manage their recurring deposits. Users can have multiple deposits
(one-to-many relationship), each with its own unique ID, account ID (linked to the
user’s account), amount, deposit frequency, start date, maturity date, and interest rate.
Transactions link to specific recurring deposits (one-to- many relationship), capturing
individual deposit details like amount, date, and any fees. The system also generates
reports (unclear from the diagram what type) potentially related to deposits or
transactions.

37
Entities and Attributes

1. User:

 User ID: Primary Key


 Username
 Password
 Email
 Phone Number
 Address

2. Admin:

 Admin ID: Primary Key


 Username
 Password
 Email

3. Recurring Deposit

 RDID: Primary Key


 User ID: Foreign Key (references User)
 StartDate
 End Date
 Monthly Instalments
 Interest Rate
 Total Amount

4. Passbook Entry

 Entry ID: Primary Key


 RDID: Foreign Key (references Recurring Deposit)
 Date
 Transaction Type (Credit/Debit)
 Amount

5. Payment

 Payment ID: Primary Key


 RDID: Foreign Key (references Recurring Deposit)
 Payment Date
 Payment Method (UPI, Net Banking, etc.)
 Amount
 Status (Pending, Completed)

6. Report

 Report ID: Primary Key


 Admin ID: Foreign Key (references Admin)

38
 Generated Date
 Content (Summary of transactions, user details, etc.)

Relationships

1. User and Recurring Deposit:

 One-to-Many relationship: A user can have multiple recurring deposits.

2. Recurring Deposit and Passbook Entry:

 One-to-Many relationship: A recurring deposit can have multiple


passbook entries.

3. Recurring Deposit and Payment:

 One-to-Many relationship: A recurring deposit can have multiple payments.

4. Admin and Report:

 One-to-Many relationship: An admin can generate multiple reports.

Figure Summary:
User Entity

 Users have attributes like User ID, Username, Password, Email, Phone
Number, and Address.
 A user can have multiple recurring deposits (One-to-Many relationship).

Admin Entity

 Admins have attributes like Admin ID, Username, Password, and Email.
 An admin can generate multiple reports (One-to-Many relationship).

Recurring Deposit Entity

 Recurring deposits have attributes like RDID, User ID, StartDate, End Date,
Monthly Instalments, Interest Rate, and Total Amount.
 Each recurring deposit is associated with a single user but can have multiple
passbook entries and payments (One-to-Many relationships).

Passbook Entry Entity

 Passbook entries have attributes like Entry ID, RDID, Date, Transaction Type,
and Amount.
 Each passbook entry is linked to a single recurring deposit (Many-to- One
relationship).

39
Payment Entity

 Payments have attributes like Payment ID, RDID, Payment Date, Payment
Method, Amount, and Status.
 Each payment is linked to a single recurring deposit (Many-to-One
relationship).

Report Entity

 Reports have attributes like Report ID, Admin ID, Generated Date, and
Content.
 Each report is linked to a single admin (Many-to-One relationship).

5.3 Methods and Procedures


5.3.1 Methods

1. Requirement Analysis:

 Conducted initial stakeholder meetings to gather and define user roles (Admin, User)
and features (create and manage recurring deposits, view transaction history, admin
monitoring, and management).
 Created detailed functional and non-functional specifications outlining system
architecture and database schema.

2. Project Planning:

 Developed a comprehensive project plan, including timelines, milestones, and


resource allocation.
 Established clear objectives and deliverables for each phase of the project.

3. Development Environment Setup:

 Installed Java Development Kit (JDK) and Android Studio for Android
app development using Java.
 Set up Python and Django framework for the admin panel.
 Configured necessary libraries and dependencies for both frontend and backend
development.

4. Version Control:

 Initialized a Git repository for the project.


 Regularly committed code changes and documented progress to maintain a clear
development history.

5. Backend Development:

 Project Initialization: Created a Django project and configured essential settings.


 Database Design: Designed database models for User, Recurring Depost.

40
 Model Implementation: Implemented Django models and performed migrations
to create database tables.
 Admin Panel Development: Customized the Django admin panel for user and
deposit management, providing data insights and management tools.
 API Development: Created RESTful APIs using Django Rest Framework for user
authentication, deposit creation, transaction history, and admin actions.

6. Frontend Development:

 Project Initialization: Created a new Android project and configured build settings
usingJava in Android Studio.
 UI/UX Design: Designed wireframes and mock-ups, developed XML layouts for
screens like login, deposit management, and transaction history.
 Activity and Fragment Development: Implemented Activities and Fragments
corresponding to the UI designs. Used Recycler View for displaying lists such as
transaction history.
 Networking: Integrated Retrofit library for API calls, handled API responses, and
updated the UI.
 Data Storage: Used SQLite for local data storage and implemented Room
Persistence Library for database operations.
 Authentication: Implemented user authentication using JWT tokens, stored securely
using Shared Preferences.

7. Testing and Debugging:

 Unit Testing: Wrote unit tests for backend and frontend components using JUnit
andpy test.
 Integration Testing: Performed end-to-end testing to ensure seamless integration
between the Android app and the Django backend.
 User Acceptance Testing: Conducted testing with a group of potential users to
gather feedback and make necessary adjustments.

8. Documentation:

 Code Documentation: Added comments and docstrings to the code. Created a


README file with setup instructions and usage details.
 User Guide: Developed a user guide detailing app features and usage instructions,
including support contact information for user assistance.

5.3.2 Procedure

1. Project Initialization:

 Initialized the Django project, configured settings including database connections,


and installed necessary apps.
 Created a new Android project in Android Studio and set up the project structure and
build settings using Java.

41
2. Backend Configuration:

 Configured Django settings, including setting up the MySQL database connection.


 Designed and implemented database models for User, Recurring Deposit, and
Transaction.
 Performed database migrations to create and update tables in MySQL.
 Developed and customized the Django admin panel for managing users and deposits.
 Created RESTful API endpoints for various functionalities using Django Rest
Framework.

3. Frontend Development:

 Designed and implemented UI layouts in XML for login, deposit management,


andt ransaction history screens.
 Developed Activities and Fragments in Java to manage UI components and user
interactions.
 Implemented Recycler View for displaying lists, such as transaction history, in a
scrollable and efficient manner.

4. Local Data Storage:

 Utilized SQLite database for local data storage to ensure app functionality in
offline mode.
 Implemented Room Persistence Library for seamless and efficient database
operations, including CRUD (Create, Read, Update, Delete) functionalities.

5. User Authentication:

 Implemented JWT-based user authentication for secure login and session management.
 Stored JWT tokens securely using Shared Preferences to manage user sessions and
API access.

6. Testing and Debugging:

 Conducted unit testing for individual components using JUnit for Java (Android)
and pytest for Python (Django).
 Performed integration testing to ensure that the Android app and Django
backend workeds eamlessly together.
 Carried out user acceptance testing with a group of potential users to gather
feedback and refined the application based on their input.

7. Final Adjustments and Documentation:

 Made final adjustments based on feedback from user acceptance testing.


 Documented the code thoroughly with comments and docstrings, and created a
comprehensive README file with setup instructions and usage details.
 Developed a user guide detailing the app’s features and usage instructions, and
included support contact information for user assistance.

42
6. Testing
Testing played a crucial role in ensuring the reliability, functionality, and
performance of the Smart Recurring Deposit System. Various testing methodologies,
including technical reviews, test planning, and test case development, were employed
to validate the system’s behavior under different scenarios.

6.1 Formal Technical Reviews

Formal technical reviews were conducted to evaluate the design, code, and
documentation of the Smart Recurring Deposit System. These reviews involved a
comprehensive examination of the system architecture, database schema, code
implementation, and user documentation to identify potential issues, inconsistencies,
and areas for improvement. The feedback obtained from these reviews helped in
refining the system design and ensuring adherence to best practices and coding
standards.

During the technical reviews, multiple aspects of the system were scrutinized, including:

 System Architecture: The overall architecture of the system was evaluated to ensure
scalability, reliability, and maintainability. Any architectural flaws or design
inconsistencies were addressed to enhance the system's robustness.
 Database Schema: The structure of the database schema was analyzed to ensure
efficient data storage and retrieval. Data normalization, indexing strategies, and
relationships between tables were reviewed to optimize database performance.
 Code Implementation: The quality and readability of the codebase were assessed to
identify potential bugs, code smells, and optimization opportunities. Code reviews
helped in improving code maintainability, reducing technical debt, and enhancing
overall system quality.
 User Documentation: The clarity, completeness, and accuracy of user
documentation, including user manuals, help guides, and tutorials, were verified to
ensure users could effectively understand and utilize the system's features. Any
ambiguities or inconsistencies in the documentation were rectified to provide a
seamless user experience.

6.1.1 Fact Finding Techniques

Fact-finding techniques are crucial for understanding and documenting requirements


for any system, including a recurring deposit system. Here are some techniques
specifically tailored for gathering requirements for a recurring deposit system:

 Interviews: Conduct interviews with stakeholders involved in the recurring deposit


process, such as employees, customers, and managers. Ask open-ended questions to
understand their needs, pain points, and expectations from the system.

 Surveys: Design surveys to collect quantitative data from a larger pool of


stakeholders. Use both closed-ended questions (for specific information) and open-
ended questions (for gathering insights and suggestions).

43
 Observation: Observe the current process of handling recurring deposits in the
bank. This can provide valuable insights into the workflow, common issues, and
areas for improvement.

 Documentation Review: Review existing documents related to the recurring deposit


system, such as user manuals, process flowcharts, and regulatory guidelines. This
helps in understanding the current system functionalities and compliance
requirements.

6.2 Test Plan

A detailed test plan was developed to outline the approach, objectives, scope, and
schedule of the testing process. The test plan defined various testing activities,
including functional testing, performance testing, security testing, and usability

testing, along with the roles and responsibilities of the testing team. It also specified
the testing environments, tools, and resources required for executing the test cases
effectively. The test plan served as a roadmap for systematically evaluating the
system's quality and identifying any defects or discrepancies.

The test plan encompassed the following key components:

1. Testing Objectives

 Validate the system's functionality against defined requirements and specifications.


 Identify and eliminate defects in core functionalities and user interface.
 Evaluate system performance under varying load conditions, simulating real-
world usage.
 Assess the system's security posture against potential vulnerabilities and cyberattacks.
 Ensure a user-friendly and intuitive interface for efficient deposit management.

2. Testing Scope

This test plan encompasses the entire SRDS, including:

 User registration, login, and profile management functionalities.


 Recurring deposit creation, modification, and termination processes.
 Automatic deposit scheduling and deduction from linked accounts.
 Interest rate calculation and application to deposits.
 Passbook updates reflecting deposit transactions and account balances.
 Report generation for individual deposits, overall performance, and user activity.
 System security features and access control mechanisms.
 User interface (UI) design, layout, and ease of navigation.

3. Testing Approach

A multi-pronged testing approach will be employed, incorporating different


methodologies:
44
 Black-box testing: Evaluating the system's functionality from a user's
perspective, focusing on inputs, outputs, and behavior.
 White-box testing: Utilizing knowledge of the system's internal structure to test
specific functionalities and code paths.
 Usability testing: Observing user interactions with the system to identify areas
for improvement in UI and user experience (UX).
 Performance testing: Simulating real-world load scenarios to assess system
responsiveness, stability, and scalability.
 Security testing: Conducting penetration testing and vulnerability scans to identify
and mitigate potential security risks.

4. Test Environment

A dedicated testing environment will be established, mirroring the production


environment as closely as possible. This ensures that test results are accurate and
reflect real-world system behavior. The environment will include:

 Hardware infrastructure replicating the target production servers.


 Software configurations mirroring the production environment's operating system
and application versions.
 Network configurations simulating the production environment's network topology
and security settings.

5. Test Schedule
A well-defined timeline will be established, outlining the execution and completion
dates for each testing phase. This ensures efficient resource allocation and timely
delivery of the testing process. The schedule will be:

 Developed in collaboration with project stakeholders.


 Regularly monitored and adjusted as needed throughout the testing process.

6. Roles and Responsibilities


A well-defined team structure will be established, assigning clear roles and
responsibilities:

 Test Lead: Manages the overall testing process, ensures adherence to the test plan,
and reports on testing progress.
 Test Engineers: Design, execute, and document test cases. Identify and report
defects.
 Developers: Address reported defects and provide support during testing.
 Project Manager: Oversees the entire testing process and ensures alignment
with project goals.

7. Risk Management
Potential risks associated with the testing process will be identified and mitigated
proactively. This includes:

 Schedule delays: Implementing contingency plans and buffers within the testing
timeline.
 Resource constraints: Utilizing test automation tools and prioritizing critical test
cases.
45
 Incomplete test coverage: Employing exploratory testing techniques to
identify potential gaps in test cases.
 Unforeseen defects: Maintaining clear communication channels for reporting
and resolving defects promptly.

Overall, the test plan provided a structured and systematic approach to testing,
ensuring that all critical aspects of the system were thoroughly evaluated. By
defining clear objectives, scope, and methodologies, the test plan facilitated
effective resource allocation, risk management, and communication, ultimately
contributing to the delivery of a high-quality system.

6.3 Test Cases

 In the world of software development, ensuring a system functions as intended is


paramount. This is where test cases come into play. They act as the building
blocks for a robust testing strategy, specifically designed to identify any potential
issues within your Smart Recurring Deposit System (SRDS).
 The realm of software development, ensuring that a system operates as intended
is of utmost importance. This is particularly true for financial applications such
as the Smart Recurring Deposit System (SRDS), where accuracy, reliability, and
security are critical. Test cases play a pivotal role in this process, acting as the
building blocks for a comprehensive testing strategy designed to identify and
address potential issues within the SRDS.

Functional Testing

 Functional testing ensures that the Smart Recurring Deposit (RD) application
performs its intended functions correctly. User management is a critical aspect,
where we verify successful user registration with valid information, test user
login with correct credentials, and handle invalid login attempts. Additionally,
the functionality of user profile management, including updating personal details
such as name and contact information, is validated to ensure seamless user
experiences.
 Recurring Deposit (RD) management involves testing the creation of recurring
deposits with various amounts, frequencies (daily, weekly, monthly), and start
dates. We verify that deposits adhere to their schedules, with automatic
deductions occurring on designated days.
 The modification of existing deposits, including changes to the amount and
frequency, is tested, as well as the functionality for terminating recurring deposits
and updating account balances accordingly.
 For interest calculation and application, we test the system’s ability to accurately
calculate interest rates based on deposit amount, frequency, and term, and verify
the timely application of interest to recurring deposits.
 Report generation functionality is tested to ensure the system can produce
detailed reports for individual deposits and overall system performance metrics
such as total deposits and interest earned.

Performance Testing 46
 Performance testing evaluates how the system performs under various
conditions. Load testing simulates high user volumes and concurrent deposit
transactions to assess system responsiveness and stability. This helps identify
the system's performance during peak usage scenarios, ensuring it can handle
the anticipated load. Stress testing pushes the system beyond normal usage
levels to identify breaking points and evaluate its ability to withstand
unexpected surges. This involves testing the system's behavior under extreme
load conditions and its recovery mechanisms, ensuring robustness and
reliability under stress.

Security Testing

 Security testing is crucial to protect user data and ensure the system's resilience
against potential cyber threats. Penetration testing simulates potential
cyberattacks, such as SQL injection and cross-site scripting, to identify and
eliminate vulnerabilities.
 This helps assess the system’s resilience against unauthorized access attempts.
Data security testing involves verifying that user data, including account details
and transaction history, is encrypted and protected both at rest and in transit.
Access control mechanisms are tested to ensure that only authorized users can
access specific functionalities and data, safeguarding sensitive information.

Usability Testing

 Usability testing focuses on evaluating the user interface (UI) and user
experience (UX) to ensure the application is user-friendly and intuitive. UI
testing assesses the clarity and user-friendliness of the system's interface,
ensuring ease of navigation through deposit creation, management, and
reporting functionalities.
 This helps identify any confusing or cluttered UI elements, leading to
improvements. UX testing involves observing user interactions with the system
to identify areas for workflow improvement and overall intuitiveness. It tests
how quickly users can complete tasks like creating deposits or viewing reports,
aiming to enhance the overall user experience by making the application more
efficient and enjoyable to use.

6.1.1 Test Cases for User Module


Table 1. Test Cases for User Module
47
Test Case ID Test Steps Expected Results Actual Results Pass/Fail

TC-001 1. Open the admin [Link] admin login The admin login Pass
panel and navigate to screen is displayed. screen is
the login screen. [Link] is displayed.
2. Enter valid admin successfully logged Admin is
username and in. successfully
password. logged in.
TC-002 1. Navigate to the 1. The user 1. The user Pass
user management management section management
section. is displayed section is
2. View the list 2. The list of users displayed.
of users and and their details are 2. The user
their details. displayed. management
section is
displayed.
TC-003 [Link] to the [Link] passbook 1. The passbook Pass
passbook entry entry management entry
management section. section is displayed. management
[Link] the list of [Link] list of section is
passbook entries. passbook entries is displayed.
displayed. [Link] list of
passbook entries
is displayed.
TC-004 1. Navigate to the 1. The EMI 1. The EMI Pass
EMI management management section management
section. is displayed. section is
2. Add a new EMI [Link] EMI entry displayed.
entry with is added 2. New EMI
relevant details. successfully. entry is added
successfully.
TC-005 1. Navigate to 1. The report 1. The report Pass
the report generation section generation
generation is displayed. section is
section. 2. Report displayed.
2. Select the parameters are 2. Report
parameters for selected. parameters are
generating the report. selected.

48
6.1.2 Test Cases for Admin Module
Table 2. Test Cases for Admin Module
Test
Case Test Steps Expected Results Actual Results Pass/Fail
ID
1. Open the app
and navigate to
the registration User is successfully User is successfully
TC-
screen. registered and directed to registered and prompted Pass
006
2. Enter valid the login screen. to log in.
registration
details.
1. Open the app
and navigate to
User is successfully User is redirected to the
TC- the login screen.
logged in and directed to dashboard screen after Pass
007 2. Enter valid
the dashboard screen. successful login.
username and
password.
1. Navigate to the
All previous recurring
dashboard screen. Previous recurring
deposits are listed with
TC- 2. Select the deposits are accurately
relevant details such as Pass
008 option to view listed with relevant
amount, frequency,
recurring deposit details.
duration, and status.
details.
1. Navigate to the
Payment for the recurring Payment for the recurring
payment screen.
deposit is successfully deposit is successfully
TC- 2. Select the
processed, and processed, and user Pass
009 recurring deposit
confirmation message is receives a confirmation
to make a
displayed. message.
payment.
1. Navigate to the
payment history
Details of previous Details of previous
screen.
TC- payments, including EMI payments, including EMI
2. View the Pass
010 amount, date, and status, amount, date, and status,
details of
are displayed accurately. are accurately displayed.
previous
payments.
1. Navigate to the
User is logged out and User is successfully
TC- logout option.
redirected to the login logged out and taken to Pass
011 2. Confirm logout
screen. the login screen.
action.

49
6.4 Test results

The test results from both the admin and user functionalities were thoroughly
examined through a series of predefined test cases. Each test case was designed to
validate a specific functionality of the system, ensuring its robustness and
reliability.

Admin Functionality
The admin functionalities were evaluated through five distinct test cases, each
focusing on a critical aspect of the admin panel.

1. Admin Login: The test case (TC-001) confirmed that the admin login process is
functioning correctly. The admin can access the login screen and successfully log in
using valid credentials. The actual results matched the expected results, indicating a
successful login process.
2. Manage User: In test case TC-002, the admin's ability to manage user accounts was
verified. The test steps included navigating to the user management section and
viewing the list of users. The expected outcome was achieved, with the user
management section displaying all user details accurately. This ensures that admins
can effectively oversee and modify user information.
3. Manage Passbook Entry: Test case TC-003 focused on the admin’s capability to
manage passbook entries. The admin could navigate to the passbook entry
management section and view the list of entries as expected. The functionality to
add, edit, or delete entries worked seamlessly, confirming the system's reliability in
maintaining passbook records.
4. Add EMI: Through test case TC-004, the process of adding EMI entries was tested.
The admin could access the EMI management section and add new entries with
relevant details. The successful addition of new EMI entries verified the system's
efficiency in handling EMI-related data.
5. Generate Report: The report generation functionality was tested in TC-005. The
admin could navigate to the report generation section, select parameters, and
generate reports. The actual results aligned with the expected outcomes,
demonstrating the system's capability to generate accurate and detailed reports
based on selected parameters.

User Functionality
The user functionalities were validated through six test cases, each aimed at
ensuring the user’s interactions with the system are smooth and effective.

1. User Registration: Test case TC-006 confirmed that the user registration process
works as intended. Users could enter their details and register successfully, being
directed to the login screen upon completion. This functionality is crucial for
onboarding new users efficiently.
2. User Login: In TC-007, the login process for users was tested. Users could log in
with valid credentials and were directed to the dashboard. This indicates that the
system handles user authentication reliably.
3. View Recurring Deposit Details: The ability to view recurring deposit details was
verified in TC-008. Users could access the dashboard and see all previous
50
recurring

51
deposits with complete and accurate details. This ensures users have clear visibility
into their deposit activities.
4. Make Recurring Deposit Payment: Test case TC-009 tested the payment process
for recurring deposits. Users could navigate to the payment screen, select a deposit,
and complete the payment successfully. The system provided a confirmation
message, indicating a smooth and reliable payment process.
5. View Payment History: In TC-010, the functionality to view payment history was
assessed. Users could see details of previous payments, including EMI amounts,
dates, and statuses. Accurate display of payment history ensures transparency and
helps users keep track of their transactions.
6. User Logout: The logout functionality was tested in TC-011. Users could log out
successfully and were redirected to the login screen, confirming that the system
securely ends user sessions and prevents unauthorized access.

52
7. Result

Figure 1. User Login

53
Figure.2 User Registration (1)

54
Figure 3. User Registration (2)

55
Figure.4: RD User Dashboard

56
Figure 5. Payment

57
Figure 6. Admin Login

58
Figure 7. Admin Dashboard

59
Figure 8 RD Passbook Entry

60
Figure.9 RD User

61
Figure 10. Sign in

62
Figure 11. Dashboard

63
Figure 12. RD Passbook

64
Figure 13. RD Passbook Print

65
Figure 14: RD Passbook PDF

66
Figure 15. RD PDF

67
Figure 16. RD CSV File

68
Figure 17: RD User Detail (1)

69
Figure 18. RD User Detail (2)

70
Figure 19 RD User Update

71
Figure 20. Admin

72
Figure 21. User Registration

73
Figure 22. Passbook Entry

74
Figure 23. Agent

75
Conclusion
RD is an entirely risk-free investment whose guaranteed returns make it suitable for
fulfilling both short and long-term goals. Hence, RD may be just the right investment
option if you require financial assistance to meet the below-mentioned requirements. A
Recurring Deposit (RD) is an entirely risk-free investment whose guaranteed returns
make it suitable for fulfilling both short and long-term goals. RD may be just the right
investment option if you require financial assistance to meet various needs, such as the
cost of higher education for your kids, expenses on home renovation and furnishing,
vacationing abroad, and expenses incurred on marriages. Additionally, an RD
inculcates a savings discipline as it requires you to make fixed monthly investments,
which is especially beneficial for salaried individuals who have multiple financial
goals to fulfil with a fixed income. RD interest is calculated at a fixed rate throughout
its tenure. So, if a bank offers an interest rate of 6.50% on your RD, the interest
calculation will be done at this rate irrespective of changing market trends or changes
in your bank’s policies regarding the interest rate offered. Therefore, you do not have
to worry about any RD interest rate reductions.
Usually, all banks offer the facility of opening an RD account and provide the option
for premature withdrawal of the same. If you decide to withdraw before maturity, the
interest payable will be calculated based on the tenure completed, and banks will
charge a penalty for such withdrawal. Thus, before you invest, choose a bank that
offers a high rate of interest and charges a lesser amount of penalty on premature
withdrawal. The interest income from a Recurring Deposit is taxable, with TDS
deducted by the bank at the rate of 10% if the income exceeds Rs. 10,000. However, if
your annual income is below the minimum exemption limit, you can save on this tax
by providing form 15G to your bank. For senior citizens, form 15H is applicable

Future Enhancement
With flexi recurring deposit, the depositor gets the flexibility to select any amount of
deposit as per his convenience and pay the instalments at any time of the month. The
minimum deposit amount for most of the flexi recurring deposits is Rs.100 and this
can be increased as per the depositor’s convenience.

76
Bibliography
 Book
Rigers, R., Lombardo, J., Mednieks, Z., & Meke, B.
Android Application Programming with the Google
SDK. O’Reilly Media, Inc., 2009.
 Journal / Magazine /
Periodical Belenky, A. S., &
Larson, R. C. "To Queue or not
to Queue?" OR/MS, 27, 30-34.
 Paper
Baja, D., Yadav, A., Jain, B., Sharma, D., Tewan, D., Savens, D., & Ray, P.
"Android Based Nutritional Intake Tracking Application for Handheld Systems."
In 2017 International Conference on Computing, Communication and
Networking Technologies (ICCCNT), pp. 1-7.
IEEE, 2017.
 Journal / Magazine / Periodical
Gropengießer, F., & Sattler, K. U.
"Database Backend as a Service: Automatic Generation, Deployment, and
Management of Database Backends for Mobile Applications."
Datenbank-Spektrum, 14(2), 85-95.
 Book
Zapata, B. C.
Android Studio Application
Development. Packt Publishing Ltd.,
2013.
 Unpublished Material
Android Studio.
The Official IDE for Android.
Retrieved from [Link] 2016.

Websites
 [Link]
 [Link]
 [Link]

77
Acknowledgement
I would like to express my sincere gratitude to our Project Guide, Prof. A. L. Rane
from the Department of Masters of Computer Application, for her invaluable support
and guidance throughout the development of the "Smart Recurring Deposit" project.
Her expertise, encouragement, and unwavering dedication have been instrumental in
the successful completion of this project.

Prof. A. L. Rane has been an inspiring mentor, always available to provide insightful
advice and direction. She has demonstrated exceptional patience and understanding,
guiding us through the complexities of our project and emphasizing the importance of
perseverance in achieving our goals. Her mentorship has not only enriched my
understanding of the subject matter but has also instilled in us the confidence to tackle
challenges and pursue innovative ideas.

We are profoundly grateful for Prof. A. L. Rane's unwavering support,


encouragement, and guidance throughout this project. Her mentorship has been
invaluable, and we sincerely appreciate her contributions to our academic journey.
Thank you, Prof. A. L. Rane, for your unwavering dedication and commitment to our
success. We are truly indebted to you for your invaluable support and guidance.

78
Report
Documentation
Report Code: MCA-Project 2023-2024 Report Number:

Report Title: Smart Recurring Deposit


Address (Details):
Department of MCA, K. K. Wagh Institute of Engineering Education & Research,
Hirabai Haridas Vidyanagari, Amrutdham, Nashik
Pin – 422 003, M.S. INDIA.
Author: Vaibhav Madhukar More
Address: At. Post Talegaon Vani Tal. Dindori Dist.
Nashik E-mail: morevaibhav521@[Link]
Roll: 39
Cell No: 7768812199

Year: 2023 – 2024


Program: MCA

Keyword’s: Financial security, Fixed monthly deposits, Interest rate, Premature


withdrawals, Recurring Deposit (RD), Savings habit

Type Report Guides Complete Name: Total


of Report Checked By: Checked Copies
Report: Date: Prof. A. L. Rane
FINAL 1+1

Abstract: A Recurring Deposit (RD) is a term-deposit offered by banks, helping


individuals save regularly with fixed monthly deposits, a stable interest rate, and flexible
terms from 6 months to 10 years. With minimum deposits starting at Rs. 1000, RDs are
accessible to a broad population, and although premature withdrawals may incur
penalties, they offer added flexibility. The fixed interest rate and regular deposit
structure provide stability and predictability, while the flexible tenure options align
investments with financial goals.

The study highlights that RDs are a popular and reliable savings tool in India, promoting
financial security and disciplined savings habits. By enabling consistent saving and
offering a safe way to build a substantial corpus, RDs help individuals achieve specific
financial goals such as funding education, planning weddings, or making significant
purchases, thereby fostering financial stability and security.

You might also like