StockEye

Requirements

Version: 1.4
Release Date: Feburary 12, 2021
Last Updated: March 25, 2021
Authors: Michael Okenye, Jeff Kolnick, Anshul Khatri, Perikles Tsikrikis
Editors: Campbell Leckie, Nicolas Mills, Ruth Schmidt, Roy Ceyleon

Table of Contents

(1) Introduction

The following provides an overview of the StockEye SRS.

(1.1) Project Summary

StockEye is a web application that aggregates and analyses tweets related to the stock market from the popular social media platform Twitter, and offers information regarding the public sentiments of stocks and volume metrics to its users. StockEye seeks to serve its audience in multiple ways. For one, Twitter is a valuable source of data, as it currently acts as a hub for global public opinion. Due to the impact that public opinion has on the market, the analysis of Twitter data presented by StockEye enables its users to make more informed investment decisions. Additionally, StockEye will save users time, as they will no longer be required to research and analyse the Twitter sentiments themselves.

(1.2) Purpose

This document covers all the software requirements and features for the StockEye application, and is primarily intended for the client (David Brown), the project team, and other interested parties, both present and future. It will ensure that all necessary components are included and serve as a basis for the project.

(1.3) Scope

This project will produce the web application StockEye. This product will assess the intent of tweets as well as tweet volume regarding stocks chosen by its users and compile and present them in an easily comprehensible format. It will thus give an immediate overview of their Watchlist and allow for quick decision making as the market may dictate without having to scour Twitter for the relevant information.

(1.4) Definitions & Abbreviations

Term Definition
API Application Program Interface
GUI Graphical User Interface
IaaS Infrastructure as a Service
Popular Stocks Trending stocks with either positive or negative sentiments.
SRS StockEye Software Requirements Specification document
The Client David Brown
Tweet A post made on the Twitter social network.
Tweet Volume The amount of tweets made within a specific time frame.
Tweepy An open source Python package which allows access to the Twitter’s API with Python.
Twitter Sentiment The attitude, thought or feeling indicated by a tweet.
User The person, or persons, who operate or interact directly with the application.
Watchlist List of stock monitored by a user for potential investment opportunities.
Tester A member of the Quality Assurance team for a specific deliverable.

(1.5) References

A complete list of all documents and other sources of information referenced.

(1.6) Overview

This document contains all functional requirements for the StockEye web application. It details how the product will operate, its limitations and projected user base. It first establishes the context in which StockEye is being formulated and subsequently identifies the essential features for it to be a success.

(2) Overall Description

The following provides insight into the StockEye product perspective, its functions, the characteristics of the user base, constraints associated with development, along with assumptions and dependencies which provide information about application compatibility.

(2.1) Product Perspective

StockEye builds directly off of Twitter, utilizing the Tweepy API. Through this it will be able to import tweets and assemble it into data to help inform its users of potential rises and falls in the stocks they are most interested in.

(2.2) Product Functions

(2.3) User Characteristics

(2.4) Constraints

(2.5) Assumptions and Dependencies

(3) Specific Requirements

The following contains all of the software requirements, along with pertinent and sufficient details to enable the design, implementation, and assessment of the StockEye application.

(3) External Interfaces

(3.2) Functions

(3.3) Database

(3.4) Performance Requirements

(3.5) Software System Attributes

(3.5.1) Security
  • Watchlist logged and encrypted.
  • Sessions timeout after five minutes of inactivity.
  • User account passwords must consist of:
    • At least 1 uppercase character
    • At least 1 numeric character
    • At least 1 symbolic character
    • At least 8 characters in total
  • User account passwords are hashed and stored in the database.
  • User account passwords can only be reset by two-factor authentication.
(3.5.2) Portability
  • StockEye is accessible through any web browser.
  • No aspect of StockEye is host-dependent.
(3.5.3) Availability and Reliability
  • StockEye is always available and accessible.
(3.5.4) Interoperability
  • Stockeye will be accessible and fully functional through popular web browsers such as Microsoft Edge, Google Chrome, and Mozilla Firefox at launch. As development progresses, StockEye will strive to support all existing browsers.

(3.6) Actors and Use Cases

The user interacting with StockEye through their web-browser is the sole actor; however, this actor can either be an unregistered or registered user. The following UML Use Case diagram illustrates how the user will interact with the use cases.

User Case
Actors
Actor Characteristics and Properties
Unregistered User
  • Users that have not logged-in to StockEye with a user account.
  • Able to interact with basic use cases.
  • Unable to access Watchlist and other user account required use cases.
Registered User
  • Users that have logged-in to StockEye with a user account.
  • Inherits all use cases accessible to Unregistered Users.
  • Additional use cases accessible.
Use Cases
Use Case Description
Create Account Register a user account.
Log-in Log-in using registered user account.
View Stock List View the complete list of Stocks available.
Filter Stocks Filter the Stock List using selected criteria.
Filter by Stock Name A criteria used to filter the Stock List.
Filter by Sentiment A criteria used to filter the Stock List.
Filter by Stock Price A criteria used to filter the Stock List.
View Trending Stock View the currently trending stocks on Twitter from the Stock List.
View Stock Sentiments View the sentiment of a selected stock.
View Relevant Tweets View popular tweets contributing to the sentiment of a selected stock.
Recover Password Password recovery, in case account password is forgotten.
Change Password The changing of current account password.
View/Manage Watchlist View or manage user account Watchlist.
Add to Watchlist Add a stock to the user account Watchlist.
Remove from Watchlist Remove a stock from the user account Watchlist.
Set Up Notifications Set up a notifications either by email or text regarding sentiment fluctuations of selected stocks.

(4) Change History

The SRS is a living document, changing as the project progresses. While Google Docs is used to track the editing history, the SRS includes references to major changes of the document within itself.

Date Description of Change(s) Contributor(s)
February 10, 2021 Initial draft of Requirements completed
  • Michael Okenye
  • Jeff Kolnick
  • Anshul Khatri
  • Perikles Tsikrikis
February 12, 2021 Final draft of Requirements completed
  • Michael Okenye
  • Jeff Kolnick
  • Anshul Khatri
  • Perikles Tsikrikis
  • Campbell Leckie
  • Nicolas Mills
  • Ruth Schmidt
  • Roy Ceyleon
February 14, 2021 User Case diagram update
  • Roy Ceyleon
February 22, 2021 Updated Actors and Use Cases
  • Roy Ceyleon
March 25, 2021 Updated Definitions & Abbreviations
  • Roy Ceyleon

Return to Menu Return to Top