MatchMeet Documentation

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 27

A MAJOR PROJECT REPORT

ON
“MatchMeet”

Submitted in Partial Fulfillment for the award of


Bachelor of Technology in Computer Science & Engineering
(2019-2023)

Submitted to
RAJIV GANDHI PROUDYOGIKI VISHWAVIDYALAYA
BHOPAL (M.P.)

Submitted By:
Sakshi Tiwari(0302CS191065)
Shivam Sharma(0302CS191073)
Shubham Kumar Chaurasiya(0302CS191078)
Sonam Singh(0302CS191082)

Approved By Under the Guidance of


Mr.B.P. Singh Mr.D.P. Singh
(HOD CSE Department) (Asst. Prof. CSE Department)

DEPARTMENT OF COMPUTER SCIENCE & TECHNOLOGY


VINDHYA INSTITUTE OF TECHNOLOGY AND SCIENCE
SATNA (M.P.)
Rajiv Gandhi Proudyogiki Vishwavidyalaya, Bhopal (M.P)
Vindhya Institute of Technology & Science
Satna (M.P)

CERTIFICATE
This is to certify that the Major Project on
“MatchMeet” which has been completed &
submitted by Sakshi Tiwari, Shivam
Sharma, Shubham Kumar Chaurasiya
and Sonam Singh in partial fulfillment of the
requirement for the award of the degree of
Bachelor of Technology in Computer Science &
Engineering for the session 2019-2023 is a
bonafied work by them and has been completed
under my guidance and supervision.

H.O.D Guided By
MatchMeet

Mr.B.P.Singh Mr.D.P.Singh
(HOD CSE Department) (Asst. Prof. CSE Department)

Principal
Dr. P.K.Shukla

Department of Computer Science and Engineering, VITS, Satna 3


Rajiv Gandhi Proudyogiki Vishwavidyalaya, Bhopal (M.P)
Vindhya Institute of Technology & Science
Santa (M.P)

CERTIFICATE
This is to certify that the Major Project on
“MatchMeet” which has been completed &
submitted by Sakshi Tiwari, Shivam Sharma,
Shubham Kumar Chaurasiya and Sonam Singh
in partial fulfillment of the requirement for the
award of the degree of Bachelor of Technology
in Computer Science & Engineering for the
session 2019-2023.

(External Examiner) (Internal Examiner)


DECLARATION
We hereby declare that the work which is being presented in the project
report entitled “MatchMeet” partial fulfillment of the requirement of the
degree of “Bachelor of Technology in Computer Science & Engineering”
branch is an authentic record of our work carried out under the guidance of
“Mr.D.P.Singh”. The work has been carried out at Vindhya Institute of
Technology & Science, Satna.

Project Associate
Sakshi Tiwari (0302CS191065)
Shivam Sharma(0302CS191073)
Shubham Kumar Chaurasiya(0302CS191078)
Sonam Singh(0302CS191082)
ACKNOWLEDGEMENT
A project like this one involves many people and would be incomplete without
the mention of all those people whose guidance and encouragement helped in the
successful completion of this project.
I would like to express my sincere and deep sense of gratitude from my heart to
my guide and project coordinator Mr.D.P.Singh, Assistant Professor, VITS, Satna
(M.P.), for his help supervision and encouragement as a guide throughout the course of
this investigation.
With great pleasure and deep sense of gratitude I would like to express my special
thank to Mr.B.P.Singh, Head of Department of Computer Science & Engineering, VITS,
Satna, for his erudite guidance, affectionate encouragement and wholehearted
involvement in my thesis, without which it would have been difficult for me to complete
this work. I am fortunate to be his student.

I would like to take this opportunity to offer my special thank to Mr. Sunil Senani,
Chairman, VITS, Satna for his constant encouragement and bearing with me and light up
my path. I express my deepest gratitude to Dr.P.K.Shukla, Principal of the VITS, Satna
for encouragement, useful suggestions and inspiration for completing my thesis. I would
like to express the special thanks to all faculty members and the staff of the Department
of Computer Science. They are excellent teacher and have inspired me to continue
learning with an open and positive mind. I express my heartfelt gratitude to my friends
and also to each and every individual who was associated with my work, including those
whom I may have inadvertently failed to mention.

Finally, I am highly obliged to all my family members for their support and blessings.

Sakshi Tiwari(0302CS191065)
Shivam Sharma(0302CS191073)
MatchMeet

Shubham Chaurasiya(0302CS191078)
Sonam Singh(0302CS191082)

Department of Computer Science and Engineering, VITS, Satna 3


MatchMeet

Table of Content

3-4
CHAPTER 1 INTRODUCTION
1.1 Evaluation of System 3
1.2 Problem definition 3
1.3 Proposed System 3-4
1.4 Scope of work/project 4

5-6
CHAPTER 2 LITERATURE SURVEY
2.1Presently available system 5
2.2 Title/ Article 5-6
7-9
CHAPTER 3 ANALYSIS
3.1 Requirement Analysis 7
3.2 Use-Case Diagram 7

3.3 Use-Case Description 8


3.4 Sequence Diagram 8

3.5 Activity Diagram 9


10-15
CHAPTER 4 DESIGN
4.1 Object Oriented Design 10-11
4.2 System Flow diagram 11
4.3 Class Diagram 12.
4.4 Class Description 12-13
4.5 Data Model 13

4.5.1 Data Flow Diagram(DFD) 14


4.5.2 Entity Relationship Diagram (ERD) 15
16-17
CHAPTER 5 IMPLEMENTATION AND TESTING
5.1 Testing Strategies adapted 16
5.2 System Testing 17

Department of Computer Science and Engineering, VITS, Satna 1


MatchMeet

18
CHAPTER 6 CONCLUSION AND FUTURE WORK
18
References
Appendix A Software Requirement Specification (SRS) 19
Appendix B Screenshots 19-20

Department of Computer Science and Engineering, VITS, Satna 2


MatchMeet

CHAPTER 1 INTRODUCTION

1.1 Evaluation of System

The dating application developed using Angular and Dotnet Web API is a comprehensive
platform that allows users to communicate with each other and like each other's photos.
The system's functionality was thoroughly tested, and it was found to be working
efficiently. Users can create profiles, upload photos, search for other users, and
communicate with each other using the messaging feature. The system also provides a
seamless experience for users to like each other's photos.

The user interface of the dating application is user-friendly, intuitive, and easy to
navigate. The design is simple and straightforward, with clear instructions for each
feature. The messaging feature is particularly impressive, as it allows users to
communicate with each other seamlessly. The response time of the system is quick, and
the pages load smoothly without any lag, providing a seamless user experience.

1.2 Problem definition


The world of online dating can be overwhelming and frustrating for many users. Existing
dating applications often lack user-friendly features and can be unreliable or inefficient,
leading to a poor user experience. Furthermore, users may face issues such as fake
profiles, spam messages, and a lack of privacy and security.
MatchMeet aims to address these issues by providing users with a modern and efficient
dating application that offers a comprehensive set of features designed with the user
experience in mind. The application is developed using a combination of technologies
that provide a robust and reliable platform for finding and connecting with potential
partners. Additionally, MatchMeet employs measures to ensure user privacy and security,
reducing the risk of encountering fake profiles or spam messages. In summary,
MatchMeet seeks to solve the problems associated with existing dating applications by
providing users with a reliable, user-friendly, and efficient platform for finding and
connecting with potential partners while prioritizing user privacy and security.

1.2 Proposed System


The goal of this project is to develop a dating application using Angular, Razor, HTML,
CSS, JS, Asp.net MVC and MongoDB technologies. The dating app is designed to allow
users to find potential matches based on their preferences, interests, and location. The app
offers a user-friendly interface that allows users to create profiles, browse profiles of
other users, and send messages to those they are interested in.

Department of Computer Science and Engineering, VITS, Satna 3


MatchMeet

The application provides users with a seamless experience, allowing them to easily
search for and connect with other users. The app also includes features like chat, push
notifications, and location-based search, which enhances the user experience and makes it
easier to find potential matches.

The overall idea behind the project is to connect people and increase the social interaction
among the adults. The application is designed and is loaded with the astonishing features
like live one-on-one chat, like profile, updating profile information etc.

1.4 Scope of work/project

The proposed work for MatchMeet includes the development and implementation of key
features such as live one-on-one chat, user profile creation and updating, liking profiles,
and robust security measures. Additionally, we plan to integrate MongoDB for seamless
data management and scalability. Our goal is to provide a user-friendly and secure dating
application that meets the needs and expectations of modern dating app users.

Department of Computer Science and Engineering, VITS, Satna 4


MatchMeet

CHAPTER 2 LITERATURE SURVEY

2.1Presently available system

Currently, there are several dating applications available that allow users to communicate
with each other and like each other's photos. Some popular examples include Tinder,
Bumble, Hinge, OkCupid, and Match. These platforms use various technologies,
including Angular and Dotnet Web API. Each platform has unique features and
functionalities that cater to different user preferences. However, the core functionality of
these platforms remains the same, which is to connect people looking for romantic
relationships online.

2.2 Title/ Article


MatchMeet
The emergence of online dating platforms has transformed the way individuals meet and
connect with potential partners. MatchMeet, a novel dating application, is an embodiment
of this evolving landscape. This article presents a comprehensive literature survey,
exploring the advancements and impact of online dating platforms, with a particular
focus on the unique features and user experience offered by MatchMeet.

Evolution of Online Dating:


Historical Overview: Delve into the history of online dating, tracing its origins from early
computer-based matchmaking experiments to the rise of internet dating websites and the
subsequent advent of mobile dating applications.
Societal Implications: Explore the sociological impact of online dating platforms,
discussing how they have altered social norms, relationship dynamics, and the concept of
dating itself.

Key Features and Functionality:


Matching Algorithms: Investigate the various matching algorithms used by online dating
platforms, analyzing their effectiveness in predicting compatibility and facilitating
successful matches.
Communication and Interaction: Examine the communication tools provided by dating
applications, such as real-time chatting, video calls, and virtual gifts, and assess their
impact on fostering connections and building relationships.

Department of Computer Science and Engineering, VITS, Satna 5


MatchMeet

User Experience and Interface Design:


User Profiles: Analyze the evolution of user profiles in online dating platforms, from
simple text-based profiles to more interactive and visually appealing representations, as
exemplified by MatchMeet’s user profiles.

Gamification and Engagement: Discuss the incorporation of gamification elements in


dating applications, exploring how features like swiping, profile liking, and personalized
recommendations enhance user engagement and satisfaction.
Privacy and Security Considerations:

Data Privacy: Highlight the significance of data privacy in online dating platforms,
examining the measures employed by MatchMeet to ensure user confidentiality, secure
data storage, and protection against fraudulent activities.
User Safety: Address the issue of user safety, including the implementation of
verification processes, reporting mechanisms, and moderation systems to mitigate risks
associated with online interactions.

Future Directions and Challenges:


Technological Advancements: Explore emerging technologies like artificial intelligence,
virtual reality, and augmented reality that have the potential to reshape the online dating
landscape and envision how MatchMeet might leverage these advancements.
Trust and Credibility: Discuss the challenges faced by online dating platforms in
establishing trust and credibility among users, and suggest strategies to overcome these
obstacles.

CHAPTER 3 ANALYSIS

3.1Requirement Analysis

Before developing MatchMeet, our team conducted a comprehensive literature survey to


gain insights into existing dating applications and best practices in the industry. The
survey included research on user behavior and preferences, as well as an analysis of
popular dating apps such as Tinder, Bumble, and Hinge.
One key finding from the survey was that users prioritize safety and privacy in dating
apps. To address this concern, MatchMeet was designed with robust security features,

Department of Computer Science and Engineering, VITS, Satna 6


MatchMeet

including a two-factor authentication process, encrypted messaging, and the ability to


block and report users.
The survey also identified the importance of user engagement and interaction in dating
apps. To encourage engagement, MatchMeet features a live one-on-one chat functionality
and the ability to like profiles.

These features were informed by research on user behavior and preferences, which
showed that users appreciate the ability to connect and interact with others in a dating
app.
Additionally, the survey highlighted the importance of using the latest technologies and
tools in app development. As a result, MatchMeet was built using Angular, Razor,
HTML, CSS, JS, Asp.net MVC, SQLite, and MongoDB. These technologies were chosen
for their ability to provide a seamless user experience and enable scalability and
flexibility.
By conducting a literature survey, our team was able to gain insights into best practices
and key factors that contribute to the success of a dating app. These insights informed the
development of MatchMeet and ensured that it meets users' needs and expectations.

3.2 Use-Case Diagram

Sign Up or Login

Live chatting

Profile Creating/
Updating
User
Profile Liking

Department of Computer Science and Engineering, VITS, Satna 7


MatchMeet

3.3 Use-Case Description

Name: Communication Between Users

Actor: User

Description: The user can communicate with other users on the platform through a
messaging feature.

Pre-conditions: The user has installed the application and created an account, and has
identified another user they would like to communicate with.

Basic Flow:

The user finds the profile of the user they want to communicate with.
The user clicks on the messaging icon on the user's profile page.
The user types in their message and sends it to the other user.
The other user receives the message and can respond.

Alternate Flow:

If the other user is not interested in communicating, they can choose to ignore or block
the user.
Post-conditions: The user has communicated with another user on the platform and can
continue the conversation as desired. The messaging feature facilitates communication
between users and allows them to get to know each other better before deciding to meet
in person.

3.4 Sequence Diagram

Start Profile visiting Profile Liking Chatting

End

Department of Computer Science and Engineering, VITS, Satna 8


MatchMeet

3.5 Activity Diagram

Changing DP

Profile
Updating
Editing Bio

Login End

Liking photo

Search new
user

Chatting

Department of Computer Science and Engineering, VITS, Satna 9


MatchMeet

CHAPTER 4 DESIGN

4.1 Object Oriented Design

MatchMeet follows an object-oriented design approach, utilizing key principles such as


encapsulation, inheritance, and polymorphism to create a robust and maintainable
codebase. The application is structured using various classes and objects, each serving a
specific purpose and encapsulating related data and functionality. Here are the key
components of the object-oriented design in MatchMeet:

Class Hierarchy:

User Class: Represents a user in the MatchMeet system and contains properties such as
name, age, interests, and photos. It encapsulates user-related functionality like profile
management, messaging, and interactions.
Match Class: Represents a potential match between two users and includes properties like
compatibility score and common interests. It encapsulates the logic for determining
match compatibility.
Chat Class: Represents a chat session between two users and includes properties like
participants, messages, and timestamps. It encapsulates the functionality for real-time
messaging and chat interactions.
Inheritance:

User Class Inheritance: The User class serves as a base class for different user types, such
as Basic User and Premium User. The derived classes inherit common properties and
methods from the User class while allowing for additional features specific to each user
type.
Chat Class Inheritance: The Chat class may have derived classes for different types of
chats, such as Private Chat and Group Chat, inheriting common chat functionalities and
extending them as needed.
Polymorphism:

User Interface Polymorphism: MatchMeet employs polymorphism to provide a consistent


user interface for various user types. Different user types may have different features and
permissions, but they all interact with the system through a unified user interface.
Encapsulation:

User Profile Encapsulation: The User class encapsulates profile-related data and
functionality, ensuring that profile information is properly stored, retrieved, and updated.
It provides methods for accessing and modifying user attributes while enforcing data
integrity and privacy.
Relationships and Associations:

Association between User and Match: The User class maintains associations with
potential matches through the Match class. It allows users to view their matches and

Department of Computer Science and Engineering, VITS, Satna 10


MatchMeet

interact with them based on the match compatibility information stored in the Match
objects.
Association between User and Chat: The User class is associated with chat sessions
through the Chat class. It enables users to engage in real-time conversations and access
their chat history.
The object-oriented design of MatchMeet promotes modularity, reusability, and
maintainability. It allows for extensibility and flexibility in adding new features and user
types in the future. By following established design principles and leveraging the power
of object-oriented programming, MatchMeet achieves a scalable and well-structured
codebase.

4.2 System Flow diagram

Department of Computer Science and Engineering, VITS, Satna 11


MatchMeet

4.3 Class Diagram

User Class

Name
Bio
Photos

updateProfile()
sendMessage()

Photo Class
Chat Class
Photo URL
Participants
Metadata
Messages
updatePhoto()
sendMessage()
removePhoto()
getChatHistory()

End

4.4 Class Description

The class diagram in MatchMeet provides a visual representation of the system's static
structure, illustrating the classes, their relationships, and key attributes and methods. It
helps in understanding the organization and interactions between different classes in the
application. Here's a description of the main classes and their associations in the
MatchMeet class diagram:

User Class:
Description: The User class represents a user in the MatchMeet system. It encapsulates
user information, such as name, age, interests, and photos.
Attributes:

Department of Computer Science and Engineering, VITS, Satna 12


MatchMeet

name: The name of the user (string)


age: The age of the user (integer)
interests: A list of user interests (array of strings)
photos: A collection of user photos (array of photo objects)
Methods:
updateProfile(): Allows the user to update their profile information.
getMatches(): Retrieves a list of potential matches for the user based on compatibility.
sendMessage(): Sends a message to another user.

Chat Class:
Description: The Chat class represents a chat session between two users. It facilitates
real-time messaging and communication.
Attributes:
participants: The users participating in the chat (array of User objects)
messages: A collection of messages exchanged in the chat (array of message objects)
Methods:
sendMessage(): Sends a message in the chat.
getChatHistory(): Retrieves the chat history between the participants.

Photo Class:
Description: The Photo class represents a user photo in MatchMeet. It includes attributes
like the photo URL and metadata.
Attributes:
url: The URL of the photo (string)
metadata: Additional metadata associated with the photo (string)

These are the main classes depicted in the class diagram, showcasing their attributes and
methods. The relationships between these classes, such as associations between User and
Match, User and Chat, and the composition between User and Photo, contribute to the
overall functionality of the MatchMeet system. The class diagram provides a clear
understanding of the system's structure and aids in the development and maintenance of
the MatchMeet application.

4.5 Data Model

Matchmeet utilizes a comprehensive data model to organize and manage the application's
data. The data model represents the structure, relationships, and constraints of the
database entities.

4.5.1 Data Flow Diagram (DFD)


Data Flow diagram (DFD) is a graphical representation of the “flow” of data through an
information system, modeling is process aspects or it provides a visual representation of
the flow of information within a system. A data Flow diagram (DFD) shows what kind of
information will be input to and output from the system, how the data will advance
through the system, and where the data will be stored.

Department of Computer Science and Engineering, VITS, Satna 13


MatchMeet

User Profile Services

Home page

Connection Services

Level 0 DFD

Update Profile
Photo

Profile Services

Update Bio

Level 1 DFD

Liking Photo

Connection Services

Chatting

Level 2 DFD

Department of Computer Science and Engineering, VITS, Satna 14


MatchMeet

4.5.2 Entity Relationship Diagram (ERD)

interest
chat_id P1
age

User doe Chat


s

chat_id P2
user_id

Profile_phot
contain
o s

chat_id

content Message

message_id
sender_id

Department of Computer Science and Engineering, VITS, Satna 15


MatchMeet

CHAPTER 5 IMPLEMENTATION AND TESTING

5.1 Testing Strategies adapted

Unit Testing:
Description: Unit testing focuses on testing individual components or functions in
isolation to ensure they work correctly.
Approach: We have developed unit tests for critical functions and methods within our
project. These tests verify the expected behavior of specific components, helping us
identify and fix any bugs or issues early in the development process.

Integration Testing:
Description: Integration testing validates the proper interaction and communication
between different modules of the project.
Approach: We have conducted integration tests to verify that the different modules of our
project work together seamlessly. These tests ensure that data flows correctly and that the
modules communicate and integrate as intended.

User Interface (UI) Testing:


Description: UI testing focuses on validating the graphical user interface and ensuring a
smooth user experience.
Approach: We have performed UI testing to verify the functionality and usability of our
project's user interface. These tests ensure that buttons, forms, and navigation elements
work correctly, providing users with an intuitive and enjoyable experience.

System Testing:
Description: System testing evaluates the overall functionality and performance of the
complete project.
Approach: We have conducted comprehensive system tests to assess the overall
functionality, performance, and reliability of our project. These tests simulate real-world
usage scenarios to identify and address any issues or bugs that may arise in the entire
system.

By employing these testing strategies, we aim to deliver a high-quality and reliable


college major project. These tests help us identify and resolve any issues, ensuring that
our project meets the requirements and expectations of our stakeholders.

5.2 System Testing

System testing plays a critical role in ensuring the overall functionality, performance, and
reliability of the MatchMeet application. The following testing activities have been
conducted as part of our system testing strategy:

Functional Testing:

Description: Functional testing is performed to validate the system's functionality and


ensure it meets the specified requirements.

Department of Computer Science and Engineering, VITS, Satna 16


MatchMeet

Approach: We have executed comprehensive functional tests that cover all the features
and functionalities of MatchMeet. These tests verify that users can successfully perform
actions such as creating profiles, liking other profiles, initiating chats, and updating their
information. We ensure that all functions work as intended and produce the expected
outcomes.
Performance Testing:

Description: Performance testing evaluates the responsiveness and scalability of the


MatchMeet application under various load conditions.
Approach: We have conducted performance tests to measure the system's response time,
resource utilization, and stability. By simulating a high number of concurrent users and
stress scenarios, we identify any performance bottlenecks or issues. These tests help us
ensure that MatchMeet can handle the expected user load and deliver a smooth user
experience even during peak usage.
Compatibility Testing:

Description: Compatibility testing is performed to verify that MatchMeet functions


correctly across different devices, browsers, and operating systems.
Approach: We have conducted compatibility tests on various platforms, including
popular web browsers (Chrome, Firefox, Safari), different operating systems (Windows,
macOS, iOS, Android), and different screen sizes. These tests help us identify and
address any compatibility issues to ensure that MatchMeet is accessible and usable across
a wide range of devices and configurations.
Security Testing:

Description: Security testing is conducted to identify and address potential vulnerabilities


and ensure the protection of user data.
Approach: We have implemented security testing measures to assess the robustness of
MatchMeet's security features. These tests involve conducting penetration testing,
vulnerability scanning, and checking for secure data transmission and storage practices.
Our goal is to ensure that user data is secure and that MatchMeet adheres to industry best
practices for security and privacy.
By incorporating these system testing activities, we aim to deliver a reliable, high-
performing, and secure dating application with MatchMeet. These tests help us identify
and resolve any functional, performance, compatibility, or security issues, ensuring that
our users can enjoy a seamless and secure experience on the platform.

Department of Computer Science and Engineering, VITS, Satna 17


MatchMeet

CHAPTER 6 CONCLUSION AND FUTURE WORK

6.1 References

1. Learn Angular - Full Tutorial Course


2. Razor Pages for ASP.NET Core - Full Course (.NET 6)
3. Complete MongoDB Tutorial

Department of Computer Science and Engineering, VITS, Satna 18


MatchMeet

Appendix A Software Requirement Specification (SRS)

1.Visual Studio
2. MongoDB Compass
3. VS code

Appendix B Screenshots
Register Form

Department of Computer Science and Engineering, VITS, Satna 19


MatchMeet

Dashboard

Profile Page

Department of Computer Science and Engineering, VITS, Satna 20

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy