Team Members:
- Jared Jolton
- Ryan Bohannon
- Connor Davis
- Wil Braun
- Joe Kiefer
Title of Project: DoubleCheck
Description: Essay proofreader that gives user feedback about the overall quality of their essay, informing them of any common mistakes.
Vision Statement: Everyone makes mistakes
Motivation: Provide a tool to help streamline the task of essay writing by providing instant feedback and suggestions regarding spelling, grammar, and topics.
Risks:
- May have difficulty finding graded college essays to train supervised learning algorithm
- Scale of project, ability to correctly implement desired characteristics
Mitigation strategy:
- Collaboration with leading experts in the NLP field
- Utilization of open source libraries (NLTK, GenSim, Numpy, etc.)
- Essay writing domain knowledge
- Use of personal essay resources, and other essays from college students
How to Run:
- clone repository
- navigate to express directory
- run "npm install" to install required packages
- run "node server.js" to launch the website locally
Repo Organization
- 'engine' directory contains all NLP files, sample essays, and machine learning scripts
- 'express' directory contains all files necessary to launch website
- 'documentation' directory contains automatically generated HTML pages with information about engine code
- 'screenshots' directory contains screenshots of project progress
- root level contains all files required for CSCI 3308 (Presentation, PDF, README, etc.)
List of requirements:
User Requirements | Functional Requirements | Non-Functional Requirements |
---|---|---|
As a user, I want to receive feedback so that I can improve my writing. ID: 1.0 | As a user, I want my documents to remain private from the rest of the world, so that I can feel comfortable uploading my writing. ID: 2.0 | As a programmer, I want to have access to a dataset that is robust and reliable, so that the feedback our algorithms provide is accurate. ID: 3.0 |
As a user, I want a quick and immediate response so that I can make changes and corrections at a moment's notice. ID: 1.1 | As a user, I want to trust the accuracy of the service, so that I can add this tool to my writing toolkit. ID: 2.1 | As a programmer, I want pages to load promptly. ID: 3.1 |
As a college student, I want a proofreader that is easy, functional, reliable, and online so that I can have a consistent editing resource. ID: 1.2 | As an admin, I want to have quick and easy access to the database, so that I can solve problems, perform maintenance, and add training data for the learning algorithms. ID: 2.2 | As a programmer, I want to have a fluid menu system, so that the user can navigate the program with ease. ID: 3.2 |
As a writer, I want to improve my grammar, and make sure it is sound, before I submit my work, so that I can provide my best material. ID: 1.3 | As an admin, I want to have access to statistics on the website, so that I can monitor our unhindered success. ID: 2.3 | |
As a user, I want to use a clean and simple interface so that I have a hassle free experience using the program. ID: 1.4 |
Story points in [1-8]...
User Requirements: (Cases)
1.0 Size: 8 hours, 8 story points
1.1 Size: 5 hours, 3 story points
1.2 Size: 6 hours 5 story points
1.3 Size: 5.5 hours 5 story points
Functional Requirements: (Can be solved/addressed with code)
2.0 Size: 1 hour, 1 story point
2.1 Size: 8 hours, 8 story points
2.2 Size: .5 hours, 1 story point
2.3 Size: 3 hours, 1 story point
Non-Functional Requirements: (Users don't see: performance, security)
3.0 Size: 4 hours, 3 story points
3.1 Size: 2 hours, 1 story point
3.2 Size: 4 hours, 3 story points
Methodology: Agile
Project Tracking software:
Trello
Project plan:
![Image of Project Plan] (https://github.com/abeautifulman/DoubleCheck/blob/master/doublecheck_project_tracker.png)