Optimizing NoSQL Performance Through Observability
Business Requirements Document ppt.pptx
1. Business Requirements Document
Version/s: 1.1
Date: 26th August 2023
SectionA
Author:
Full Name Designation
Gaurav Bagul IT Business Analyst
Section B
Purpose of project:
The purpose of the project is to integrate the payment method of stripe application pricing
module against TE application for all categories of users. The integration method should not
affect the US tax norms.
Overview of project:
The TE application provides the tournament organizers to manage the tournaments and
to create the tournaments.
The TE provides platform to event organizers to purchase the passes, tickets,
participation fees and merchandises for the participants.
TE charges the convenience fee/platform usage fee from the tournament organizers.
This application has android version, iOS version and web version.
The event organizers can reset and lock the whole tournament.
The event organizers can shuffle players, insert new players and swap players.
The register user can send his request of participation in the tournament which will go
the event/tournament organizers for approval.
Apremium subscription badge is provided to the casual and pro subscribers.
The notification of tournament reminder is integrated on all devices of the any category
user.
2. Section C
Business Problem:
The payment module is not made and integrated with stripe to carry out work smoothly in TE
for the users.
Current State:
The casual subscription on the TE platform for the event organizers are $2.99 for a
month and $29.99 for a year.
The pro subscription on the TE platform for the event organizers are $7.99 for a month
and $79.99 for a year.
Business Rules:
The ethics related to the integration model of stripe with TE should work under US tax
norms.
The application should not disclose the account info, card details to any user.
The user should be ale to do the payment easily.
The user should be able to download the pdf of his/her invoice in minimum time.
Business Opportunities:
The TE has opportunity to scale the application for pricing module for the end users so
that maximum users can use TE.
Promotions carried out with stripe.
Increase of business network.
Increase of profit after US tax.
Increase of customer/user base.
3. Section D
Assumptions:
The event organizers and the participants belong to the US countries.
There will be no third-party application other than stripe in integration with the TE
application.
All the event organizers and the participants have their accounts in one bank.
The bank is not multi-national.
All the payment cards will be Master cards.
No currency conversion charges are present.
All clients will be from US and stays in US only.
We are developing only for PC web application and not for iOS or android ones.
Acommon tax is taken by US government from any US region. So, we can assume the
tax of the California region which is 10.25%.
Financial Understandings:
As our product does not fall under multi-product category TE is not eligible to take the
multiproduct discount.
Users will have to pay sales tax that is 10.25% on the total subscription amount. This
amount applies on both the monthly and yearly subscriptions.
TE will have to pay 0 tax as it is a digital product and as we have also already assumed
that all over US will follow only one tax i.e., California tax system.
As we have assumed that the all the users are from US only and have master cards only;
3% master card charges get applied to users by stripe.
Participants will have to pay billing charges that is 0.5% by stripe on their subscriptions,
tickets/participation fees, passes and merchandise.
Participants will have to pay invoice charges that is 0.4% by stripe on their
subscriptions, tickets/participation fees, passes and merchandise.
TE will have to payAPI tax per transaction by stripe that is 0.5%.
TE will have to pay 2.9% + cents 0.30 of the total amount to stripe per transaction.
Stripe don’t charge for setup and they don’t take monthly charges or hidden fees.
4. Section E
Flow diagram:
Stakeholder/s of project:
Sr. No. Full Name Designation Responsibilities
1 IT Team
BA, developers,
managers and testers
To analyse, develop and test the
module
2 End User of TE Any profession To use the application
3 PO of TE Product owner To ensure TE is satisfying users
4 PO of Stripe Product owner
To give support for integration
with stripe
5
Stakeholder of
Stripe Any profession To give support for scalability
6 Stakeholder of TE Any profession To give support for scalability
5. Section F
Technology Requirements:
Figma
HTML
CSS
JavaScript (jQuery)
TypeScript (Angular Js)
Amazon s3 (terminal interface)
Cloudflare
MySQL
Note: We can use MongoDB + Heroku + Node Js web app server + Express Js instead of
MySQLand Cloudflare.As the TE application is using Cloudflare we used MySQL.
Data table Requirements:
In MySQL following tables should be made and should be linked into the pricing module:
Table 1:
Unique Identification Number
Name of Event Organizer/s
Subscription Type
Payment Date
Payment type
Subscription Invoice Number
Ticket Bill Number
Amount Paid for Tournament
Amount collected from participants
Table 2:
Unique Identification Number
Name of Participant
Subscription Type
Payment Date
Payment type
Subscription Invoice Number
Ticket Bill Number
Table 3:
Unique Identification Number
Tournament Name
Tournament Creation Date
Tournament Creation Time
Number of Participants in the Tournament
Amount collected from participants
Table 4:
Unique Identification Number
Winner Name
Tournament Name
Number of Participants in the Tournament
6. Subscription Type
Table 5:
Unique Identification Number
Loser Name
Tournament Name
Number of Participants in the Tournament
Subscription Type
Table 6:
Unique Identification Number
Participant Name
Merchandise description
Ticket Number
Tournament Name
Module Requirement:
There will be only one module which needs to be integrated i.e., Pricing Module. The pricing
module will have further sub modules/sections:
Invoices.
Tickets/passes purchased.
Participation fee.
Payment information.
The pricing module will be integrated with the MySQL database and stripeAPI’s.
Section G
Functional Requirements:
TheAPI’s listed above should be workable and must be tested twice before showing
demo to the business user.
The system should be able to generate an invoice for any purchase made in TE.
The system should not give run time error while doing transactions/purchases.
The server should be able to handle multiple payments happening at a time.
The server should be available 24/7 to handle payment requests.
The font and the format should not break anywhere.
Non-Functional Requirements:
The UI interface information should be understandable by anyone.
The invoice should be generated within 3 seconds.
The invoice should contain the UIN number of the user and name of the tournament.
7. Section H
Risks:
API failures
Run time errors
System Hacking
Note: It is recommended to do VAPT before releasing this version.
Dependencies:
The business user has not told the format that should be kept if the user downloads the
invoice e.g.: .pdf or .csv.
The business user has not mentioned if the details of the invoices should be shared
with the same user in email or not.
The business user has not mentioned any auth requirement as this module has social
media accounts integrated with it and will contain payment details along with his/her
card details.
The business user has not mentioned any admin roles and responsibilities to handle
the payment data and also in case if the payment fails.
Section I
Timeline/s of Project:
UI for pricing module: 3 Days
UI confirmation from business user: 2 days
Development: 3 days
Data base creation: 2 days
Data integration byAPI’s: 3 days
Data validation: 2 days
Data validation with business user: 2 days
Testing: 3 days
UA
T round 1: 2 days
VAPT: 3 days
UA
T round 2: 3 days
Total 28 days
Section J
Approval/Sign off:
Reviewer Name
Reviewer
Designation Approver Name
Approver
Designation