Download as pdf or txt
Download as pdf or txt
You are on page 1of 75

A SOCIAL MEDIA PLATFORM

USING AUTO SEARCH AND


SPEECH RECOGNITION - BD
UNIVERSITIES PERSPECTIVE

By

Tosmia Islam Nishat- 1711071042

Md. Mahabub ul Islam- 1631880042

Submitted in partial fulfilment of the requirements of the degree of Bachelor of


Science in Computer Science and Engineering

Supervised by:

Dr. Dihan Md. Nuruddin Hasan


Assistant Professor

ECE Department

Fall-2021

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

NORTH SOUTH UNIVERSITY


Declaration

This is to declare that no part of this report or the project has been previously

submitted elsewhere for the fulfillment of any other degree or program. Proper

acknowledgment has been provided for any material that has been taken from

previously published sources in the bibliography section of this report.

Student’s Names and Signatures:

1. Tosmia Islam Nishat


ECE Department
North South University, Bangladesh

2. Md. Mahabub ul Islam


ECE Department
North South University, Bangladesh
Approval

The Directed Research (498R) entitled “A SOCIAL MEDIA PLATFORM


USING AUTO SEARCH AND SPEECH RECOGNITION” by Tosmia Islam Nishat
(1711071042) and Md. mahabub ul Islam (1631880042) has been accepted as
satisfactory and approved for partial fulfillment of the requirement of BS in
CSE/ETE/EEE degree program on December 2021.

Supervisor’s Signature

Dr. Dihan Md. Nuruddin Hasan


Assistant Professor
Department of Electrical and Computer Engineering
North South University Dhaka, Bangladesh.

Department Chair’s Signature

Dr. Rezaul Bari


Associate Professor
Department of Electrical and Computer Engineering
North South University
Dhaka, Bangladesh.

Acknowledgment
Foremost, we would like to express our profound gratitude to our honorable
course instructor, Dr. Dihan Md. Nuruddin Hasan, for his continuous
support in our project progress throughout the whole CSE/ETE/EEE 498R,
for his patience, motivation, and immense knowledge. His guidance made
our project easygoing. Our sincere thanks also go to North South
University, Dhaka, Bangladesh, to provide an opportunity in our
curriculum while enabling us to have industrial-level experience as part of
our academics.
We are also grateful to all the people who took part in our research and
shared their valuable opinions regarding this project. Finally, we would like
to thank our families and friends for their inspiration, support,
encouragement, and proper guidance that kept us focused and motivated.
Abstract

The economical condition of our country is in the developing stage, where unemployment is
a very big problem. Educational systems are also trying to keep state with the modern online
based studying system. But in our country, it is hard to find any websites specially for
university students which can be used for knowledge sharing as well as for earning purpose.
Being students of the university, we felt the need of such a website by which we will be able
to manage our pocket money by selling our own notes and can communicate with other
university’s students and build community. So we proposed to build such an online web
system for university students. The main aim of our work is to arrange a student’s earning
option by which they can manage their pocket money. In our proposed system all the
university students of our country will get help in their educational purpose by sharing their
study related problems to each other. Study related doc, pdf files can be sold through the
system. There will be auto search suggestion feature and voice to text conversion feature
also.

i
Table of Contents

Table of Contents iv

List of Figures v

List of Tables vii

1 Introduction 1
1.1 Project Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Objectives ......................................... 2
1.4 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.5 Project Outcome ..................................... 4
1.6 Organization of the Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Background 5
2.1 Related Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.1 Social Networking And E-Learning . . . . . . . . . . . . . . . . . . . . . . 5
2.1.2 LABOREM .................................... 6
2.1.3 Account Binding Security ........................... 7
2.1.4 ADEPT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Summary ......................................... 8

3 Project Design 9
3.1 Benchmark Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Software Requirement Specification(SRS) . . . . . . . . . . . . . . . . . . . . . . 17
3.2.1 Introduction ................................... 17
3.2.2 Project Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2.3 Methodology ................................... 18
3.2.4 Feasibility Analysis ............................... 19
3.2.5 System Design and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.6 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Table of Contents Table of Contents

4 Implementation and Results 35


4.1 Environment Setup ................................... 35

ii
4.1.1 Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.1.2 Production Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Testing and Evaluation ................................. 47
4.2.1 Testing Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2.2 Evaluation Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.3 Results and Discussion ................................. 54
4.4 Summary ......................................... 54

5 Standards and Design Constraints 55


5.1 Compliance with the Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.1.1 Software Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.1.2 Hardware Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.1.3 Communication Standard ........................... 56
5.1.4 Safety Standard ................................. 56
5.2 Compliance with the Impacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2.1 Economic Impacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2.2 Social Impacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2.3 Ethical Impacts ................................. 57
5.2.4 Political Impact ................................. 58
5.2.5 Sustainability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.3 Cost Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.3.1 COCOMO Model: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.4 Summary ......................................... 61

6 Conclusion 62
6.1 Summary ......................................... 62
6.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.3 Limitations ........................................ 63

References 65

List of Figures

1.1 Overview Of Our Web Based System . . . . . . . . . . . . . . . . . . . . . . . . . 2


1.2 Methodology Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

3.1 Gantt Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18


3.2 Use case for Selling system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

iii
3.3 Use case for Blogging system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Sequence Diagram For Note Uploading ....................... 22
3.5 Sequence Diagram For Note Buying and Selling . . . . . . . . . . . . . . . . . . 23
3.6 Sequence Diagram For Note Uploading ....................... 24
3.7 Sequence Diagram For Note Buying and Selling . . . . . . . . . . . . . . . . . . 25
3.8 Class Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.9 CRC Diagram For Blogging scenario . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.10 CRC Diagram For Selling scenario . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.11 ERD Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.12 UserProfileInfo Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.13 Deployment Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.1 GitHub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.2 ORM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.3 Django Administration System ............................ 39
4.4 Backlog Stories of Epic’s in JIRA ........................... 40
4.5 Version .......................................... 40
4.6 Jquery Autocomplete API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.7 Voice Search Using Speech Recognition ....................... 42
4.8 Analog to Digital Spectrogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.9 Hidden Markov Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.10 Neural Network Model ................................. 44
4.11 Twilio Communication API Interface . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.12 PythonAnywhere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.13 Webproject Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.14 Markup Validation Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.15 Django-HTML Validator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 List of
Figures List of Figures

4.16 Usability Hub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


4.17 Navigation Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
4.18 Katalon Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.19 Browserstack Live .................................... 51
4.20 Think With Google . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.21 Mozilla Observatory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.22 Website Evaluation Model ............................... 53

5.1 Information Domain Values .............................. 59

iv
5.2 Complexity Weighting Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.3 Selecting Programming Language . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.4 Effort Estimation and Duration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.1 Tools and Frameworks used in our project . . . . . . . . . . . . . . . . . . . . . . 63

v
List of Tables

2.1 Literature Review Table ................................ 8

3.1 Benchmark analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16


3.2 Payment Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

vi
Chapter 1

Introduction

Social media are online platforms like websites, android applications, web applications where
people can communicate, share knowledge with each other. The use of social media is rising
day by day. With the help of social media students can share study materials, useful
information, class notes, projects and many more details with their friends and fellow
students. In covid-19 crisis time social media plays a very important role among all the people
specially among students. It will be a great influential work if we develop a social media type
platform specifically for knowledge sharing and note selling purpose.

1.1 Project Overview

Social platform is a powerful platform for communication and this platform plays a very
effective role in connecting people from all places. This platform is not only used for
communication but also used to share and exchange knowledge and information among
people. As university students we thought it would be wonderful if there could be a specific
social platform where all University students of Bangladesh can stay connected with each
other, share information and also can earn through selling notes. Our project is mainly a web
based system. In this system there will be sub systems like note selling, blogging, video
sharing. Our project will grant two types of user student and teacher. Users can use the
website to communicate with others, writing blogs and articles upload images with articles,
ask question, make plans and arrange programs and most importantly they can share or sell
their notes through the website. We developed the project using various web languages
frameworks. We used HTML, CSS and React JS a JavaScript based framework for front-end
development. For back end development we used Django a python based framework and for
database management we used SQLite and MySql. We also used some python based libraries
for speech recognition feature. Our project overview is shown in Figure 1.1.
1.2. Motivation

1
Chapter 1. Introduction

Figure 1.1: Overview Of Our Web Based System

1.2 Motivation

The reasons that motivated us to do the project:

• There is no specific online platform for University students in Bangladesh, where they
can sell and get all the course’s notes at one place.

• In our country earning resources for a student through online is very rare.

• Not so many platforms out there where students can approach a problem together and
solve it effectively, ask questions and share knowledge among them.

1.3 Objectives

Our main objective of the project is to propose a web based system for the University students
of Bangladesh. The objectives are:

• To develop a web based communication platform, where university students can


communicate and build their own community.

• To build a note selling system, where students can sell their notes and earn money.

• To develop a blogging zone, where students and teachers can write blogs, publish their
works, achievements, ask questions and solve various problems collaboratively.
1.4. Methodology Chapter

2
1. Introduction

1.4 Methodology

Here are the phases of methodology. Methodology phases are described in Figure1.2.

• Phase 1: Project selection and literature


review

• Phase 2: System design and analysis •


Phase 3: Development phase

Figure 1.2: Methodology Diagram


1.5. Project Outcome

3
Chapter 1. Introduction

1.5 Project Outcome

This project will have a great impact on university students of Bangladesh. This project will
raise many opportunities for students. These are the possible outcomes:

• Source of earning by selling notes.

• For collaborative work many new ideas and approaches to solve different study related
problems will come out.

• Sharing of knowledge through audio/video recordings will influence study and learning
performance of students.

• The website will bridge various social and cultural groups together.

• Publishing of achievements will lead to enhance motivation in studies.

1.6 Organization of the Report

This report is organized as follow:

• Chapter 1 describes the introduction, project overview, motivation, our objectives and
our methodology and the project outcome we are hoping to see.

• Chapter 2 provides a summary and literature review table.

• Chapter 3 discusses the SRS and methodology design of our project.

• Chapter 4 includes environment setup, evaluation, result and discussion of our project.

• Chapter 5 contains different types of impacts and constraint of the project on the social,
economic, environment and ethical research.

• Chapter 6 describes summary and conclusion also describe the future goal of our project.

4
Chapter 2 Background

2.1 Related Works

2.1.1 Social Networking And E-Learning

Mustafa I.M. Eid, Ibrahim M. Al-Jabri [1] had done survey on social media for knowledge
sharing and learning. In their work they had targeted some social media platforms like
Facebook, YouTube, Dropbox, WhatsApp, Twitter and then they chose some specific features
including: chatting, content creation, file sharing, enjoyment and entertainment to examine
their impact on knowledge sharing and learning performance. For data collection they had
used quantitative survey questionnaire method. They proposed 9 hypotheses and they are
mainly for the measurement of impact of the features. They had used reflective, formative,
structural measurement model to analysis data. They had found that WhatsApp is the most
popular platform for chatting and discussions (92.5%). It is also the most popular platform
for file sharing (80%). For content creation and enjoyment YouTube is the most popular
platform (97.7%).
Muhammad Imran Rasheed, Muhammad Jawad Malik, Abdul Hameed Pitafi, Jawad
Iqbal, Muhammad Khalid Anser and Mazhar Abbas [2] had done their work on survey based
research to investigate the role of usage of social media on cyber bullying, creativity and
knowledge sharing behaviour of the student. For data collection they had designed questions
on a five-point Likert scale where 1 means strongly disagree to 5 means strongly agree. From
the survey they had received 383 responses and found that social media plays a vital role for
knowledge sharing. They found that, if the students use social media for educational
purposes they will be more beneficial than the traditional studying system.
But all these things can be ruined if cyber bullying is seen in social media.
2.1. Related Works

Ammar Y. Alqahtani and Albraa A. Rajkhan [3] had done a research to find out critical
success factors for e-learning in the time of covid-19 pandemic situation. They had used the
multiple Analytic Hierarchy Process (AHP) and Technique for Order Preference by Similarity
to Ideal Solution (TOPSIS) techniques. They had collected data from 69 educational
institutes. They had found that knowledge sharing, support management, student
characteristics and information technology were the most critical success factors in the time
of covid-19 situation for e-learning.
Lauren A. Ricciardelli, Larry Nackerud, Adam E.Quinn, Mary Sewell, Beatrice Casiano
[4] had done a 55-item survey to find out the impact of social media among social work related
student’s attitude, knowledge and also to find out the impact on ethical inferences for the

5
Chapter 2. Background

social work profession. They had found some believes about social media from their survey
like students supported social media has influence over social work, students believe that
security of personal data is a civil rights issue, they are worried more about how other’s using
social media but most of them believed that social media is the best platform for connecting
people which is an impactful thing for social work.
Mahmoud Maqableh, Lama Rajab, Walaa Quteshat, Ra’ed Moh’d Taisir Masa’deh, Tahani
Khatib, Huda Karajeh [5] did a survey research on the impact of social media usage on
student’s academic performances and they had proposed some hypotheses and tested them by
descriptive analysis method. They found that 38.5% students spend 3 hours daily in social
media platform Facebook and 48% of them use the platform 10 hours per week. By testing
their hypotheses they found there is no significance impact of social media per week’s use on
student’s academic performances.

2.1.2 LABOREM

Bastien Letowski, Camille Lavayssière, Benoît Larroque, Martin Schröder and Franck
Luthon [6] proposed a fully open source remote laboratory model called LABOREM in their
paper. Which is mainly based on PyScada software. In their work they used web languages
like HTML, CSS, Javascript for user interface and connect the front end with a raspberry pi
server which works as host of Human machine interface. In back end they used Django, a
mvc architecture framework. On the laboratory side they used cameras, DUT(device under
test), various measurement instruments like oscilloscope, a robotic arm for selecting DUT
plugs and choose which instrument to run. The communication protocols are provided from
Pyscada core software. They are pyUsb, pyModbus, pyVisa. Their future target is to
experiment on other engineering sections.
2.1. Related Works

2.1.3 Account Binding Security

Xi Gao, Lei Yu, Houhua He, Xiaoyu Wang,Yiwen Wang [7] had talked about their designed
three types of attacks which they had applied to find out the security issues in three kind of
account binding method QAUTH, QR Code, Mobile based binding method. They selected 43
websites and found that 11 websites had issues in third party account binding and 4 websites
in mobile based account binding. In their paper paper they mentioned about some defensive
measures. One of them is websites should send sms to users when their account binding
information got changed. Their future target is to make automated detection tool.

2.1.4 ADEPT

Maryam A.Al-Othman, John H.Cole, Carla B. Zoltowski, Dimitrios Peroulis, J.H.Cole [8]
talked about ADEPT in their paper. Adept is an online education platform which focuses on
student’s learning performances. Students can attend exams in this platform. This system

6
Chapter 2. Background
finds out errors like typographical errors, coding errors, phrasing errors etc. They used three
tired client-server architecture here. For front end they used HTML, CSS, Bootstrap, JQuery.
For middleware and back-end they used rails and postgreSQL technologies. They also used
HEVEA which converts Latex to HTML. Their future plan is to add more features.

7
Chapter 2. Background

2.2. Summary

2.2 Summary

Table 2.1: Literature Review Table

Paper title Study Study Aim Observations


Design
An Adaptive Implementation To examine a system called ADEPT a ADEPT’s collected data helps to analyze the courses
Educational Web Research, Survey presentation material modifying system exercises.Exercises are sorted as either correct, incorrect or
Application for skipped. The total number of the exercise is 5704 in which 2610 are
correct,831 are incorrect and lastly 2263 are skipped. It is found
Engineering
that in every category the response rate of students are 100% in
Students almost every exercise.

Social media use, Survey To discover the concern within the use of After observing this paper we found that most of the social network
attitudes, and social medias and the performance of website users are female and majority of them in second and third
knowledge among student’s academic activities year level who are around 20-23 years old. It is also found that
38.5% of the students use Facebook heavily almost 3 hours a day
social work students
and around 40% students spend 10 hours per week.
Ethical implications
for the social work
profession

Implementation To examine a fully open source laboratory LABOREM project is a remarkable project for all kinds of students
A Fully Open Source Research model LABOREM. specially who are disable or wants to take distance education. Their
next target is to experiment it on various sector of engineering
Remote Laboratory
education.
for Practical Learning

Social Survey To find out the impact of social media on


networ knowledge sharing and learning
1.WhatsApp is most popular for chatting and discussions 92.5 %.
king, knowledge performance.
2.WhatsApp is also the most popular for file sharing than Dropbox
sharing
61.7%. 3. Youtube is the most popular for content creation and
, and student
enjoyment, entertainment 89% and 97.7 %.
learning: The case of
university students

The Impact of Social Survey To understand the effect of social platform on Social media can change the point of view and behaviour of users of
Media Networks user’s mental health, behaviour and social media,and how this changes can rotate our social and
Websites Usage on professional life professional life.
Students’ Academic
Performance

E-Learning Critical Survey To understand the success rate of e-learning Knowledge sharing, support management, student characteristics
Success Factors during covid-19. and information technology were the most critical success factors in
during the COVID-19 the time of covid-19 situation for e-learning.

Pandemic: A
Comprehensive
Analysis of
E-
Learning
Manage
rial
Perspectives

A research of security
in website account Implementation To propose some summarized methods of sms sending feature increase security.When account binding
binding research,Survey. account binding with the websites. credentials got changed website will send sms to user.

8
Chapter 2. Background
Usage of social media, Research,survey To shows the outcome of using social media Social media has positive influence on study but cyberbullying has
student engagement, and the procedure of using social media by negative impact.
and creativity: The which students creativity can be increased
role of knowledge
sharing behavior and
cyberbully.

9
Chapter 3 Project

Design

3.1 Benchmark Analysis

In testing system feasibility benchmark analysis is a crucial thing. It is a way of how we can
compare our project idea with other similar works and find out what features we can add and
what we should not. We made a benchmark of some websites for our work.

• Slader.com:

– Description: Slader.com is mainly a site for students and teachers. Users can find
high school and college textbooks, textbook problems solutions provided by
verified experts. Users can also ask questions to the experts.

– Features:

1. User can directly sign up with his/her social media, mail accounts.

2. Auto-search suggestions.

3. Textbook solutions, assignment solutions, notes selling feature.

4. Tutor help, question asking, commenting, reviewing feature.

5. Online payment system.

6. Mobile, tablet friendly responsive website.

– Limitations :

1. User don’t need any educational information for the registration process. But
since it is an educational site it is important to have user’s educational
background information.

2. They don’t have any audio, video file sharing feature and they did not use
speech recognition feature.
• Shikkhok.com:

– Description: Shikkhok.com is mainly a knowledge sharing site based on Bengali


language. Here users can get various lectures video, articles in Bengali. Here Users
can also upload their videos or files and be a teacher.

– Features:

1. Knowledge sharing feature.

10
3.1. Benchmark Analysis Chapter 3. Project Design

2. Video Sharing feature.

3. Article sharing, commenting feature.

4. Bengali language option feature.

5. Responsive site.

– Limitations:

1. No registration process for the normal users. Registration process available if


users apply as teacher.

2. No course selling feature.

• Stack overflow:

– Description: This is a Q A site for students, programmers, professionals. Here users


can ask various programming problem related questions and get reply from other
expert users.

– Features:

1. Users can directly register through his/her social media or mail accounts and
he/she must provide educational background information.

2. Asking questions and getting solution features.

3. Article sharing, commenting, reviewing Feature.

4. Responsive site.

– Limitations:

1. No selling feature.

2. No speech recognition, auto search suggestion feature.

• 10 Minutes school:

– Description: 10 Minutes school is the largest online educational platform in


Bangladesh. Through 10 minutes school 1.5 million students are accessing quality
education to accelerate their learning.

– Features:

1. There is a option to choose educational content based on your education level


from class 1 to university level.

2. Paid tutorial.
3. Video and text file for offline use.

4. Online MCQ test system.

– Limitations:

1. No auto search suggestion feature.

2. Users cannot sell their notes or educational content here and there is no option
to blogging or asking questions too.

11
3.1. Benchmark Analysis Chapter 3. Project Design

3. There is no review or comment section to comment on any included course.

• Repto education center:

– Description: Repto education center is one of the biggest online education sites in
Bangladesh. This site had 110890 students and 545 teachers with 93 different
courses.

– Features:

1. Paid educational course material.

2. Live class.

3. Job offer post and procedure.

4. There is a blog option by which users will know about many things.

– Limitations:

1. There is no option to verify user by educational information.

2. There is a search option but without auto search suggestion.

3. No option for evaluating the courses and for reviewing the comments.

• eShikhon:

– Description: eShikhon is an online based education portal. Basically this site is for
technical subjects.

– Features:

1. Live class.

2. Recorded video for offline use.

3. Paid course.

– Limitations:

1. There is no option for sign-up directly through working mails, no search or auto
search suggestion, no comment or evaluation system for any material.

2. There is no option for everyone to share their notes.


• Nexus Notes:

– Description: Nexus notes is a marketplace where a university students can buy or


sell their course notes. Users will be a member if he or she want to sell their notes.
They can also upload their assignment and ask questions to the tutors.

– Features:

1. Users must be a member.

2. Users can sell their course notes and can earn money.

3. Users can also buy notes for their needs.

4. They have a review system.

12
3.1. Benchmark Analysis Chapter 3. Project Design

5. Users can search notes.

6. Online payment system.

– Limitations:

1. They don’t have auto-search suggestions feature.

2. They don’t have audio, video file sharing features.

3. They don’t have speech recognition feature.

• Chegg study :

– Description: This is a website where students can find their study related problem
within a few minutes. Students can find textbooks, textbook solutions and home
work related problem solution which is provided by expert teachers.

– Features :

1. They have sign up and login system.

2. Users can buy books or rent a book from their website.

3. Users can take online tuition from expert teachers.

4. Users can find tutor according to their subjects.

5. Users can sell their old textbook and can earn some money.

6. Users can solve any math problem by inputting math expressions.

7. They have an online payment and review system.

8. Users can post for their study related problem.

9. Auto-search suggestion.

– Limitations:

1. They don’t have note selling feature. They don’t have any audio, video and file
sharing features.
• Course Hero:

– Description: Course hero is a biggest online platform where you can find the study
resources which you need for all your classes. Course hero has more than 20 million
of study documents. Users can find their solution to ask question from experts.

– Features:

1. Users can find specific course resource documents.

2. In this website you have to sign up with your authentication information and
using educational information.

3. Users can find textbook and their study related solution.

4. Auto-search suggestion.

5. Users can upload their own notes and course documents. By uploading
documents, they earn free unlocks which they can use to access others content
in this website.

13
3.1. Benchmark Analysis Chapter 3. Project Design

6. They have monthly, quarterly and yearly membership subscriptions.

– Limitations:

1. They don’t have speech recognition feature.

2. They don’t have course selling feature.

3. They don’t have audio, video sharing feature.

• Omeganotes:

– Description: This is an online platform for communication and knowledge sharing.

– Features:

1. Users can be signed up through a third party account or mobile phone.

2. There is an auto-search suggestion option.

3. Users can get help for finding assignments and textbook solutions.

4. Study related audio, video files can be found through the site.

5. Users can buy and sell notes through the site.

6. There is a cart system for buying options.

7. There is an online mobile banking payment procedure.

– Limitations:

1. There is no option of adding educational credentials of users.

2. Speech recognition system is also not implemented.


• Notesgen:

– Description: This is an online educational helping platform where students can get
their textbook solution and assignment help.

– Features:

1. Have an option of signing up with a third party account or mobile phone.

2. There is the option of adding educational credentials.

3. Users can get textbook and assignment solutions.

4. Users can communicate with each other and also can review on the platform.

5. Users can sell and buy notes through this site. 6. In the process of buying, there
is a cart option.

7. Here payment is done through online mobile banking.

– Limitations :

1. There is no auto-search suggestion option.

2. Speech recognition system is also not implemented.

3. Does not have the option of sharing audio, video files.

14
3.1. Benchmark Analysis Chapter 3. Project Design

• Notesmate:

– Description: This is an online educational platform where people can get help in their
education purpose by communicating with each other and by finding their required
notes.

– Features:

1. There is an option of sign up using a third party account or mobile phone.

2. Users can communicate with each other and also can review on the platform.

3. Users can sell and buy notes through this site. 4. In the process of buying, there
is a cart option.

5. Here payment procedure is done by online mobile banking.

– Limitations:

1. There is no requirement of adding student’s educational credentials.

2. There is no auto-search suggestion option.

3. The speech recognition system is missing.

4. No option for audio video file sharing.

5. No helping system for assignment and textbook solution.


After Benchmark analysis we have chosen some features for our website. Benchmark table
in 3.1 describes the features and all the comparisons of our collected works.

• Chosen Features:

– User-friendly navigation.

– Login and Registration with university name and id and other information.

– Search bar with auto-search suggestion and speech recognition feature.

– Note selling feature with review, add to cart options.

– Download code generation feature.

– Blogging with status sharing, image file uploading, commenting features.

– Two ways of buying soft copy or hard copy.

– YouTube video sharing feature.

– Mobile friendly website.

– Password hash will be saved in the database(CSRF token).

15
3.1. Benchmark Analysis Chapter 3. Project Design

16
3.1. Benchmark Analysis Chapter 3. Project Design

17
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

3.2 Software Requirement Specification(SRS)

SRS contains full specifications of a project including defination, functional and non
functional requirements.

3.2.1 Introduction

Project Description

Social media is a powerful platform where people from all over the world can communicate
and share, exchange knowledge with each other. From the social media students can share
study materials, useful information, class notes, projects and many more details with their
friends and fellow students. We are motivated to implement a social networking site where
all the Universities of Bangladesh students can communicate with each other and they can
share and exchange their knowledge through this site. Our main purpose of this study is
making a reliable platform where students can find solutions for their study related problems
and a safe place where students can share their notes and other study materials.

Purpose

The purpose of this project is to built a specific social platform where all Universities of
Bangladesh students can stay connected with each other and share information. Where they
can share course lectures, notes, video tutorial and they can also sell their notes or sell videos
and explain a specific topic or teaching a subject that they are particularly good at.
There will be auto-search suggestion and speech recognition system.

Scope

In this modern era, the role of online based learning platforms can’t be denied. This online
based web system can be a great privilege to all of us. Our proposed web system can help the
individual a lot for knowledge sharing and study related problem solving. They can manage
to earn their pocket money through the system also. The system can be a great platform for
building unity and a social network.
3.2.2 Project Schedule

Project management is an crucial part of an project. We used JIRA software for scheduling
our project works.

Gantt Chart

Gantt Chart describes which works will be done in which duration.

18
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.1: Gantt Chart

3.2.3 Methodology

This section describes our working plan including time phases.

• Phase 1: This phase is project planning phase, literature collecting, literature


reviewing, related work analysis, benchmark analysis phase.

• Phase 2: This phase is all about system analysis and design. For analysis and design
we did benchmark analysis, SWOT analysis and UML design. By benchmark analysis
we found the key features for our project and also tested the feasibility. UML design
diagrams help us to find out how the system will work. It specifies every cases of the
system . We have developed a demo UI design for our project and again tested it if it is
user friendly or not. Then we selected the demo for final work.

• Phase 3: In this phase we started to implement. We found out what are the entities we
need and according to the entities we designed database for our project. We used SQLite
and MySql languages for designing the database and query purpose. We will develop
front end for our project according to the UI design demo. We will develop homepage,
selling page, blogging page, order and payment page, admin page in this phase. We
choose a framework for front end designing-React Js and some basic front end
languages HTML, CSS, Javascript. Our project will be responsive designed means it
will be a device friendly website. In the back end first we will connect our project with
the designed database then we will develop secure authentication system, payment
verification system, products management mainly the logical works will be developed
here. Other features are speech recognition and auto search suggestion.
We will develop these features in this phase using python, Django framework.

3.2.4 Feasibility Analysis

We did SWOT analysis. SWOT analysis mainly a feasibility analysis of a system which uses
four parameters strength, weakness, opportunity, threat. By doing SWOT analysis we found
that our project plan is feasible.

19
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Strength

• Three web developers in our team.

• One python core coder in our team.

• We have a good database query coder in our team.

Weakness

• Only web based version no android or ios version.

• Promotional budget is low.

• Don’t have any marketing specialist in our team.

Opportunity

• User friendly and responsive interface.

• No other competitor company in the market now.

• In future changing of business policy will be beneficial.

Threats

• Lack of promotion will cause lack of members.

• Cost of database for future startup.


3.2.5 System Design and Analysis

We used UML diagrams for describing system design for our project. UML diagrams are
based on Unified Modeling Language. The diagrams explains a system’s use cases, classes,
roles, actors, entities visually and also explain their relationship.

Use Case Diagram

Use case diagrams represents the various scenario of a system. Figure 3.2 describes the use
case scenario for selling. Here actors are student and teacher.

20
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.2: Use case for Selling system


Figure 3.3 describes the use case scenario for Blogging system which includes share
article, commenting, asking questions. Here actors are student and teacher.

21
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.3: Use case for Blogging system


Sequence Diagram

Sequence diagram describes how a case will be completed sequentially. It describes the steps
of completing any goal. Figure ?? describes sequences for blogging scenario, Figure 3.6
describes note uploading scenario and Figure 3.7 describes note selling and buying scenario.

22
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.4: Sequence Diagram For Note Uploading

goal. Figure

23
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.5: Sequence Diagram For Note Buying and Selling Sequence
Diagram

Sequence diagram describes how a case will be completed sequentially. It describes the steps
of completing any goal. Figure ?? describes sequences for blogging scenario, Figure 3.6
describes note uploading scenario and Figure 3.7 describes note selling and buying scenario.

24
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.6: Sequence Diagram For Note Uploading

25
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.7: Sequence Diagram For Note Buying and Selling Class Diagram

Class Diagrams represents building blocks of a system. Class is used to create objects.
Class controls capability of objects.

26
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.8: Class Diagram


CRC Diagram

CRC diagrams mainly a block of cards which explain the allocation of responsibilities in
classes. Figure 3.9 describes CRC models for blogging scenario and Figure 3.10 describes CRC
models for selling scenario.

27
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.9: CRC Diagram For Blogging scenario

28
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.10: CRC Diagram For Selling scenario ERD Diagram

ERD diagram represents the entities of the project and their relationship. ERD Diagram in
Figure 3.11 describes about the entities of our project and their relationship among them.

29
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Figure 3.11: ERD Diagram

Database Normalization Design

We have used normalization techniques for designing an efficient database. We have


implemented all the forms of normalization and made a redundancy free database. The first
normal form expects you to design your table in such a way that it can easily be extended,
and it is easier for you to retrieve data from it whenever required. If a table or a database is
not even in first normal form it is considered a bad database design. So, we can say the first
normal form is the basic requirement, and to follow this should become your default nature
while creating tables to store data. Also, it is step one to move on to the second and third
normal form.
The first normal form expects you to follow a few simple rules while designing your database,
and they are:

Rule 1: Each column of your table must be single-valued which means it should not contain
multiple values.
Rule 2: Every column must have same type data
Rule 3: Every column name must be unique

In our database, we have many tables to keep track of the data which users give. In our
database, our first table name is UserProfileInfo, where the user’s personal information will
be stored. Here in Fig: 1, you can see we create a table with dummy values, for example.

30
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

Now with data added, our table already satisfies three rules as all our column names are
unique. We have stored data in the order we wanted to and we have not mixed different types
of data in our columns. So, it satisfies the rule of the first normalization.

Figure 3.12: UserProfileInfo Table


Let’s move on to the second normal form. For a table to be in the second normal form, it must
satisfy two conditions. First, the table should be in the first normal form, and second, there
should be no partial dependency on the table. We have already covered the first normal form
in the previous example.

Let’s take another example; for this example, we have taken payment table.

In this table, we can see that the primary key is payment_id and buyer_name together forms
a more meaningful primary key for this table, and we can fetch all the information using it.
There is no partial dependency in this table. So, it satisfies the 1nf and 2nf rules.

Table 3.2: Payment Table

Payment_Id Buyer_name Note_name Price Mobile_Banking_Num


(Pk) ( Fk )
1 Jhon04 Math003 100 Dummy1

2 BOb04 SPL 150 Dummy2

3 Tom05 Economics 80 Dummy3

4 Jhon04 Computer 120 Dummy4


Graphics
5 Jerry03 English 70 Dummy5

6 Harry99 Math 003 100 Dummy6

31
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

7 Raf77 SPL 150 Dummy7

8 Tom05 Calculus 200 Dummy8


For a table or any relationship to be in the third normal form, it must be in the second normal
form, and it should not have a transitive dependency. In this table, there is no transitive
dependency. Our entire database is designed in such a way that it satisfies all the rules of
normalization.

UI Design

UI design means user interface design. Users interact with websites through UI design. So it
is a very important thing. Many things depends on UI design like if the UI is so hard to
operate users will leave the website. So we will follow three golden rules of UI designing. An
user friendly interface, other one is a kind of design which will remove the pressure of
remembering any commands for operations and the last one is a kind of design that will be
fully under control of the users.
Deployment Diagram

Deployment diagram describes software execution environments or hardware. Figure 3.13


describes the physical hardware scenario of our project.

Figure 3.13: Deployment Diagram

32
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

3.2.6 Requirements

Hardware requirements

Our proposed hardware requirements:

• Router or Ethernet cable

• Windows 7 minimum

• 4gb Ram

• Hard drive

• Core i3 processor minimum


Software requirements

Our proposed software requirements are described below.

Programming Language

• HTML

• CSS

• Javascript

• Python

Web Framework
Our proposed front end frameworks:

• React JS. It is a model view controller architecture based framework but it only shows
view layer of the mvc part.

• Bootstrap

Our proposed back end frameworks:

• Django. It is a model view controller architecture based framework. It has so many


security features and good for large scale work.

Database design
Our proposed database languages:

• MySql

• SQLite

33
3.2. Software Requirement Specification(SRS) Chapter 3. Project Design

• PostgreSQL

IDE

We chose some editors for their huge amount of plugins variety. We can run multiple code
languages in these editors. They have terminals too. There we can also run server through
them.

• Visual Studio Code

• Pycharm

• Atom
Functional Requirements For Users

This section describes the mandatory requirements for users to use our features.

• To use our important features user must have to register/sign up first.

• User would have to build up their profile with their personal and educational
information.

• In this system we are dealing with the mode of bKash. Later we will extend it to credit
card, debit card etc in future. So, user must pay through bKash.

34
Chapter 4

Implementation and Results

4.1 Environment Setup

There are two types of environments for a software deploying procedure. These are:
"Development Environment" and "Production Environment.” Firstly we have discussed
development environment setup, and then we have discussed production environment setup
also.

4.1.1 Development Environment

Operating System:

In the development phase, the operating system which we used is Windows 10.

Memory: Local
PC memory

IDE:

We have chosen the visual studio code editor for various features and extensions that are
pretty much suitable and helpful for our project. Since we are working on a Python-based
back-end framework, we need a python-supported compiler in which we can run python
libraries for testing purposes and view results in the console. Visual studio code provides
python (pylint extension) for python and many other extensions for Django code snippets. VS
Code also has a terminal where we can write commands directly connected to our local os
system. So we don’t have to write commands in the command prompt console. Vs. Code also
has GitHub extensions which are so helpful for git operations. By this, we can directly get
connected with our GitHub account and create or clone repositories and push, commit so
many things.
Git and GitHub:

We have installed git 2.32.0, a free and distributed version control system. Then we created
accounts on GitHub. GitHub mainly provides internet hosting and version control features
using Git. So we have created git repositories in our GitHub account then we gradually push,
commit our updates into GitHub.

35
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.1: GitHub

Python:

We have installed python 3.9.5 in our operating system and set a variable path to our local
OS.

Virtual Environment And Django Installation:

We first created a virtual environment in our local os for better development and usability in
other machines.
Command: “py -m venv BDuniversitycommunity"
Then We have activated the virtual environment using:
“BDuniversitycommunity\Scripts\activate.bat”
Then inside the virtual environment folder, we have installed Django using the command:
“py -m pip install Django”
Database Setup SQ Lite:

We are using Django for our back-end purposes. Django has its built-in database back-end.
Django officially supports:

• postgreSQL

• MySql

• MariaDB

36
4.1. Environment Setup Chapter 4. Implementation and Results

• Oracle

• SQlite

We have used the SQLite database for our project. Because Sqlite is a lightweight relational
database included with the python distribution system. And when we create a Django project,
in settings.py file of the main project automatically creates an SQLite database structure
setup and connection for the project.

Database Entities and Django ORM:

To create database tables and to perform CRUD operations, there are many ways to write
SQL code or manually create a database table in an individual database server. But we have
chosen the Django ORM concept for database creation and performing various operations.
The main work of Django ORM is to pass data among the RDB and application models.
Models are objects which will convert into database tables. We have to write them in the
models.py file of an individual application, and the most beneficial part is that we can create
and perform operations using just python code. Here is an example: In our capstone project,
we created three: AppUsers, BlogApp, and NotesellingApp. We have created models
connected with the application like in AppUsers we have created Payment object by writing
this code:

class Payment(models.Model):

Payment_id
buyer_name
note_name
price

mobile_banking_number
This code will convert into SQL code and will communicate with the database. In this
model, we can define the corresponding type like Character Field, the foreign key, the
primary key, and so many works. After writing the code, we have to write a command for the
migrations. Command : “python manage.py makemigrations” This command will detect any
changes in the code, and then “python manage.py migrate:” command will migrate all the
changes to our database.

37
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.2: ORM

SQL Browser:

We have used SQL DB browser and Django Administration system for viewing the data.
Django Administration System:

Django admin is one of the most powerful features of Django. It can read metadata from
models and create a user interface for the admin to manage and operate various data and
permissions. To access the admin system, we have to create a superuser using “python
manage.py createsuperuser” command and create an account. Then we can log in into the
admin system using those credentials.

38
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.3: Django Administration System


Project management Tool Jira:

We have used JIRA software for managing our project through tracking our work progress,
scheduling our tasks, assigning different tasks to different member for better progress. We
have used scrum agile model.

39
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.4: Backlog Stories of Epic’s in JIRA

Figure 4.5: Version


AutoComplete API:

For generating auto search suggestions we have used Jquery Autocomplete API. This Api
works based on user input. It takes the prefix and sends it to the source. We defined Django
view as the source. Then Django runs a query for the result including that prefix and if
results exist it will send all the possible results in the JsonResponse to the UI.

40
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.6: Jquery Autocomplete API

Speech Recognition Web Speech API:

We have used Web Speech API for speech recognition. This API was built to measure the
performance of google speech recognition API. It is free and has so many features including
speech analysis and speech synthesis. Web Speech API first takes sound samples from the
user and sends that to a web service server. Then the server processes, analyzes, applies
algorithms and the sound sample gets converted into text. We use this technology to get the
text data and then we submit the data into the query log by Django view. Speech recognition
needs three elements from sound sample frequency, intensity, time duration.

41
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.7: Voice Search Using Speech Recognition

Analog to digital conversion:

The conventional way to convert data is not enough. Speech recognition needs frequency,
intensity, time. So a fast fourier transform algorithm is applied to convert the data into
spectrograms. The algorithm mainly divides the states into acoustics.

Figure 4.8: Analog to Digital Spectrogram


Hybrid Model ( HMM-NNM ):

This Model contains two different models, Hidden Markov Model and Neural Network Model.
Hidden Markov model is great fit for sequential nature of speech, But it is not flexible and
by using this model it is hard to grasp the phoneme varieties. On the other hand Neural
Network model is flexible, phoneme varieties are easy to grasp but it is bad fit and needs so
much data for training and solving errors. So, maximum speech recognition web services use
both of them combinedly.

42
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.9: Hidden Markov Model

43
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.10: Neural Network Model Twilio Communication API:

For the payment model we have used Twilio communication API. We have planned to use
sslcommerz but for low budget and server security we planned a new model, first user will
send money with username and product name, then our admin will insert a entry into the
database and a sms code will automatically send to the user.

44
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.11: Twilio Communication API Interface


4.1.2 Production Environment

We deployed our project into the pythonanywhere.com hosting server. Which provides
application services like cloud memory, and its operating system is cross-platform.

45
4.1. Environment Setup Chapter 4. Implementation and Results

Figure 4.12: PythonAnywhere

46
4.2. Testing and Evaluation Chapter 4. Implementation and Results

4.2 Testing and Evaluation

4.2.1 Testing Models

Testing is so important for the process of creating error free, reliable, readable, convenient,
easy to use projects. The main target of testing is to check how user friendly, how easy to find
information, how secure and logical the project is. We have used the conventional stages for
our web project testing.

Figure 4.13: Webproject Testing


Functional Testing:

In functional testing we have tested all the links including anchor links, page links and
outgoing links. We tested every form of our project by submitting them and also checked their
functionality. We have tested the HTML, CSS, JS files by W3C standards validation, Markup
validators and Django-HTML validation for Django integrated HTML files.

47
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Figure 4.14: Markup Validation Service

Figure 4.15: Django-HTML Validator


Usability Testing:

In usability testing we have tested our navigation, buttons, fields and we have ensured that
every page is grammatically correct, every information is valid, reviewed and every page has
a link to go to the home page. We have used the Usability Hub online tool for usability testing.

48
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Figure 4.16: Usability Hub

49
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Figure 4.17: Navigation Test

UI Testing:

We have used Katalon Studio software for our UI testing. We have used ‘Record and Replay’
mode for our automation.

Figure 4.18: Katalon Studio

50
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Compatibility Testing:

In this testing criteria we have used Browserstack Live for checking our website whether it
is good to use in cross platforms, cross browsers and will work in various databases.

Figure 4.19: Browserstack Live

Beta Testing:

For beta testing we didn’t use any service. We give our website link to 20 real users for beta
testing. We gave them some questions also and ask them for their opinion. The results are
in results and discussion section.
Performance Testing:

For testing overall performance including stress testing, load testing, endurance testing we
have used Think With Google and WebLoad Trial version.

51
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Figure 4.20: Think With Google

Security Testing:

Security testing is a crucial test for a website. We have used Mozilla Observatory Site to scan
our website for security testing. Our Future target is to use Google nogotofail and Django
referrer Policy tool for a higher grade security.

Figure 4.21: Mozilla Observatory


4.2.2 Evaluation Model

We evaluated our website following a model named TRAAP.

52
4.2. Testing and Evaluation Chapter 4. Implementation and Results

Figure 4.22: Website Evaluation Model

53
and Chapter 4. Implementation and Results

4.3. Results Discussion

4.3 Results and Discussion

The main objective of our project is to offer a web-based communication platform for the
University students of Bangladesh where they will be able to share their study related
knowledge in all kinds of renowned format, ask for problem solutions, build community, and
earn money through selling notes. We have built our project and tested it with various testing
tools in different criterias. For our proposed voice search suggestion API and auto search
suggestion feature API we have used Katalon studio. For checking the basic criteria like,
functional, security, ui/ux, performance we have used W3C validator, Mozilla observatory,
Usability hub, BrowserStack Live, Think with google tools. And our project has gone through
all the tests. In katalon studio we have used a record and replay method to create objects and
then tested that test cases and our test cases have passed. In our project the main challenge
was to implement a voice search feature, auto search suggestion and payment model. For
generating auto search suggestions we have used Jquery Auto complete API and Web Speech
API for speech recognition. In our payment model we have used Twilio Communication API
and also tested the process. For beta testing we managed 20 people to submit their opinion
and 13 of them strongly agreed that our project will be very helpful for student’s educational
purpose, 15 of them strongly agreed that our project will be a innovating source of income for
the note selling feature, 18 of them strongly agreed with our project interface is so user
friendly.

4.4 Summary

In this chapter, we first described the environment setup of our project. Here we mentioned
two types of environment setup: development and Production environment setup. Then we
defined the testing and evaluation part of our project with different models. Lastly, we wrote
about the results and discussion of our project.

Chapter 5

Standards and Design Constraints

A standard is a scientific study that ensures the component, software materials, amount,
mechanism, and services are accurate. Technical provisions, norms, stipulations, and

54
qualities are all provided by standards. Standards are generally produced through a
cooperative process and approved by various national and international enterprises, industry
organizations, and professional societies. However, Only a few developers use software
development standards. The performance provides for code enhancement and complete user
compliance, and the final program is the rationale.

5.1 Compliance with the Standards

In any organization, administration and policy ensure that things get done. Even the best
set of rules and strategies are useless if they are not followed. The act of acquiescing, goal,
or rule is referred to as compliance.

5.1.1 Software Standard

This area of the improvement plan sets standards for sustainable and streamlined software
development. The main benefit of complying with software standards is productivity.
Standards allow each software team member to work anywhere in the source code without
having to remember and follow a different programming style. Instead, a programmer might
look at a place in the source with an optimistic assumption about how the code will organize
the code, what the object is, and how to find what they need. In addition, the in-
5.1. Compliance with the Standards

struction, modification, and mutual use of the code are simplified. Here we are following a
vast system to prepare high-end software because the coding is easy to write but difficult to
debug. We followed The World Wide Web Consortium (W3C) standards for our web project.
We used HTML for web page structure and CSS, the bootstrap framework for styling, and
validate them in the W3c page validation system. We have used ’Django-HTML-validator.’
for validating generated HTML files from Django apps. We followed Django documentation
and Django web style guide for writing Django code and designing elements. We also
validated our scripting language Javascript in the W3C validator and maintained standards.

5.1.2 Hardware Standard

Hardware standards define hardware requirements that are laws or explanations that are
required for an intended purpose. Hardware standards are developed for businesses,
organizations, groups, and universities. In addition, Hardware standards help to encourage
that the elements are exchangeable and applicable with the software. Since our project is a
web-based project and we developed our project into our local machines, we didn’t follow any
specific hardware standards, and we just focused on our needs. We have used Windows 10
OS, four GB RAM, and 1 TB storage for the local machine, and in the production phase, we
choose Pythonanywhere server for deployment, and they offered us 512MB cloud space for a
free account.

55
Chapter 5. Standards and Design Constraints

5.1.3 Communication Standard

Communication standards, particularly feedback loops, are the most crucial development
process from a social and organizational perspective. A sender encodes and sends a message,
and a receiver receives, decodes, and understands that message and provides feedback to the
sender if there are effective feedback loops. The difference between clarity and confusion is
determined by having correct and particular feedback loops. Django is a back-end web
framework, so it needs a back-end server to operate, but most of the servers don’t understand
python directly. Hence, Django has two communication interface files that are responsible
for communication. One is WSGI, and another is ASGI. WSGI is responsible for
communicating between servers and applications and provides service for only synchronous
code. WSGI is the primary Python standard for communication. ASGI is mainly provided
communication facilities for asynchronous Python features.

5.1.4 Safety Standard

A software safety plan is established for the minimum acceptable requirements for the
content. For the development, acquisition, management, and retirement of safety-critical
soft-

56
Chapter 5. Standards and Design Constraints

5.2. Compliance with the Impacts

ware, this standard apply to the software safety plan. The system safety program requires
that the plan be prepared within the context. Only the safety conditions of the software being
compromised. We have followed OWASP Application Security Verification Standard for our
project. We also maintained the Django security features which are recommended by NIST.
Django security features use ’PBKDF2’ algorithm with a ’SHA256’ hash, a password
stretching mechanism.

5.2 Compliance with the Impacts

Here we have discussed the impact of our project from different perspectives.

5.2.1 Economic Impacts

In our country, unemployment is a significant issue. Most importantly, there is a lack of part-
time job options for students of our country to manage their pocket money. Students will be
able to be economically beneficial by selling their study materials through our system.
Additionally, students will be able to get help to find any inquiry about study-related
problems by communicating with one another through our system. So they will not need to
have any tutor for study purposes. As they will not have to pay the tuition fee, they will be
benefited economically. Another thing is that our platform is a knowledge-sharing platform
where people can enrich and exchange knowledge. That will play an imperative role in
improving our nation’s educational side. The more educated a nation is, the more
economically self-reliant a country will be.

5.2.2 Social Impacts

Our web system is a comprehensive platform for social networking. People from all over the
country will be able to be connected with each other through the platform. In this COVID
pandemic situation, social distancing needs to be maintained. So this platform will be an
excellent option for social communication while maintaining social distance. Since there is
also an option of collaboration of many social clubs, so social and cultural work can also be
done through this platform.

57
5.3. Cost Analysis Chapter 5. Standards and Design Constraints

5.2.3 Ethical Impacts

The site will be an excellent platform for inquiring about any correct information. Social work
through this site will help us overcome social adversity, and people will be willing to help
others. People will be able to get their merit’s value by selling their study materials.

5.2.4 Political Impact

Our software project system does not rely on government actions or decisions that do not
violate government law. Implementing a web-based management system simply follows the
government’s e-commerce policy framework. As a result, we can declare that our software
projects are free from substantive political constraints.

5.2.5 Sustainability

The idea of sustainability relies on three pillars: environmental, economic, and, therefore
the social. In other words, for software to be sustainable, it is necessary to consider all its
direct and indirect impacts on the environment, economy, and society. You should also
consider the entire life cycle of your software, from planning and conception to
programming, deployment, installation, use, and disposal. We hope that our project "
Implementation of social media among universities of Bangladesh" will be a long-term effort
that will benefit students.

5.3 Cost Analysis

5.3.1 COCOMO Model:

Based on the size of the software product, the COCOMO predicts the cost of software product
development in terms of effort (resources necessary to complete the project work) and
schedule (time required to complete the project work). In addition, it calculates the number
of Man-Months (MM) essential for the complete development of software solutions.

We follow the rules of the COCOMO model to calculate the cost and effort of our project. We
have some measurement parameters. According to our project, the number of users input is
5, the number of users output is 5, the number of users inquires is 3, the number of files is 2,
the number of external interfaces is 3. We take this as a simple problem. After that, it will
give the total count, which is 73.00.

58
5.3. Cost Analysis Chapter 5. Standards and Design Constraints

Figure 5.1: Information Domain Values

In The second step these inquiries have some points like 1 as incidental, 2 as moderate, 3 as
average, 5 as essential. Again, we have ranked these questions based on our project.
And finally, it gives us the functional points, which is 70.81.

Figure 5.2: Complexity Weighting Factors


Step three is we have to calculate the lines of code. We have selected object-oriented language
which value is 30. After choosing the programming language, it gives us the total lines of
codes which is 2124.30.

59
5.3. Cost Analysis Chapter 5. Standards and Design Constraints

Figure 5.3: Selecting Programming Language

And step four is we have to calculate the complexity of the software project. We take this
module as organic because our project is a small and simple software project handled by a
small team with sound domain knowledge and few rigid requirements. In this calculation,
we get the effort estimation of 5.29 person-month, and the time estimate is 4.71 month.

Figure 5.4: Effort Estimation and Duration

60
Chapter 5. Standards and Design Constraints

5.4. Summary

5.4 Summary

In this chapter, We firstly discussed standard and design constraints. Here we mentioned
our project’s software, hardware, communication, and safety standards. Then we discussed
the impact of our project in various fields and wrote about the sustainability of our project.
And lastly we have calculated the cost and effort of our project through the COCOMO model.

61
Chapter 6

Conclusion

6.1 Summary

In this work, we have proposed a web based social network system specifically for Bangladeshi
university students. We have included question asking, answering and knowledge sharing
features. We also included a feature which will help to reduce unemployment problems for
many students. Students can sell their own hand written notes on this proposed web based
system. We have added extra features like auto search suggestion and speech recognition
features for more user friendly and modernized web system. So this web system will be a great
platform for all the university students of our country.

In this paper, we have described our methodology, system design, analysis techniques,
Implementation, Results, Standards and Design Constraints of our project. We have
mentioned the requirements, strengths, weaknesses, threats and scopes. By doing SWOT
analysis and benchmark analysis we had found that our proposed plan is feasible and
suitable for our country. Tools and frameworks that are used in our project is shown in Figure
6.1.
6.2. Future Work Chapter 6. Conclusion

62
Figure 6.1: Tools and Frameworks used in our project

6.2 Future Work

In the future, our main target is to implement a real-time chatting system, real-time video
streaming system and integrate the easy payment SSLCOMMERZ for quick activation to
accept transactions. And we will add more features for our user’s so that they are satisfied
using our system.

6.3 Limitations

Since, we are students we don’t have enough funding to promote our project and get members.
We also don’t have any marketing specialists in our group. In future for increasing number
of members we will need big database so we also need funding to buy database in cloud.

References

[1] Mustafa I.M. Eid and Ibrahim M. Al-Jabri. Social networking, knowledge sharing, and
student learning: The case of university students. Computers Education, 99:14 – 27 ,
2016.

[2] Muhammad Imran Rasheed, Muhammad Jawad Malik, Abdul Hameed Pitafi, Jawad
Iqbal, Muhammad Khalid Anser, and Mazhar Abbas. Usage of social media, student

63
engagement, and creativity: The role of knowledge sharing behavior and cyberbullying.
Computers Education, 159:104002, 2020.

[3] Ammar Y Alqahtani and Albraa A Rajkhan. E-learning critical success factors during the
covid-19 pandemic: A comprehensive analysis of e-learning managerial perspectives.
Education Sciences, 10(9):216, 2020.

[4] Lauren A. Ricciardelli, Larry Nackerud, Adam E. Quinn, Mary Sewell, and Beatrice
Casiano. Social media use, attitudes, and knowledge among social work students: Ethical
implications for the social work profession. Social Sciences Humanities Open,
2(1):100008, 2020.

[5] Mahmoud Maqableh, Lama Rajab, Walaa Qutechate, Ra’Ed Masa’deh, Tahani Khatib,
and Huda Karajeh. The impact of social media networks websites usage on students’
academic performance. Communications and Network, 7:159–171, 09 2015.

[6] Bastien Letowski, Camille Lavayssière, Benoît Larroque, Martin Schröder, and Franck
Luthon. A fully open source remote laboratory for practical learning. Electronics,
9(11):1832, 2020.

[7] Xi Gao, Lei Yu, Houhua He, Xiaoyu Wang, and Yiwen Wang. A research of security in
website account binding. Journal of Information Security and Applications, 51:102444 ,
2020.

[8] M. A. Al-Othman, J. H. Cole, C. B. Zoltowski, and D. Peroulis. An adaptive educational


web application for engineering students. IEEE Access, 5:359–365, 2017.

References

[1] Mustafa I.M. Eid and Ibrahim M. Al-Jabri. Social networking, knowledge sharing, and
student learning: The case of university students. Computers Education, 99:14 – 27 ,
2016.

[2] Muhammad Imran Rasheed, Muhammad Jawad Malik, Abdul Hameed Pitafi, Jawad
Iqbal, Muhammad Khalid Anser, and Mazhar Abbas. Usage of social media, student
engagement, and creativity: The role of knowledge sharing behavior and cyberbullying.
Computers Education, 159:104002, 2020.

[3] Ammar Y Alqahtani and Albraa A Rajkhan. E-learning critical success factors during the
covid-19 pandemic: A comprehensive analysis of e-learning managerial perspectives.
Education Sciences, 10(9):216, 2020.

[4] Lauren A. Ricciardelli, Larry Nackerud, Adam E. Quinn, Mary Sewell, and Beatrice
Casiano. Social media use, attitudes, and knowledge among social work students: Ethical
implications for the social work profession. Social Sciences Humanities Open,
2(1):100008, 2020.

64
[5] Mahmoud Maqableh, Lama Rajab, Walaa Qutechate, Ra’Ed Masa’deh, Tahani Khatib,
and Huda Karajeh. The impact of social media networks websites usage on students’
academic performance. Communications and Network, 7:159–171, 09 2015.

[6] Bastien Letowski, Camille Lavayssière, Benoît Larroque, Martin Schröder, and Franck
Luthon. A fully open source remote laboratory for practical learning. Electronics,
9(11):1832, 2020.

[7] Xi Gao, Lei Yu, Houhua He, Xiaoyu Wang, and Yiwen Wang. A research of security in
website account binding. Journal of Information Security and Applications, 51:102444 ,
2020.

[8] M. A. Al-Othman, J. H. Cole, C. B. Zoltowski, and D. Peroulis. An adaptive educational


web application for engineering students. IEEE Access, 5:359–365, 2017.

65

You might also like