20
University Friend Finder Product Description 1 University Friend Finder Product Description Team Copper Old Dominion University Matthew Fulford CS411W Professor J. Brunelle November 25th, 2019 Lab 1 Submission

1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 1

University Friend Finder Product Description

Team Copper

Old Dominion University

Matthew Fulford

CS411W

Professor J. Brunelle

November 25th, 2019

Lab 1 Submission

Page 2: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 2

Table of Contents

1. Introduction 3

2. University Friend Finder Product Description 5

2.1. Key Product Features and Capabilities 6

2.2. Major Components (Hardware/Software) 7

3. Identification of Case Study 9

4. University Friend Finder Prototype Description 10

4.1. Prototype Architecture (Hardware/Software) 10

4.2. Prototype Features and Capabilities 10

4.3. Prototype Development Challenges 10

5. Glossary 10

6. References 11

List of Figures

Figure 1: Current Process Flow ………………………………………………………………… 4

Figure 2: Solution Process Flow …………………………………………………………………5

Figure 3: University Friend Finder Major Functional Components Diagram……………………8

Figure 4: Software Architecture Overview……………………………………………………….9

Page 3: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 3

1. Introduction

University Friend Finder is designed to help Students find friends at their University, so

“Be a Friend to Make a Friend.” Having friends is an essential part of life, but friends can be

hard to find. Students often have a hard time finding friends after they graduate from high school

and go off to college. Often the Students find themselves in towns or states far from family and

friends, and have a hard time making new friends. Sometimes they become lonely and depressed.

In a 2017 survey by the American College Health Association, nearly 28,000 student of 51

campuses were surveyed and more than 60% said that they had “felt very lonely” in the previous

12 months (5). University Friend Finder wants to keep the students from being lonely or

depressed by giving them an easier way to find friends. Students with a high degree of loneliness

score an average two letter grades below their peers (10). University Friend finder wants to help

you get better grades by developing friendships that can help you overcome your loneliness and

depression.

According to the Foundation of Art and Healing, 64% of students feel very lonely which

can result in the students becoming more isolated, depressed, and can negatively impact

academic performance and their mental and physical well-being. There are many problem

characteristics that support this idea that loneliness can affect students in a negative way. First,

finding friends in a university environment relies heavily on face-to-face interactions. An

example of this would be students who are in the same classroom. Second, Online and night

class students have limited, if any opportunity to meet and develop friendships. Another example

would be students who are all over the world since they don’t have face-to-face interactions it’s

hard for them to find out if other students have the same common interest as them. Third,

Schools invest heavily in first year orientation programs, but more than 10% of students transfer

Page 4: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 4

in after freshman year (6). This limits students who transfer in after freshman year because they

miss out on social interactions with other students during the 1st years of college life. Also,

interactions among students tend to evolve around fellow classmates with common majors. If

you were ever a University Student then you would understand when you talk to your fellow

classmates that you find out what there majors, minors, and classes are or even how they did on

the exam. This is important because it helps with the face-to-face interaction and developing a

friendship, but since some students don’t share common majors, it hinders students from

developing a friendship because they don’t share the same interest. Additionally, available social

media options for finding friends do not satisfy the preferences of students who want to explore

friendship opportunities strictly within their university community. In addition, there currently is

not an effective tool that provides students the opportunity to explore friendship opportunities

based on their individual interests within the broader university environment. In Figure 1, it

illustrates the Current Process Flow.

Figure 1 : Current Process Flow

Page 5: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 5

University Friend Finder is a mobile application designed to help students match with

other students within their university community who will help them grow both personally and

academically. University Friend Finder will help you develop friendships at your university by

finding common interest such as major, minor, classes or hobbies. University Friend Finder will

help student organizations grow their organizations and increases the chances that students will

find friends with the same interests. Finally, University Friend Finder will help a student “Be a

Friend to Make a Friend.” In Figure 1, it illustrates the Solution Process Flow.

Figure 1: Solution Process Flow

2. University Friend Finder Product Description

University Friend Finder will be a mobile application for university students. Students

will create their accounts using their school email ending with “edu.” All students must have a

valid university email address. Once their account is created and logged in, various menus will

be shown on the screen; they will be different for students and student organizations. University

Page 6: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 6

Friend Finder will be able to have the ability to create their profile with basic information such as

majors, minors, classes or hobbies. Next, University Friend Finder will allow student

organizations to create a profile and list information about their organization. Also, University

Friend Finder will give students the ability to search for and join student organizations.

University Friend Finder will have the ability to plan hangouts with other students for meet-ups

through a calendar. University Friend Finder will allow students to match with other students

based on information in their profile, which could possibly be the likelihood of a good

friendship. In addition, Students will have the ability to accept or decline these matches. Finally,

University Friend Finder will allow students to develop friendships and come closer together for

a better university experience.

2.1. Key Product Features and Capabilities

The major features of University Friend Finder will be based on three different types of

users such as Students, Student Organizations, and University Administrator. All of these users

will have different capabilities.

Frist, University Friend Finders first users are the Students. University Friend Finder

gives students the ability to use a calendar to plan hangouts. This allows the student to have the

ability to meet other students on campus. Students will be able to find student organizations

based on what the students like about the organization. Next, the students will be able to create a

profile. In this profile, they will be able to list their, interest such as majors, minors, classes, and

hobbies. Also, students can swipe either left or right if they want to be unmatched or matched

with other student’s profiles. After students have been matched, they will be able to send

messages to each other, but when students are unmatched, they won’t be able to message each

other. In addition to messaging, the students will have the ability to report and delete any

Page 7: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 7

message he or she will receive. Finally, University Friend Finder allows students to match with

other students and help them develop friendships.

Next, University Friend Finders second users are Student Organizations. If you already

have an account on University Friend Finder, you can create a Student Organizations profile, by

verifying your email and creating a profile. Also, the Student Organization can list information

about their Organization such as policy, logo, and background about their Organization. After

you create your Student Organizations profile, you will be able to manage your Student

Organization. When managing your Student Organization you will be able to add and remove

students, and have the ability to edit your Student Organization.

Lastly, University Friend Finders third user will be the University Administrator. The

University Administrator will manage the different contents on University Friend Finder. Also,

the University Administrator will be able to issue warnings to the students for explicit photos,

harassment, and inappropriate messages. If the student continues any of the things they were

warned for, they are subject to being banned. After the University Administrator bans, the

student they will be notified and removed form Organizations and University Friend Finder.

2.2. Major Components (Hardware/Software)

University Friend Finder will start by using a smart phone. The Students and student

Organizations will log in through the smart phone while the University Administrator will be

logged in from the website in order to control the content on University Friend Finder (Figure 2).

Page 8: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 8

Figure 2: University Friend Finder Major Functional Components Diagram.

For Android and IOS users the mobile applications will be developed using ReactJS.

ReactJS will be used for the front-end. Next, the Web API Interface will be using GraphQL for

University Friend Finder. Also, for the administrative staff they will use Django, for business

logic and web views. Finally, the database University Friend Finder will use is PostgreSQL,

which is used for the backend. GraphQL, Django, and PostgreSQL will be contained in a Docker

container, which is a virtual machine. Docker will be used for development and deployment of

the application for University Friend Finder. In Figure 3 it shows an overview of Software

Architecture.

Page 9: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 9

Figure 3 Software Architecture Overview

3. Identification of Case Study

First, Students need this product because it will help them develop friendships and

overcome loneliness. The way students will use this product is by meeting other students through

University Friend Finder. Next, Student Organizations will be able to use this product to promote

their organization. Student Organizations will be able to use this product for a chance to grow

their organizations and also to help students find potential friends. Finally, the University

Administrator will be able to manage and keep track of the content posted on University Friend

Page 10: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 10

Finder. In the future, University Friend Finder can expand to other Universities outside of ODU,

as well as high schools.

4. University Friend Finder Prototype Description

4.1. Prototype Architecture (Hardware/Software)

4.2. Prototype Features and Capabilities

4.3. Prototype Development Challenges

5. Glossary

● Application programming interface (API): programming interface between the backend

business logic

● Django: High level Python Web Framework. Handles user authentication and permission,

database object models via object-relational mapper (ORM). The admin interface will be

built using Django’s form templates.

● Docker: Lightweight virtual machine platform that allows ‘containerization’ of

applications from development and deployment

● Gitlab: Git repository with integrated continuous integration deployment pipelines

● GraphQL: A declarative and typed query language for APIs which allows evolutionary

schema design. GraphQL allows clients to customize what data is returned, providing

Page 11: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 11

minimal HTTP traffic and payloads.We will use the Graphene Library, which has been

integrated with Django, to define our schema using Python.

● Google Cloud Vision (GCV): A machine learning API that is able to inspect inputted

images for violent, adult, spoof, medical, or racy content.

● Machine Learning: Method of data analysis that automates analytical model building.

● PostgreSQL:Backend database preferred for use with Django, which will abstract most of

the query and data modeling for us.

● React Native: A framework for building native apps (for Android and IOS) using React

JS library. Our apps will be lightweight, focused on presentation and caching. Business

logic will be contained within backend application code, with data transmitted via

GraphQL API.

● Student: A person who attends a university/college.

● Student Organization: A group of students in a university/college who share one or

multiple common interests.

● University Administrator: Special user who posses special privileges, such as warning or

banning users, for account management.

6. References

1.) A successful Git branching model. (n.d.). Retrieved from https://nvie.com/posts/a-successful-

git-branching-model/.

2.) Shape Up v 1.6, 2019 edition. (n.d.). Retrieved from https://basecamp.com/shapeup.

3.)Knapton, Sarah. “Having No Friends Could Be as Deadly as Smoking, Harvard University Finds.” The Telegraph, Telegraph Media Group, 24 Aug. 2016, https://www.telegraph.co.uk/science/2016/08/24/having-no-friends-could-be-as-deadly-as-smoking-harvard-universi/.

Page 12: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 12

4.) “Old Dominion University.” Data USA, https://datausa.io/profile/university/old-dominion-university.

5.) “Campus Loneliness Fact Sheet.” The UnLonely Project, 10 June 2019, https://artandhealing.org/campus-loneliness-fact-sheet/.Bronkema, Ryan, et al. Campus Friends, Gender, and College Student Success, 2014, pp. ProQuest Dissertations and Theses.

6.) “Student Population and Demographics: Old Dominion University.” College Tuition Compare, https://www.collegetuitioncompare.com/edu/232982/old-dominion-university/enrollment/.Eagan, K, et al. The American Freshman: National Norms Fall 2014. The American Freshman: National Norms Fall 2014.

7.) “The College Student Mental Health Crisis (Update).” Psychology Today, Sussex Publishers, https://www.psychologytoday.com/us/blog/theory-knowledge/201811/the-college-student-mental-health-crisis-update.

8.) Zong, Jie, et al. “International Students in the United States.” Migrationpolicy.org,

June 2018, https://www.migrationpolicy.org/article/international-students-united-states

9.)  ”Loneliness at Universities: Determinants of Emotional and Social Loneliness among Students.”, 29 Aug 2018,https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6163695/#B34-ijerph-15-01865

10.) Loneliness, Mindfulness, and Academic Achievements: A Moderation Effect among First-Year College Students,https://www.researchgate.net/publication/279273646_Loneliness_Mindfulness_and_Academic_Achievements_A_Moderation_Effect_among_First-Year_College_Student

11.) Ballard, J. (2019, July 30). Millennials are the loneliest generation. Retrieved from https://today.yougov.com/topics/lifestyle/articles-reports/2019/07/30/loneliness-friendship-new-friends-poll-survey.

12.) Heid, M. (2015, March 18). Friendship: The Social Health of Friends. Retrieved from https://time.com/3748090/friends-social-health/.

Page 13: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 13

13.) 7 Ways Friendships Are Great for Your Health. (n.d.). Retrieved from https://www.livescience.com/53315-how-friendships-are-good-for-your-health.html.

14.) Radowitz, J. von. (2012, December 11). Loneliness 'can increase Alzheimer's risk'. Retrieved from https://www.independent.co.uk/life-style/health-and-families/health-news/loneliness-can-increase-alzheimers-risk-8405166.html

Page 14: 1. Introduction - cs.odu.edu410copper/labs/docx/matthew_draft_lab…  · Web viewDocker will be used for development and deployment of the application for University Friend Finder

University Friend Finder Product Description 14