You are on page 1of 29

A Software Engineering Mini Project

Report
On
ONLINE TRADING SYSTEM

SUBMITTED BY

Mr. M Ganesh Regd.No:18B91A05D5


Miss. Md Sabiha Regd.No:18B91A05D6
Mr. M D V Sai Ram Regd.No:18B91A05D7
Mr. M Pavan Varma Regd.No:18B91A05D8

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING


S.R.K.R ENGINEERING COLLEGE (A) CHINA AMIRAM,
BHIMAVARAM (2020-2021)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
S.R.K.R ENGINEERING COLLEGE (A)

CERTIFICATE

This is to certify that the project entitled “Online Trading System” is the bonafide
work by Mr. M Ganesh, Miss. Md Sabiha, Mr. M D V Sai Ram and Mr. M Pavan
Varma with Regd. No: 18B91A05D5, Regd. No: 18B91A05D6, Regd. No:
18B91A05D7 and Regd. No: 18B91A05D8 who carried out the work in Object Oriented
Software Engineering Lab during the year 2020-2021.

Lecturer-in-charge:

Dr. V Chandra Sekhar Mr. Sri V Dilip Kumar


Assistant Professor, Assistant Professor,
Department of CSE, Department of CSE,
SRKR Engineering College, SRKR Engineering College,
Bhimavaram. Bhimavaram.
ACKNOWLEDGEMENT

I take immense pleasure in thanking Dr. M Jagapathi Raju , beloved principal of


S.R.K.R Engineering College, Bhimavaram and Dr.V.Chandra Shekar, esteemed Head of
the Department (C.S.E), for having permitted me to carry out this software engineering mini
project work.
I wish to express my deep sense of gratitude especially to my project Guide Dr
M Srihari Varma, for his able guidance and useful suggestions, which helped
me in completing the project work, in time.
Needless to mention that Mr.Sri.V Dilip Kumar, Assistant Professor, for his timely

guidance in the conduct of my project work. Besides, this project made me realized
the value of working together as a team and as a new experience in working
environment, which challenges me every minute.
Finally, yet importantly, I would like to express my heart full thanks to my
beloved parents for their blessings, my friends/classmates for their help and wishes
for the successful completion of this project.

M Sai Ram

(18B91A05D7)
TABLE OF CONTENTS

S.No CONTENTS Page No


1. ABSTRACT 1
2. SOFTWARE REQUIREMENT SPECIFICATION 2
2.1. Introduction 2
2.2. Existing Systems 2
2.3. Proposed System 3
2.3.1 Overview 3
2.3.2. Functional Requirements Description. 3
2.3.3. Non-Functional Requirements Description. 3
2.4 Pseudo Requirements 4
2.5. Use Case Description. 4
3. UML DESIGN 6
3.1. Use Case Diagram 7
3.2. Class Diagram 11
3.3. Sequence Diagram 13
3.4. Collaboration Diagram 15
3.5. State Chart Diagram 16
3.6. Activity Diagram 18
4. SYSTEM DESIGN DOCUMENT 20
4.1. Introduction 20
4.2. Current Software Architecture 21
4.3. Proposed Software Architecture 21
4.4. Subsystem Services 22
List of Figures
Figure
S.No Name of Figure no Page no

1 Use Case Diagram 3.1.7 10

2 Class Diagram 3.2.3 12

3 Sequence Diagram for Students viewing their results 3.3.5 14

6 Collaboration Diagram for Students viewing their 3.4 15


results

8 State chart diagram 3.5.1 17

9 Activity Diagram 3.6 24


List of Abbreviations
HTTP : Hypertext Transfer Protocol.
JDBC : Java Database Connectivity.
HTML : Hypertext Markup Language.
JSP : Java Server Pages.
MAC : Media Access Control
1. ABSTRACT

Problem statement:
For any busy person having no time in dealing shares through manually can buy or sell
their shares through internet providing better feasibility. This is known as Online Trading System.
Online Trading System made it easier to trade in the stock market as now people can trade sitting at
home. This Online Trading System provides a better solution for the person who wants to sell their
shares directly without the third person’s interruption. Manual work and time is reduced and need not
to use any paper work.
“Online Trading System” is a web-based application developed in Windows platform.
There are several functionalities for this project, likely registration page which includes Name, mobile
number, date of birth, addition of bank account, Pan card and some other personal details. The second
functionality of this project is the login page which we have to use after registration. This
functionality includes username and the password. The next functionality is the business page, i.e
Trading page(main page). It displays the companies and their share values that the buyer have to buy
and the price he had to pay. The next functionality is a portfolio that displays the shares we bought.
The last functionality is funds. It shows the balance amount and profits.
There will be only three modules in this system. They are Admin, viewer and trader.
Admin uploads the details of the companies who are willing to sell their shares. Admin can access
user’s password and account details too. The second module is viewer, Some users just visit and go
through the details. The one who buys the shares comes under the Trader. He is the one who buys the
shares.
1
2. SOFTWARE REQUIREMENT SPECIFICATION

2.1 Introduction
2.1.1 Overview

A Web application acts as an Online trading system through which people can deal with stocks
directly without the involvement of the third person. Due to this, a lot of manual work will gets
reduced and makes the work easy and elegant. Apart from that, cost of the shares will gets
decreased as there is no involvement of third person. One can trade by selling or buying the
shares. After that, users can view their available funds and watchlist in which users can view
the stock they have bought or sold.
2.1.2 Purpose

The purpose of developing this project is to develop an online trading system which will
provide ample opportunities for the people who can’t afford much money. By using this
platform registered user(trader) will be able to choose their set of preferences and also view the
result after the trading has been completed. This is also helpful for the users to view the
complete process from purchasing the stock to selling the stock.
2.1.3 Scope

Project aims to develop a web site such that everyone who interested in trading can experience
the process without moving from the present position. In this portal, after logging in as user,
every student can have their preference sheet, in which trader can select his preferences and
can shortlist them. After that, he can buy or sell the shares according to his financial situation.
Only, admin can manage the details.

2.2 Existing Systems


There are many online trading systems in the market like upstox. But they give access to the
third party people by keeping the premium versions. B u t i n t h i s s y s t e m t h e r e w i l l b
enopremiumsystems.Sothat,everythingwillbeunderthecontrol
oftheadmin.

2
2.3 Proposed System
2.3.1 Overview

Online trading involves the trading of securities through an online platform. Online trading portals
facilitate the trading of various financial instruments such as equities, mutual funds, and
commodities. Angel One offers Angel Speed Pro – an online trading platform that helps investors and
traders to buy/sell stocks and other financial instruments.

2.3.2 Functional Requirements

Functional requirements for the Online trading system have been developed to make sure that
the functionalities and functional aspects of the system are met such that both buyers and
sellers get benefitted.

Login
1. System will allow the user to login in one way as trader.
2. System will verify the username and passcode.
3. System will not allow user to login with invalid username.
4. System will be able to remember username and passcode.

Registration or create account.


1.System will allow users to create account.

Browsing and database search


1. System will allow users to accept their preferences into the database.
2. System shall display the result based on the login id.
3. System will also allow the users to see how many people have purchased the
certain stock.

Result
1. System will allow the users to view the content even though they are not trading.
2. System will allow the users to set their preference.
3. System will recommend some stocks to users and asks them to purchase.

2.3.3 Non-Functional Requirements

Non-functional requirements are the conditions or constraints under which the system should
provide its services to registered users. Some of them are:

3
2.3.3.1 Performance

The responsiveness of the website shall be high, and the website shall behave as per the
registered user action. The registered user shall be acknowledged in the form of visual
changesor feedback onthe site to enhance the interaction. The response time and throughput
time on the site shall be minimal. Consistency on the website shall be maintained across all the
web pages.

2.3.3.2 Reliability
The website shall always provide the registered users with valid information.

2.3.3.3 Cost

The cost of the product development and maintenance is minimum.

2.3.3.4 Security Issues

Security measurements ensure that the software is protected from unauthorized access to the
system and its stored data. It considers different levels of authorization and authentication
across different registered users’ roles. For instance, data privacy is a security characteristic
that describes who can create, see, copy, change, or delete information. Security also includes
protection against viruses and malware attacks.

2.4 Pseudo requirements


2.4.1 Software requirements

1. Browser – Chrome or Mozilla Firefox

2. Html, CSS, Java Script, PHP

2.4.2 Hardware requirements

1. Processor - Intel core i3 or i5

2. RAM - 3GB OR ABOVE

3. Hard Disk - 256GB OR ABOVE

2.5 Use Case Description


A use case is a methodology used in system analysis to identify, clarify, and organize system
requirements. The use case is made up of a set of possible sequences of interactions between
systems and users in a particular environment and related to a particular goal. It consists of a

4
group of elements (for example, classes and interfaces) that can be used together in a way that
will have an effect larger than the sum of the separate elements combined. The use case should
contain all system activities that have significance to the users. A use case can be thought of as a
collection of possible scenarios related to a particular goal, indeed, the use case and goal are
sometimes considered to be synonymous.

Use case name : Main use case


Participating actors : Trader, manager
Entry conditions : Trader and user enter their details .
Flow of events : Users will select/edit the preferences and also view the results.
Exit condition : The system stores the information in the database and respond
with users accordingly.
Special requirements : The response should be obtained within 30sec.

5
3. UML Diagrams

The Unified Modeling Language is a general purpose visual modeling language that is used to
specify, visualize, construct, and document the artifacts of a software system. It captures
decisions and understanding about systems that must be constructed. It is used to understand,
design, browse, configure, maintain, and control information about such systems. The Unified
Modeling Language is very important parts of developing object oriented software and the
software development process. The Unified Modeling Language uses mostly graphical notations
to express the design of software projects. Using the Unified Modeling Language helps project
teams communicate, explore potential designs, and validate the architectural design of the
software. The primary goals in the design of the Unified Modeling Language are:
• Provide users with a ready-to-use, expressive visual modeling language so they
can develop and exchange meaningful models.
• Provide extensibility and specialization mechanisms to extend the core concepts. •
Be independent of particular programming languages and development processes.
• Provide a formal basis for understanding the modeling language.
• Encourage the growth of the object oriented tools market.
• Support higher-level development concepts such as collaborations, frameworks,
patterns, and components.
Each Unified Modeling Language diagram is designed to let developers and customers view
a software system from a different perspective and in varying degrees of abstraction. UML
diagrams commonly created in visual modeling tools include.
1. Use Case Diagram
2. Class Diagram
3. Sequence Diagram
4. Collaboration Diagram
5. State Chart Diagram
6. Activity Diagram

6
3.1 Use Case Diagrams

3.1.1Identification of Actors:

Actors represent system users. They help delimit the system and give a clearer picture of what
the system should do. It is important to note that an actor interacts with, but has no control over
the use cases.

• An actor is someone or something that:

• Interacts with or uses the system.

• Provides input to and receives information from the system.

• Is external to the system and has no control over the use

cases. An actor can be represented as shown below:

1. A class rectangle with the label <<actor>>

<<actor>>

Trader

<<actor>>

The stick figure with the name of the actor below.

7
Manager Trader

Actors identified are:

1. Manager.

2. Trader.

3. Viewer.

3.1.2 Identification of Use cases:

In its simplest form, a use case can be described as a specific way of using the system from a
user’s (actors) perspective.

A more detailed description might characterize a use case as:

• A pattern of behavior the system exhibits.


• A sequence of related transactions performed by an actor in the system.
• Delivering something of value to the actor.

Use cases provide a means to:

• Capture system requirements.


• Communicate with the end users and domain experts.
• Test the system.

Use cases are the best discovered by examining the actors and defining what the actor will be do
with the system. Since all the needs of a system typically cannot be covered in one use case, it is
usual to have a collection of use case. Together this use case collection specifies all the ways of
using the system.

3.1.3 Constructions of Use case diagrams:

Use-case diagrams graphically depict the system behavior (use cases).These diagram’s present a

8
high level view of how the system is used as viewed from an outsider’s(actor’s) perspective.

A use-case diagram can contain:

• Actors (“things” outside the system)


• Use cases (system boundaries identifying what the system should do).
• Interactions or relationships between actors and use cases in the System include
the associations, dependencies, and generalizations.

3.1.4 Uses Association:

The uses association occurs when we are describing our use-cases and notice that some of them
have sub flows in common. To avoid describing a sub flow more than once in several use-cases,
you can extract the common sub flow and make it a use-case of its own.

3.1.5 Extends Association:

An Extends association is a stereotyped association that specifies how the functionality of one of
use

case can be inserted into the functionality of another use-case.

3.1.6 Includes Association:

An Includes association is a stereotyped association that connects a base use case to an inclusion
use case.

9
Fig 3.1.7: Use case Diagram for Online Trading System

10
3.2 CLASS DIAGRAM:

Object model describes the structure of the system in terms of objects, attributes, associations,
and operations. During requirements and analysis the object model starts as the analysis object
model and describes the application concepts relevant to the system.

3.2.1 Identification of Attributes of each class:

Guide lines for identifying attributes of classes are as follows:

• Attributes usually correspond to nouns followed by prepositional phrases.


• Attributes also may correspond to adjectives or adverbs.
• Keep the class simple State only enough attributes to define the object state.
• Attributes are less likely to be fully described in the problem statement.
• Omit derived attributes.
• Do not carry discovery attributes to excess.

3.2.2 Identification of Relationships of each class:

Association: This relationship represents a physical or conceptual connection between two or


more objects.

11
Class Diagram:

Fig 3.2.3: Class Diagram for Online Trading System.

12
3.3 SEQUENCE DIAGRAM:
The dynamic model represented in UML with interaction diagrams, state chart diagrams,
and activity diagrams, describes the internal behavior of the system.

3.3.1 Construction of Sequence Diagrams:

A Sequence diagram is a graphical view of a scenario that shows object interaction in a time-based
sequence what happens first, what happens next. Sequence diagrams establish the roles of objects
and help provide essential information to determine class responsibilities and interfaces.

The following tools located on the sequence diagram toolbox which enable to model sequence
diagrams.

3.3.2 Message Icons:

A message icon represents the communication between objects indicating that an action
will follow. The message icon is a horizontal, solid arrow connecting two life lines together.

3.3.3 Focus of Control:

Focus of Control (FOC) is an advanced notational technique that enhances sequence diagrams.
It shows the period of time during which an object is performing an action, either directly or
through an underlying procedure.

3.3.4 Message to Self:

Message to self is a tool that sends a message from one object back to the same object. It
does not involve other objects because the message returns to the same object. The sender of
a message is the same as the receiver.

Note: A note captures the assumptions and decisions applied during analysis and design.
Notes may contain any information, including plain text, fragments of code, or references to
other document.

Note Anchor: A note anchor connects a note to the element that it affects.

13
Sequence Diagram:

Fig 3.3: Sequence diagram for buyer purchasing the stock

14
3.4 COLLABORATION DIAGRAM:

Fig 3.4: Collaboration Diagram for Online Trading System.

3.4.1 Differences between sequence and collaboration diagram:

• Sequence diagrams show time-based object interactions diagrams show how


objects associate with each other
• Sequence diagrams are easier to read.
• Collaboration diagrams use the layout to indicate how objects are statistically connected. •
The Create Collaboration Diagram Command creates a collaboration diagram from
information contained in the sequence diagram. The Create Sequence Diagram Command creates
a sequence diagram from information contained in the interactions collaboration diagram.
• Sequence diagrams are closely related to collaboration diagrams, and both are
alternate representations of an interaction.

15
3.5 STATE CHART DIAGRAM:

State chart diagrams model the dynamic behaviour of individual classes or any other kind of
object. They show the sequences of states that an object goes through the events that cause a
transition from one state to another and the actions that result from a state change. State chart
diagrams are closely related to activity diagrams. The main difference between the two diagrams
is state chart diagrams are state centric, while activity diagrams are activity centric. A state chart
diagrams are activity centric. A state chart diagram is typically used to model the discrete stages
of an object’s lifetime, where as an activity diagram is better suited to model the sequence of
activities in a process. Each state represents a named condition during the life of an object
during which it satisfies some conditions or waits for an event. State chart diagram typically
contains one start state and end states. Transition connect the various states the diagram.

The following tools are used on the state chart diagram toolbox to model state chart diagrams:

Decisions: A decision represents a specific location on state chart diagram where the work flow
may branch based upon guard conditions.

Synchronization: Synchronizations visually define forks and joins representing parallel work
flow.

Forks and Joins: A fork construct is used to model a single flow of control that divides into
two or more separate, but simultaneous flows. A join consists of two of more flows of control
that unite into single flows of control that unite into single flow of control.

States: A state represents a condition or situation during the life of an object during which it
satisfies some conditions or waits for some event.

Transitions: A state transition indicates that an object in the source state will perform certain
specified actions and enter the destination state when a specified event occurs or when
certain conditions are satisfied.

Start states: A start state (also called an “initial state”) explicitly shows the beginning of a
work flow.

End States: An end state represents a final state or terminal state.

16
State Chart Diagram:

Fig 3.5.1: State Chart Diagram for buying The stocks by the buyer.

17
3.6 ACTIVITY DIAGRAM:

Activity diagrams provide a way to model the workflow of a business process. An activity
diagram is typically used for modeling the sequence of workflows. A software company
could use activity diagrams to model a software development process.

The following tools are used on the activity diagram toolbox to model activity diagrams:

Decisions: A decision represents a specific location on activity diagram where the workflow
may branch based upon guard conditions.

Synchronizations: Synchronizations visually define forks and joins representing parallel


workflow.

Forks and Joins: A fork construct is used to model a single flow of control that divides into two
or more separate, but simultaneous flows. A join consists of two or more flows of control that
unite into a single flow of control.

States: A state represents a condition or situation during the life of an object during which
it satisfies some condition or waits for some event.

Transitions: A state transition indicates that an object in the source state will perform certain
specified actions and enter the destination state when a specified event occurs or when
certain conditions are satisfied.

Start states: A start state (also called “initial state”) explicitly shows the beginning of
a workflow.

End States: An end state represents a final state or terminal state.

Swim lane: A unique activity diagram feature that defines who or what is responsible
for carrying out the activity or state

18
Activity Diagram:

Fig 3.6.1: Activity Diagram for buyer for purchasing the stocks.

19
4. SYSTEM DESIGN DOCUMENT
4.1 Introduction
4.1.1 Purpose
The purpose of developing this project is to develop an online trading system which will
provide ample opportunities for the people who can’t afford much money. By using this
platform registered user(trader) will be able to choose their set of preferences and also view
the result after the trading has been completed. This is also helpful for the users to view the
complete process from purchasing the stock to selling the stock.
4.1.2 Design Goals
Design goals originate from the non-functional requirements specified during requirements
elicitation and from technical and management goals specified by the project.
Response Time: The details is posted in website, or any group announces officially.
Throughput: Ability to accomplish the designed tasks within the given period.
Memory: System requires 1GB RAM and 120GB hard disk space.
Robustness: System can survive from invalid user input.
Reliability: System will model the specified and observed behavior without any difference.
Availability: System is available for all time (24 X 7) to accomplish any task provided if
there is an internet connection and server is available.
Fault tolerance: System can operate in erroneous conditions unless they are more.
Security: System can withstand malicious attacks such as viruses, malwares etc.
Extensibility: It is easy to add the functionality or new class to our system.
Modifiability: It is easy to change the existing functionality as per requirement in our
system.
Portability: It is easy to port the system to different platforms i.e., it is easy to change the
frontend and the backend platforms.
Readability: It is easy to understand the coding of the system. It is user friendly system.
Utility: System supports the work of the user very well.
Usability: User with basic knowledge can use the system.

4.1.3 Definitions, Acronyms and Abbreviations


Admin: Administrator is a person who maintains the application, develops the software and
provide logins to users.
20
Counsellor: Counsellor is the person who assigns college and course to each student according to
their preferences.
Students: Students can login to website using the credentials sent to them through email.

College: College Management have their own login to view the admitted candidates in their
college after the counselling period.
ROSE: IBM Rational Software provides a design tool called ROSE which is a modelling
tool.
JSP : A Java server page , used to create dynamic web content.
HTML: Hypertext Mark-up Language to create static web content.
CSS: Cascading Style Sheet.
XAMPP: Server used for connection of database to the website.

4.1.4 References
Object Oriented Software Engineering, Conquering Complex and changing systems by
Bernd Bruegge & Allen H. Dutoit.
4.1.5 Overview
By using Online Counselling System, it will be easy for students to select their college
preferences in the website itself and view their results in the portal itself after the
counselling. Students can also view and edit their preferences in the allocated time of
counselling, last set of preferences will be considered for results. There will be an additional
feature in this system such that the college management can also login in to this website, and
see how many students got placed in their particular college
4.2 Current software architecture
There are several software architectures for this purpose, but they do not provide information
to colleges regarding students placed but our proposed system will provide those details. It
will provide results with in short span
4.3 Proposed software architecture
4.3.1 Overview
The proposed software architecture is client-server architecture. The proposed system
overcomes the problem by providing the services online. A website is designed for this
purpose. A Web application in which students can select colleges in which they want to
get admitted according to their preferences and with in a short span they can get to know
in which they got placed.

21
Subsystem Decomposition:
Subsystem decomposition is usually done basing on the functional requirement by keeping
functionally related objects. This is the main part of the system design. There is one
subsystem identified for this current system.
Detail Entry Subsystem:

It enables counsellor to store information about students, colleges and their admissions.

22

You might also like