Radio-Detox


(Software Engineering Project)

by

Aaron Linder

12/10/2022


Course: Advanced Software Engineering



































Table of Contents

  1. Introduction

  2. Use Case and their descriptions

  3. User Requirements

  4. System Requirements

    1. functional requirements

    2. nonfunctional requirements

  5. System Architecture

  6. Installation Instructions:

  7. Conclusion










































1. Introduction

In this document I will be outlining several parts of this section, in regards to the project named (RadioDetox referred to as “project”), which the first implies sound (Because events have sound), and Detox means to avoid or withdraw from toxicity, which is the intended design feature of the software. It is to have sound or meetings or conversations, with people who are like minded. In the first section I will include user functional and non functional requirements in natural language, as well as use case diagrams for two actors. Also will be included is system requirements, for figures I will include UML use case diagrams for two actors, as well as UML sequence diagrams for two separate use cases. I included a slightly larger font with intent of publishing a longer document for easy readability. Radio Detox (the app name), is an app to help people enhance their social life, to find house parties to have fun but at the same time using artificial intelligence to assist people in making personal connections with strangers in “in-person” social networking with people who have common interests. Many times I go to meetings or parties and have nothing in common with anyone else there, and it makes socialization difficult.


2. Use Cases and their descriptions


Use case Diagrams:


There is two separate kinds of users in this program. The first kind of user is a “Event Attendee” user. His only goal, is to find and event to keep him occupied and relieve boredom. Before he signs in, we want several things of information from him. We want to scan his driver’s license to make sure he/she is allowed to consume alcohol or tobacco which may be present at events. Also if it’s a minor individual he may need parental consent. Most websites just include a birthday. I may consider reformatting this program in a future iteration to that method. However this is more secure, similar to attending a social club such as “Green Street” in Greensboro, they do have security guard checking the ID. Once the sub-routine is satisfied (it’s not spoof proof yet), we will want his email and his password to save in the database so that we know what kind of interests that the Event Attendee has.


The Event Attendee has a few options, he can register and login; And fill out his profile. Most importantly his profile will allow him to match “his unique event attendee profile” to other events that are hosted.


The second Use case is the Event Host. The event host has similar options to the event attendee, mainly login and register, and filling out his profile. His profile is not necessarily used that much, unless he himself queries an event. He registers his event, and it shows up to everyone who is searching for events on the system. They then can send him an email, and he will respond using an external email program (probably outlook or another cellular app), an invitation to his event.


Use Case (2 Use Cases 1 graph)


































3. User Requirements





4. System Requirements:


Functional Requirements:







Non-functional Requirements:

5. System Architecture


The system uses MVC architecture. There is a REST API using flask. The front-end uses vue.js. As you can see in the blow drawing, there is multiple links to other parts of the app in the file structure, relying primarily on run.py as the main executable into “app” file, and then, some of my functions pull int doc_similarity and doc comparison, there is a public and private blueprint from flask security determining which pages are public or private.


System Block Diagram:


T his is the UML framework of the security login and configuration logins with the form validations.























Here is the schema of the database:







6. Installation Instructions







Running the software:



Screenshots of UI:





x


X




X




X




X



TODO:


show event description, including date and time (Not separate fields), not using Date Logic, up to the user to see what his schedule is.




X



TODO:

Fix the spacing on the grid (Cosine hidden as requested previously)...(I think that the spacing is improved last time I checked)


7. Conclusion


There is a lot of exceptions in this program that need to be made cases for. I don’t feel the software is complete (It needs some):