Requirements and project management
Contents 1.1 Background 4 1.2 Business Opportunity/Problem 4 1.3 Business Objectives (BO) 5 BO-1: 5 BO-2: 5 BO-3 5 2. Business Context 5 2.1 Stakeholder Profiles 5 2.2 User Classes and Characteristics 10 2.3 Use Cases (UC) 11 UC1 11 3 Functional Requirements 18 3.1 User Requirements 18 UR1 18 UR2 18 UR3 18 UR4 18 UR5 18 UR6 18 3.2 System Requirements 18 SR1 18 SR1 18 SR3 18 SR4 18 SR5 18 SR6 18 3.3 Non Functional Requirements 19 NFR1 19 NFR2 19 NFR3 18 NFR4 19 4. Business Rules (If you have any) 19 Glossary: 20 Index: 21
1.1 Background
In the contemporary world, new users and Existing users for them intraday trading become more complicated because of new instruments arrived in markets like option writing, hedging, and creating options strategies, and deploying them without losing investment.
“Simtrade” This Trading simulation is used for new traders to improve their trading skills and the same system can be used for Creating and back-testing new strategies.
1.2 Business Opportunity/Problem
Developing the charting system is the most dominant, crucial, and complex problem in this project because we need to create complex UI and UX to display responsive candles and dynamically changing prices and at the same time. we should create various indicators for scanning the markets and scaling
prices using markers drawing tools.
Subproblems: -
1. Finding a server which is suitable for installing angular
2. Installing angular in the costly server
3. Installing JSON module in angular
4. Purchase API from API providers like data master, Samco, etc.
5. Integrate API with system
6. create charting system UI & UX
FISHBONE DIAGRAM:
1.3 Business Objectives (BO)
Describe the business goals you will meet and supply the metric for how it will be measured and verified.
BO-1:
Business Objectives of this project is to create a place where new and experienced traders can practice and sharpen their skills in trading
BO-2:
New traders can practice in the live market without placing real money as this helps new traders not to lose money.
BO-3:
Experienced traders can deploy complex strategies and test how they are performing in real time simulation, and they get market metrics.
2. Business Context
2.1 Stakeholder Profiles
|
Stakeholder |
Major value |
Attitudes |
Major interests |
Constraints if any |
|
Management |
Administrator’s |
Very Strong commitment |
Every decision play crucial roll we team needs to be clear in decision making |
Pressure from external investors |
|
Consumers |
Services buyer |
Strong influence towards products. |
No authority to change to the algorithm but can customize indicators and chart related instruments.
|
Clients’ frequent loss of money due to direct trading |
|
HRM |
Hire required talent |
Strong commitment |
Influenced newly hired employees |
Finding required talent in short period. |
|
External Investors |
Adding additional investment over budget. |
Very Strong commitment |
Make decision clearly and go with the plan. |
Increasing in budget due to new employees and high-level servers and software purchases. |
|
Designers |
Making user interface, user experience for charting. |
Strong commitments
|
Influence developers to make easy to use user experience. |
Getting and integration of API in our system |
|
Financial computer engineers |
Financial computer engineers make various complex indicator and multi time frame candles to adapt to different market conditions. |
Strong commitments |
These indicators and metric are complex we need to be authoritative.
|
Various indictor s and multi time frame candles |
|
Developers |
Developers are responsible of making back end integrations of API and whole website development |
Strong commitments |
Developer’s work is to develop and integrate various technologies, so we need to influence developers to work with other teams.
|
Integrating API and developing whole website. |
|
Element |
Description |
|
The problem of |
Creating a charting system. |
|
Affects... |
This problem affects multiple stakeholders’ investors, administration, designers, and developers. |
|
And results in... |
The Charting system is complex. User interface and User experience this results in increased cost of creation to investors and increased time to developers and designers. |
|
Benefits of a solution ... |
After completion of this work the company can launch the product into markets and this will be the key driver for sales as this will be unique and very useful to customers. |
|
Element |
Description |
|
The problem of |
Creating candle sticks on charts |
|
Affects... |
This problem affects stakeholders like financial engineers |
|
And results in... |
The major problem occurs in this process mathematical calculation that is to be precise. |
|
Benefits of a solution ... |
After completion of the candle sticks, we can integrate it to the charting system and we can see the price of the stock in candle forms. |
|
Element |
Description |
|
The problem of |
Creating multi timeframe charting system. |
|
Affects... |
This problem affects both financial engineers and designers. |
|
And results in... |
Multi time frame module is a time-consuming module stakeholder needs to be patient as this contains 600 + sub modules. |
|
Benefits of a solution ... |
After completion of this work, we can produce multiple time frame charts and see stocks data in different time frames. . |
|
Element |
Description |
|
The problem of |
Integrating API with system |
|
Affects... |
This problem affects multiple stakeholders’ investors, administration, designers, and developers. |
|
And results in... |
Purchasing API from API providers like maestro data, Samco API etc. we need promising data providers without interruption. |
|
Benefits of a solution ... |
After integrating API we get data for all stocks that we list in our system. |
|
Element |
Description |
|
The problem of |
Installing json and angular
|
|
Affects... |
This problem affects multiple stakeholders’ investors and developers. |
|
And results in... |
Json is used for integrating API and angular is a powerful technology with require high end server to use. |
|
Benefits of a solution ... |
After completion of this work the company can launch the product into markets and this will be the key driver for sales as this will be unique and very useful to customers. |
|
Element |
Description |
|
The problem of |
Designing user interface and user experience |
|
Affects... |
This problem affects designers and developers. |
|
And results in... |
User interface and user experience better user experience where client can understand and feel comfortable while using. |
|
Benefits of a solution ... |
After completion of this work the company can launch the product into markets and this will be the key driver for sales as this will be unique and very useful to customers. |
2.2 User Classes and Characteristics
|
User class |
Description |
|
Management
|
Management department is responsible for managing employees, generating revenue for the company via sales, controlling conflicts in business settings, taking critical decisions, drafting long term goals, distributing salaries and other expenses, solving consumer complaints. |
|
HRM HUMAN RESOURSE DEPARTMENT |
HRM is responsible for hiring in demand skilled work force which is demanded by manager or team leader, solving internal issues between employees and higher management, verifying employees work, educational and criminal background. Creating terms and conditions, and contacts for employees. |
|
Developers |
Project managers direct both junior senior developers and shares workload. Senior developers handle crucial tasks and complex developments for the project and creates required architecture. Junior developers works on creating initial steps, solving small bugs, and testing the beta version for the project in a sequence manner given by senior developers. |
|
Financial computer engineers |
Financial computer engineers responsible for creating tools which are mathematical in nature such as technical indicators, Fibonacci sequence tools, multiple timeframe charts. |
|
Consumers
|
Consumers use our website to practice trading and find where they are lagging. So that they can understand why they are losing money in real markets. Experienced traders check their strategies to test success ratio of the strategy. |
|
External Investors |
This investors help funding the company when there is a requirement of huge budget allocations which is used in purchasing required equipment and hiring more skilled workforce. |
2.3 Use Cases (UC)
The various user classes found the following primary actors and use cases:
UC1
|
Primary actor |
Recruiter |
||
|
ID and Name: |
UC-1: recruiting the employees |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Recruiter |
employees |
|
|
Description: |
HRM is responsible for hiring in demand skilled work force which is demanded by manager or team leader, solving internal issues between employees and higher management, verifying employees work, educational and criminal background. Creating terms and conditions, and contacts for employees. |
||
|
Trigger: |
Hire a suitable employee for the project. |
||
|
Preconditions: |
PRE 1: Log in to job portal. PRE 2: Select job categories and then Select the department or technology. PRE 3: Add job description and fill the salary expected block. PRE 4: Run ads on the job portal to target specific talent. |
||
|
Postconditions: |
POST 1: Collect all the data from the portal. POST 2: Short list the candidates POST 3: Scheduling an interview for short listed candidates. |
||
|
Normal Flow: |
1. Recruiters gather required information from higher management like Required talent and required experience. 2.Discuss budget and number of candidates for the project. 3. Login to job portals like LinkedIn, indeed, monster. 4.Select categories and departments. 5.Post the job requirement and job description. 6.Run job ads to reach target candidates and talent effectively. |
||
|
Alternative Flows: If any |
None |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
none |
UC2
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-2: Update the position of the candidate to the employee |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Recruitment unit |
|
|
|
Description: |
This use case is used to update candidate status and offer additional information for those who have passed the exam and then add their financial details to payroll. |
||
|
Trigger: |
The candidate has accepted the offer. |
||
|
Preconditions: |
PRE 1: User authentication has been completed. |
||
|
Postconditions: |
POST 1: The candidate's complete information has been included. |
||
|
Normal Flow: |
1.From the main page, the user chooses Edit candidate. 2. The system shows all the data including background verified data. 3. The data is altered by the user to specific job title. 4. The user chooses the option to update. 5. The entry is verified by the system. 6. The entry is updated by the system as a full-time employee. |
||
|
Alternative Flows: If any |
1. The entry is invalid. 2. The system shows an error message and indicates the source of the issue. 3. The user corrects the data entered. 4.The procedure continues at step 6 of the standard flow. |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
None |
UC3
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-3: creating profile |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Consumer |
|
|
|
Description: |
Create profile use case provides Customer ability to open an account on his name by providing information and become a registered user by using login id and password. |
||
|
Trigger: |
Creating a profile to register as a user. |
||
|
Preconditions: |
PRE 1: Consumer open website URL PRE 2: Clicks on sign up option PRE 3: Provides required information |
||
|
Postconditions: |
POST 1: The data entered by the user is saved in the user account. The confirmation email is sent to the specified email address. POST 2: The user provided incorrect information or elected to cancel the account creation request. No account will be created in either situation. |
||
|
Normal Flow: |
3.0 This use case begins when the User uses the system feature that allows him/her to establish an account by inputting information from the User's account. 1. The User enters the relevant User Account information values and requests that the system store them in the data base. 2. The system checks the User Account information entered. 3. The User Account information values are saved in the User's account. The system alerts the User that the account has been established. |
||
|
Alternative Flows: If any |
3.1 User enters invalid details 1.The system indicates which entered data was invalid and suggests alternatives for submitting valid data to the User. 2. The system prompts the user to input the incorrect information again. 3. The user inputs the information again, and the system validates it again. 4. The User Account Information is saved if correct information is supplied. |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
BR2 |
UC4
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-4: Practice trading |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Consumer |
|
|
|
Description: |
Customers utilize our platform to practice trading and identify areas where they are falling short. So, they can grasp why they are losing money in the real world. Experienced traders test their techniques to see how successful they are. |
||
|
Trigger: |
Trading simulation. |
||
|
Preconditions: |
PRE 1: User authentication has been completed. |
||
|
Postconditions: |
POST 1: The user selects the required exchanges. |
||
|
Normal Flow: |
4.0 Customer logs into the portal using user ID and password 1. Select the required exchanges from the drop-box 2. User has 3 options to select MCX, NSE, BSE 2.1.MCX, 2.2.NSE, 2.3.BSE 3. The user have an option to watch tutorial videos or guides. 4. Then user adds funds into the account. 5. The user start trading in a artificial environment. |
||
|
Alternative Flows: If any |
None |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
BR2 |
UC5
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-5: Obtaining the Dynamic stock data |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Software team |
|
|
|
Description: |
In this use case the developer team creates API which are responsible for pulling the dynamic stock data from exchanges. |
||
|
Trigger: |
Pulling the data from exchanges |
||
|
Preconditions: |
PRE 1: Get Secured API keys from the data source |
||
|
Postconditions: |
POST 1: Users have to test the API keys in the sandbox to see whether user getting data or not. |
||
|
Normal Flow: |
1. Checking the capabilities of the machine user working on. 2. Installing the JSON program into system. 3. Create API addresses to pull data from data source to required destination. 4. User assigns API data to stock. |
||
|
Alternative Flows: If any |
None |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
None |
UC6
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-6: Understanding the market conditions |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Financial computer engineer |
|
|
|
Description: |
The user creates financial technical indicators to gauge the market condition and to understand current market situations and short-term goals. |
||
|
Trigger: |
Design technical indicators |
||
|
Preconditions: |
PRE 1: User must understand the timing of the market. PRE 2: Create multiple timeframe charts |
||
|
Postconditions: |
POST 1: User combines both timings and multiple time frame charts to create layers. |
||
|
Normal Flow: |
1. The user segregates layers 2. Then insert moving average to the graphs which are customizable by the end user. 3. User creates scaling tools to mark high and lows of the market. |
||
|
Alternative Flows: If any |
The user has an option to purchase the templates. |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
None |
UC7
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-7: Making money |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Management |
sales department |
consumers |
|
Description: |
This user case is responsible for generating revenue for the company via sales as this is the only revenue generating department to fuel the company and make profits. |
||
|
Trigger: |
Generating profits via sales |
||
|
Preconditions: |
PRE 1: Training sales team to be professional PRE 2: Users hold commands about the products which they are going to sell. |
||
|
Postconditions: |
None |
||
|
Normal Flow: |
1. The user must gather the customer lead data from marketing team. 2. Then segregate the data according to location, age, gender. 3. User run analysis on historical data and segregate the current data so that company can increase revenue by selling products at higher premium at certain locations. |
||
|
Alternative Flows: If any |
None |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
BR 2 |
UC8
|
Primary actor |
Use cases |
||
|
ID and Name: |
UC-8: Providing solution for customers |
||
|
Created By: |
Pranay reddy |
Date Created: |
11-25-2021 |
|
Primary Actor: |
Management |
Consumer |
|
|
Description: |
In this use case solving the client problem while using the website by this user case customer can solve any kind of portal issues. |
||
|
Trigger: |
Providing solutions |
||
|
Preconditions: |
PRE 1: The user should check the validity of customers subscription. |
||
|
Postconditions: |
POST 1: The user identifies the problem of the customer and then transfer the case to concern department. |
||
|
Normal Flow: |
1. The user receives the complaints from the customers via chats support, emails and Telephonic. 2. The user must understand the problem of customers and solve if it a basic problem or common misunderstanding. 3. If the problem is more complex and requires the subject matter expert the support should transferred to concern department. |
||
|
Alternative Flows: If any |
None |
||
|
Exceptions: if any |
None |
||
|
Business Rules: if any |
BR 2 |
3 Functional Requirements
3.1 User Requirements
UR1:
Client shall setup an account in website using government issued identity than client subscribe to premium plan using credit or debit card.
UR2:
Client may select one exchange from the list of three after selecting this may take 30 seconds to process and connect to the exchange server.
UR3
Client may search for Required stock ticker in the search box this action send the ticker request to exchange.
UR4
Client shall add the ticker to the watchlist then user can buy or sell stocks at their will. Vague language
UR5
The consumer should SHALL be able to see dynamic price changes in the ticker price field.
UR6
The application shall be able to support many users at the same time.
UR7
Now client can SHALL be able to deploy their strategies to the market.
3.2 System Requirements
SR1:
Developer shall create a Application programming interface (API) for the purpose of connecting stock exchange to end users via live data feed using pull and push methodologies by JSON application.
SR2:
Financial engineer shall create technical tools using mathematical data this will be used by the end user to analyze the market. To create technical tools engineer shall use high configured machine greater than intel i7 for better performance use intel i9 latest generation.
SR3
hiring manager shall use to post job positions using company secured web browser this helps company to avoid phishing and leak of internal data. To run company secured web browser the hardware requirements need to be meet with no lesser than intel i5 data lake or greater.
SR4
Client requires Microsoft pc or iMac with browser and internet connection greater than 10 mbps to run simtrade simulation.
SR5
Support team shall use secured line connection with a pin code authentication for connecting to client machine to solve client problem.
SR6
Developer shall use single passcode to authenticate client exchange data change, delivery trade exits. Which is associated with employee id.
3.3 Non-Functional Requirements
NFR1:
This trading system can easily scalable Vague language How would you measure this? we can increase the workload we can process huge number of data feeds from different exchanges as we are working on Indian market, we can include NSE (national stock exchange), BSE (Bombay stock exchange), MCX (Multi Commodity Exchange).
NFR2
client creates and deploys strategies while initiating trades this opens a analytical dashboard which shows the success rate of the particular trades.
NFR3
Client may go back in time to find event happened and retrieve the data from that that particular event this help client to understand what happened on that day.
NFR4
Client may deploy multiple trades at a time user may select trades in derivatives options and futures and stocks this helps user to hedge the trade.
4. Business Rules (If you have any)
BR1
All the payment process and refunds are the decisions taken by the manager and sales directors as the premium price is greater than 1400 usd.
BR2
If client want to trade in international stock trades client must pay the extra addon price upon taking the premium plan.
Glossary:
Intraday: it is a mode of trading where trades are closed same day.
Trading: buying and selling stocks, derivatives, currencies in short term .
Simulation: An artificial environment replicating real time situation and scenarios.
Charting system: To show case charts and graphs where this ca be moved front and back in time to analyze.
Indicators: These are the tools helpful in analyzing the stocks.
Candle sticks: This is a form of charting system.
Multi timeframe: This is also type of charting system where user can view charts in different time frames.
API: An application programming interface (API) connects a data provider and an end-user over the internet.
Index:
API 3
Business Opportunity 4
candle sticks 6
charting system 3
Consumers 4
Developing 3
Dynamic stock 14
HRM 4
intraday 3
Management 4
multi timeframe 6
practice 4
real money 4
revenue 15
Simtrade 3
simulation 3
Technical indicators 15
Trading 3
UI and UX 3
Use Cases (UC) 10