StockEye

Software Project Management Plan

Version: 1.3
Release Date: February 5, 2021
Last Updated: April 6, 2021
Authors: Campbell Leckie, Roy Ceyleon, Tyler Price, Jeff Kolnick
Editors: Yasmine Ali, Ruth Schmidt, Anshul Khatri, Brayden Mckay, Syed Ahmed, Mohsin Malik

Table of Contents

(1) Overview

This overview provides background information and a brief description of the project, the client deliverables, the project milestones, and expected document changes.

(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 to its users. StockEye seeks to serve its audience in multiple ways. For one, Twitter is a valuable source of data due to the impact that public opinion has on the market, enabling users to make more informed investment decisions. Additionally, this platform will save users time, as they will no longer be required to research and analyse the Twitter sentiments themselves.

(1.1.1) Project Deliverables

The following are the list of deliverables to be completed, along with their respective deadlines. The Adjusted Deadline is an internal due date set to ensure that a deliverable is tested, approved, and ready to be presented, prior to the actual due date of the respective deliverable.

Deliverable Deadline Adjusted Deadline Testing Deadline
Specifications Document January 15, 2021 January 14, 2021 January 13, 2021
SPMP February 5, 2021 February 4, 2021 February 3, 2021
Requirements Document February 12, 2021 February 11, 2021 February 10, 2021
Analysis Document March 5, 2021 March 4, 2021 March 3, 2021
Design Document March 26, 2021 March 24, 2021 March 23, 2021
Implementation April 17, 2021 April 16, 2021 April 15, 2021
(1.1.2) Assumptions and Constraints
The assumptions of this project are:
  • Deliverables will be completed by several team members; this includes writers and editors.
  • Deliverables will be reviewed by the entire team, following approval by the quality assurance team assigned to the respective deliverable.
The constraints of this project are:
  • Time.
  • Inexperience and unfamiliarity with the prerequisite technologies demanded by the objectives of the application.
  • Limited communication capability due to COVID-19 pandemic restrictions.
  • Zero budget, mandating the use of strictly free tools and infrastructure.

(1.2) Evolution of the SPMP

As the project progresses certain sections of the SPMP document are expected to be updated. These sections include: All modifications to the SPMP are to be recorded under the “Change History” heading. Each entry must include a brief description detailing the revision, a timestamp, and the group member who authored it.

(2) Definitions

The definitions of all terms and acronyms required to properly understand the SPMP.

(3) Reference Material

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

(4) Project Organization

This section describes the project’s organizational structure, and the distributed roles and responsibilities.

(4.1) Roles and Responsibilities

The deliverables and the group members designated responsible:

Deliverable Chief Contributors Testers
Specifications Document Yasmine Ali
  • Yasmine Ali
  • Ruth Schmidt
  • Tyler Price
  • Syed Ahmed
  • Campbell Leckie
  • Roy Ceyleon
  • Mohsin Malik
SPMP Campbell Leckie
  • Campbell Leckie
  • Tyler Price
  • Nicolas Mills
  • Roy Ceyleon
  • Jeff Kolnick
  • Yasmine Ali
  • Ruth Schmidt
  • Anshul Khatri
  • Brayden Mckay
  • Syed Ahmed
Requirements Document Anshul Khatri
  • Anshul Khatri
  • Jeff Kolnick
  • Michael Okenye
  • Perikles Tsikrikis
  • Mohsin Malik
  • Campbell Leckie
  • Ruth Schmidt
  • Nicolas Mills
  • Roy Ceyleon
Analysis Document Nicolas Mills
  • Nicolas Mills
  • Syed Ahmed
  • Perikles Tsikrikis
  • Roy Ceyleon
  • Michael Okenye
  • Anshul Khatri
  • Jeff Kolnick
  • Yasmine Ali
  • Ruth Schmidt
  • Brayden Mckay
Design Document Leron Bergelson
  • Leron Bergelson
  • Brayden Mckay
  • Campbell Leckie
  • Yasmine Ali
  • Anshul Khatri
  • Michael Okenye
  • Ruth Schmidt
  • Perikles Tsikrikis
  • Mohsin Malik
  • Syed Ahmed
  • Roy Ceyleon
Implementation Front End Ruth Schmidt
  • Brayden Mckay
  • Michael Okenye
  • Nicolas Mills
  • Roy Ceyleon
  • Ruth Schmidt
  • Syed Ahmed
  • Tyler Price
  • Yasmine Ali
Implementation Back End Leron Bergelson
  • Anshul Khatri
  • Campbell Leckie
  • Leron Bergelson
  • Roy Ceyleon
  • Mosin Malik
  • Nicolas Mills
  • Perikles Tsikrikis
  • Ruth Schmidt
Implementation Model Training Anshul Khatri
  • Anshul Khatri
  • Campbell Leckie
  • Jeff Kolnick
  • Perikles Tsikrikis
  • Syed Ahmed
  • Yasmine Ali
Implementation Unit Testing Michael Okenye
  • Anshul Khatri
  • Campbell Leckie
  • Brayden Mckay
  • Leron Bergelson
  • Roy Ceyleon
  • Mosin Malik
  • Michael Okenye
  • Nicolas Mills
  • Ruth Schmidt
  • Jeff Kolnick
  • Perikles Tsikrikis
  • Syed Ahmed
  • Yasmine Ali
  • Tyler Price

Additional responsibilities outside the scope of deliverables:

Role Group Member Responsbilities
Meeting Chair Ruth Schmidt
  • Chairs all group meetings.
  • Summarizes group meeting discussions.
  • Sets meeting agendas.
Communications Correspondent Yasmine Ali
  • Handles all communications with the Client.
Documentation Site Manager Roy Ceyleon
  • Manages and updates the Documentation Site.
  • Converts all Google Doc drafts of deliverable documents to HTML.
  • Reviews final quality of all deliverable documents.

(5) Managerial Process

This section of the SPMP details the management process for this project.

(5.1) Objectives and Priorities

The objective of this project is to produce a streamlined web-based platform for investors and market enthusiasts, to view the prospective performance of popular stocks based on the analysis of Twitter sentiments. Top priorities include project completion within the specified deadline and the implementation of a fully-functional application.

(5.2) Monitoring and Reporting Mechanisms

(5.3) Activity Plan

Activity Plan
SPMP
  1. Read through the IEEE documentation and determine relevant and pertinent pieces of information to incorporate into the SPMP.
  2. Discuss and write the SPMP using Google Docs.
  3. Revise and finalize the written SPMP document.
  4. Convert and transfer the SPMP document to the Documentation Site.
  5. Update the SPMP as development progresses.
Requirements
  1. Discuss and write the Requirements document for the StockEye application using Google Docs.
  2. Revise and finalize the written requirements document.
  3. Convert and transfer the requirements document to the Documentation Site.
Analysis
  1. Research and determine the relevant and pertinent components for the Analysis document.
  2. Discuss, list, and define the entity/boundary/control objects and classes required.
  3. Determine the attributes of classes and relationships between the different classes and create models.
  4. Review models for completeness, correctness, and consistency.
  5. Write the Analysis document using Google Docs.
  6. Revise and finalize the written Analysis document.
  7. Convert and transfer the Analysis document to the Documentation Site.
  8. Update the Analysis as development progresses.
Design
  1. Discuss and determine a list of design goals.
  2. Discuss objectives, generate visions of the StockEye GUI, and create prototypes.
  3. Decompose the StockEye application into the subsystems and determine in which subsystem the entity classes, identified in the Analysis document, belong to.
  4. Determine the necessary front-end and back-ends tools to be utilized.
  5. Write the Design document using Google Docs.
  6. Revise and finalize the written Design document.
  7. Convert and transfer the Design document to the Documentation Site.
  8. Update the Design as development progresses.
Front-end
  1. Review prototypes found in the Design document.
  2. Implement the prototypes.
  3. Test the implementation for quality and correctness.
Back-end
  1. Review and follow the Design document and determine necessary components of the Back-end to achieve objectives.
  2. Implement the necessary components of the Back-end.
  3. Test the implementation for quality and correctness.
  4. Ensure thorough and proper documentation of code.

(6) Technical Process

This section specifies the development process model and the technical methods, tools, and techniques to be used during development.

(6.1) Process Model

The project was initiated on January 15, 2021 and will be terminated with the end of the Winter 2021 semester at Wilfrid Laurier University, on April 12, 2021.

The project uses an object-oriented design methodology process and UML for the design and documentation of the software. The development process is organized into several activities, wherein the responsibilities of each activity, such as contributing and testing, are delegated to a subset of team members. The products of these activities are finalized upon the approval of the designated Chief of the respective deliverable, along with a majority of the contributing members. The approved documents are considered work products and will become part of the official software documentation.

Major milestones are the completion of all major pieces of documentation (Requirements, Analysis, Design etc.) and the fully-functional implementation of the application.

(6.2) Methods, Tools, Techniques

A listing of all the development methodologies, software, programming languages, and other tools used for the completion of project deliverables and non-deliverables:

Communication, Collaboration, and Organization
Programming Languages
Version Control
Integrated Development Environments (IDEs)
Web Frameworks
GUI Prototyping
Other

(6.3) Infrastructure plan

The StockEye web application will be hosted on the cloud application platform Heroku. Linking Heroku to the StockEye repository on GitHub enables automatic synchronization between the production environment and GitHub master branch, removing infrastructure maintenance inherent to alternative solutions such as IaaS.

(7) Supporting Process

This section outlines the supporting processes that span the duration of the project.

(7.1) Quality Assurance

At each stage of development, every member of the group is expected to review and approve the product. This allows each member to gain a firm understanding of the project at each step of development, enabling them to identify where improvements can be made and keep everyone on the same page. This proves particularly beneficial at the implementation stage, as it will help catch any errors or bugs that may have been left unacknowledged.

Furthermore, as the web application is intended to be accessible, thorough testing must be done on multiple devices and browsers. These will include:
  • Google Chrome
  • Microsoft Edge
  • Mozilla FireFox
  • Safari
  • Android OS device
  • iOS device

(7.2) Documentation

For the purpose of clarity and transparency, code will be thoroughly and properly documented.

GitHub will be used during the implementation phase, allowing for precise tracking of all contributions and easy facilitation of code reviews. Furthermore, all members partaking in the implementation phase are expected to provide thorough commentary in their code to ease comprehension between collaborators.

(8) Change History

The SPMP is a living document, changing as the project progresses. Therefore, it is important to track what changes were made to the document, when those changes happened, and who made those changes. While Google Docs is used to track the editing history, the SPMP includes references to major changes of the document within itself.

Date Description of Change(s) Contributor(s)
February 3, 2021 Initial draft of SPMP completed
  • Campbell Leckie
  • Roy Ceyleon
  • Jeff Kolnick
  • Nicolas Mills
  • Tyler Price
February 4, 2021 Final draft of SPMP completed
  • Campbell Leckie
  • Roy Ceyleon
  • Jeff Kolnick
  • Nicolas Mills
  • Tyler Price
  • Ruth Schmidt
  • Yasmine Ali
  • Anshul Khatri
  • Brayden Mckay
  • Syed Ahmed
  • Mohsin Malik
February 20, 2021 Appended descriptions of deadlines to Definitions
  • Roy Ceyleon
March 28, 2021
  • Updated Methods, Tools, and Techniques
  • Revised Activity Plan
  • Roy Ceyleon
April 6, 2021
  • Various updates to bring SPMP inline with current information
  • Jeff Kolnick

Back to Menu Return to Top