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

UNIVERSITI TEKNOLOGI MARA

MOBILE APPLICATION PLATFORM


TO STRENGTHEN UKHUWAH
AMONG MUSLIM STUDENTS

HALIMATUN SA’DIAH BT ROSMI

BACHELOR OF INFORMATION
TECHNOLOGY (HONS)

JANUARY 2023
Universiti Teknologi MARA

Mobile Application Platform


to Strengthen Ukhuwah
among Muslim Students

Halimatun Sa’diah Bt Rosmi

Thesis submitted in fulfilment of the requirements


for Bachelor of Information Technology (Hons.)
College of Computing, Information and Media

January 2023
SUPERVISOR APPROVAL

Mobile Application Platform


to Strengthen Ukhuwah
among Muslim Students

By

HALIMATUN SA’DIAH BT ROSMI


2020845226

This thesis was prepared under the supervision of the project supervisor, Ts. Dr.
Norziana Binti Yahya. It was submitted to the Faculty of Computer and Mathematical
Sciences and was accepted in partial fulfilment of the requirements for the degree of
Bachelor of Information Technology (Hons).

Approved by

JANUARY 20, 2023

i
STUDENT DECLARATION

I certify that this thesis and the project to which it refers is the product of my own work
and that any idea or quotation from the work of other people, published or otherwise
are fully acknowledged in accordance with the standard referring practices of the
discipline.

Halimatun
………………..
HALIMATUN SA’DIAH BT ROSMI
2020845226

JANUARY 20, 2023

ii
ACKNOWLEDGEMENT

Alhamdulillah, thanks to Allah, praise to His Almighty and His greatest bounties, with
Allah wills, I was able to complete this project proposal within the allotted time frame.
Without His mercy, I might have lost track of my goal to finish this endeavour.
I want to start by thanking my honourable supervisor, Ts. Dr. Norziana Bt Yahya for
all the advice, guidance, and support throughout the procedure to finish the proposal.
This project also would never be finished without the knowledge, helpful suggestions,
guidance, and assistance supplied by my project coordinator Ts. Sir Noorfaizalfarid
Bin Mohd Noor, who also my lecturer for CSP600 Project Formulation subject.
Finally, I want to express my gratitude to everyone who responded and offered to
donate their time to this project and helping me throughout the process.

iii
ABSTRACT

This paper provides the explanation of the planning to develop the mobile application
to find friends for Muslim students with the Dating Apps concept by using
matchmaking as the recommending system to pair each of the users who used this
mobile app. It explains the problem statements, objectives of the study, scopes of the
project, it is also included in the literature review on matters related to the needs of
developing the mobile application. Process engine of the matchmaking algorithm,
system activities by using flowchart, use case diagram and a few diagrams from some
resources. The benefits of this Mobile Application are it will assist students to find a
good friends, it applies the Islamic teaching and guidelines concept by helping Muslim
student who want to migrate to be a better Muslim can find the right circle.

iv
TABLE OF CONTENT

CONTENT PAGE

SUPERVISOR APPROVAL i

STUDENT DECLARATION ii

ACKNOWLEDGEMENT iii

ABSTRACT iv

TABLE OF CONTENT v

TABLE OF FIGURES viii

LIST OF TABLES x

CHAPTER 1: INTRODUCTION 1
1.1 Background of Study 1
1.2 Preliminary Study 2
1.2.1 Findings 3
1.2.2 Conclusion 9
1.3 Problem Statement 10
1.4 Research Questions 11
1.5 Research Objectives 11
1.6 Research Scope 11
1.7 Research Significance 12

CHAPTER 2: LITERATURE REVIEW 13


2.1 Social Media Platform for Muslim 13
2.2 Comparison the advantages between Mobile Application and Web
Application 14
2.3 Mobile application technology 17

v
2.4 Types of Mobile Applications 17
2.5 Mobile Application Design and Architecture 19
2.5.1 Social Matching Concept 23
2.5.2 Matching algorithm 24
2.5.3 Basic algorithm 27
2.6 Database for Mobile Apps 29
2.7 Related Works 31
2.7.1 Baituljannah Muslim Spouse Finder Application 31
2.7.2 Tinder Mobile Dating Application 32
2.7.3 Bumble Mobile Dating Application 33
2.8 Summary 34

CHAPTER 3: METHODOLOGY 35
3.1 Software Development Life Cycle (SDLC) 35
3.2 Agile Methodology 35
3.3 Phases in Agile Methodology 37
3.3.1 Analysis Phase 42
3.3.2 Design Phase 43
3.3.2.1 Use Case Diagram 44
3.3.2.2 Flowchart 45
3.3.2.3 System matching algorithm diagram 46
3.3.3 Development Phase 48
3.3.4 Testing phase 49
3.3.5 Documentation phase 50
3.3 Gantt Chart 52
3.4 Summary 52

REFERENCES 53

APPENDICES 57

APPENDIX A: DEMOGRAPHIC 57

vi
APPENDIX B: SELECTED QUESTIONS 60

vii
TABLE OF FIGURES

Figure 1.1 Respondents’ agreement towards difficulty to find good friend 4


Figure 1.2 Effect lacking good friends from respondents’ answers 5
Figure 1.3 Agreement towards the impact of ukhuwah that lead to positive life 5
Figure 1.4 Agreement towards the effect of lacking love and attention towards their
study purpose 6
Figure 1.5 Responses towards agreement of the importance of strong ukhuwah 7
Figure 1.6 Responses towards agreement of does pious friend can help their friend 7
to be closed to their religion 7
Figure 1.7 Responses towards good friend’s type 8
Figure 1.8 Responses towards necessity of mobile application platform to assist them
find a good friend 9
Figure 2.1 Mobile application vs browser daily spent time by US mobile device users
16
Figure 2.2 Statistic of mobile application design contribution to app retention 19
Figure 2.3 Mobile application architecture 20
Figure 2.4 The Clean Architecture for Android Applications 22
Figure 2.5 Comparison of two different interfaces on contextual information to
match users 23
Figure 2.6 Matching problems classifications, inclusions, and typical cases 24
Figure 2.7 An illustration of student-school matching (Explicit Matching) 26
Figure 2.8 An example of how to suggest music to people (Implicit Matching) 27
Figure 2.9 Pseudocode for basic algorithm for matching 28
Figure 2.10 Flowchart of matching algorithm based on interest 29
Figure 2.11 Baituljannah mobile application logo and Mobile App UI 32
Figure 2.12 Tinder’s logo and Mobile App UI 33
Figure 2.13 Bumble logo and Mobile App UI 34
Figure 3.1 Agile SDLC 36

viii
Figure 3.2 The Agile Manifesto's Core Values 37
Figure 3.3 The primary steps in an Agile Workflow 37
Figure 3.4 Steps’ activities in Agile phases 39
Figure 3.5 Agile iterations (Sprint) 40
Figure 3.6 Agile Software Development Model for this project 40
Figure 3.7 Use Case Diagram of this project 45
Figure 3.8 Flowchart of this project 46
Figure 3.9 System matching algorithm in this project 48
Figure 3.10 Gantt Chart for this project 52

ix
LIST OF TABLES

Table 2.1 Mobile application and website comparison .............................................. 14


Table 2.2 Summarisation of explicit and implicit matching algorithms and applications
............................................................................................................................ 25
Table 3.1 Typical agile workflow steps and its’ description ..................................... 38
Table 3.2 Agile SDLC phases with description for this project ................................ 41
Table 3.3 Analysis phase process............................................................................... 43
Table 3.4 Design phase process ................................................................................. 44
Table 3.5 Development phase process ....................................................................... 49
Table 3.6 Tools that will be used to develop the project ........................................... 49
Table 3.7 Testing phase process................................................................................. 50

x
CHAPTER 1

INTRODUCTION

This chapter presents the background of study of this research, preliminary study method
that has been conducted, problem statement that want to be solved, objective of the
research, research questions, research scopes and research significance.

1.1 Background of Study

Ukhuwah which is known as brotherhood comes from the meaning of meant


to notice. This term bringing up that brotherhood or sisterhood needs a lot of attention
to focus on its (Rahmi, 2018). Ukhuwah is the force of spirituality and faith that creates
a strong sense of love, honour, and trust between those who are connected by Islamic
Aqeedah, faith, and piety. Islam's concept of ukhuwah binds people together and
fosters a sense of mutual need and peace in daily life (Suriati et al., 2020).

In one research about the frequency of respondents' substantial associations


with the stimulus of love, they got the response result that show trust had the highest
frequency and rank 1 (12.54%), as stated by 84 respondents (Petyak et al., 2022). This
prove that human tend to love more toward someone that they have trust towards their
companion or people around them. People who are honest will produce trustworthy
traits later in life (Setyowati, 2019, as cited in Rahayu, 2021).

Thus, to find a trust person, we can get from an honest person. An honest
people follow the prophet Muhammad S.A.W. because the Messenger of Allah has
noble qualities which is Shidiq that means as honest (Rahayu, 2021). Thus, an honest
person exists in kind and good people. However, not all people manage to get many
good friends in their life based on the fact peer’s agreement towards bad influences

1
can also trigger students to do the bad things especially on social issues (Fattah et al.,
2021).

There are few problems that lead to this research, peers are external factor that
able to influence teenagers (Bakar & Hamzah, 2019)and give good and bad influences,
but bad influences are stronger than good influences (Habollah et al., 2019). This led
to the first problem, many students tend to get wrong peers at university due to the
strong negative influences as mentioned above. It is also not easy to find a good friend
for a student because it is also depending on their religion belief. If they have a strong
identity, they will feel more encourage to make good decisions. However, if their
personality traits are weak, they may deviate from morality and engage in harmful
behaviour societal norm violations, including social issues (Azlina 2012; Zanariah et
al., 2016, as cited in Bakar & Hamzah, 2019). Lastly, students spend time on social
media more compare to their commitment as student (Habollah et al., 2019). This
shows that students often wasting their time with unbeneficial social media platform.

Thus, this project is to build the application that can gather all students from
various backgrounds that want to get a good and religious friend to build strong
ukhuwah between them. In addition, this project objectively focusing on solving the
problem of having difficulty to find an online platform to find a good friend, getting
wrong peers at university, wasting time on wrong social media platform among
students. By developing this app, it can encourage students to be a better Muslim when
they succeed in finding good friends.

1.2 Preliminary Study

Preliminary study is the method to help a researcher get better understanding


of the topic and available sources as their material to support their research. This
method can assist solidify the research topic either by broadening or narrowing it down
(Jessica, 2021). This preliminary study is to analyse the problem between students and
the problem in getting good friends and the needs of platform to assist them in solving
problem. Many students are having problem to get pious friend but without conducting
a survey on it, there is no solid evidence to prove the existence of this problem does
really occur among Muslim students.

2
This preliminary study was conducted on online platform by using google form
as the platform for respondents to answer the questions of the survey and the tools to
collect the data. WhatsApp as social media platform was used in this study to spread
the google form link to get respondents. Together with the google form link, the spread
sentence of explaining the purpose of this survey also inserted to get higher trust from
the respondents to give their cooperation in this survey.
In this survey, Google form has been used and it has two sections which is
section A is the demographic questions that have been inserted in Appendix A and
section B is the questionnaire that have been inserted in Appendix B. In the section A,
information of the respondents that have been asked are gender, age, education level
and from what education institution they come from. For section B, questionnaire or
survey section, there are 11 questions that have been asked in the survey.
As a summary, this preliminary study is very important as the prove of the
problems that lead to this study to solve the problems that occur among students’ life
right now.

1.2.1 Findings

In the demographic section for this preliminary study, 4 questions have already
been asked in the survey, first is gender, the second is age, third is education level and
fourth is their study institution. The result of the respondents’ demographic can be
referred to in Appendix A.

Figure 1.1 shows that 82.6% respondents agree that students are having
problem to find a good friend that can guide them to be a better Muslim when they get
the consciousness to improve their faith. The question that has been asked was focused
on among strangers because a migrate student usually have friends that lack in guiding
them towards religion, thus searching for another environment to build a new self-
identity is a must, this relates with one of the meaning of migrate itself from Islamic
perspective which is turn away from all that is evil and toward that which is good in
order to draw nearer to Allah SWT and the Prophet Muhammad S.A.W (Hajimin et al.,
2019).

3
Figure 1.1 Respondents’ agreement towards difficulty to find good friend

Figure 1.2 shows that many answers were given by the 46 respondents on this
question. In this result answers of the respondents, it can be categorized as two
categories which are first, religious answer, second non-religious answer. It shows that
37% get the highest chosen from respondents that represent 17 from 46 respondents
choose ‘lack good friend led them to neglect in performing their obligations’ as a
Muslim followed by second highest 21.7% respondents that chose ‘I cannot study very
well’ and followed with other effects that stated by the respondents.

As this result, 22 of the respondents choose religious answer which is 1


responded lack of good friend make her/him think religion does not important and
another 4 choose they lack in understanding on Islam. The remain answers with 10
respondents chose ‘cannot study very well’, 9 respondents choose ‘I feel in toxic
relationship’ and another 4 different personal answers are under the non-religious
answer. From the variety of respondents answers, it can be concluded that many
impacts on lacking good friends can influence the students’ life.

4
Figure 1.2 Effect lacking good friends from respondents’ answers

Figure 1.3, 54.3% followed by 30.4% respondents strongly agree and agree with
the statement respectively. If we combine this positive response, it will become 39 of 46
respondents as the majority response agree with this statement. Thus, this shows that
ukhuwah is very important for a student as they also believe that it leads to the positive
and good life.

Figure 1.3 Agreement towards the impact of ukhuwah that lead to positive
life

Figure 1.4 shows 34.8% and 17.4% are in same category which is both respondents’
answers are agree towards the statement. The combination of the percentage agreement
shows the positive result of majority respondents agree that love and attention are two

5
elements that are important in students’ life to ensure students always on their track of study
purpose.

Figure 1.4 Agreement towards the effect of lacking love and attention
towards their study purpose

Figure 1.5 shows that 47.8% and 32.6% respondents strongly agree and agree
respectively. This shows that majority of the respondents agree that strong ukhuwah is
very important to save Muslim students from bad influences.

6
Figure 1.5 Responses towards agreement of the importance of strong
ukhuwah

Figure 1.6 shows 52.2% respondents agree pious friend can help them be
closer to religion. However, the second percentage which is 45.7% respondents choose
‘maybe’ because they were not sure with this statement as the faith cannot be
transferred towards other people, the possibility of a pious can influence their friends
to be close to religion might be higher compared to non-pious one but it also cannot
be said as 100%. Thus, this result shows that a pious friend has stronger ability to help
their friend to migrate or become better person towards religious beliefs.

Figure 1.6 Responses towards agreement of does pious friend can help their
friend to be closed to their religion

7
Figure 1.7 shows 84.8% respondents choose the suggested answer ‘have good
akhlaq and understanding of religion’ as the friend’s type that they think can be
categorized as good friend for them, other answers still choose same kind of answer
which is from religious perspective but in their own words and only a few choose non-
religious answer. Thus, it can be concluded that majority of students deem that a good
friend is someone who obey their religion obligations and show the good akhlaq or
morality and understands the religion.

Figure 1.7 Responses towards good friend’s type

Figure 1.8 shows 71.7% respondents choose ‘Yes’ that mobile application
platform to find a good friends for a student is vital followed with 17.4% respondents
choose ‘No’ with the question followed with other minority answers. Thus, this prove
that many students need a correct platform to find a good friend and this research will
help to solve their problem.

8
Figure 1.8 Responses towards necessity of mobile application platform to
assist them find a good friend

1.2.2 Conclusion

As the conclusion of the result of 8 pie charts above, first, its support that this
research has it owns significant to solve the students’ problem in finding good friends.
Second, it proves that lack of good friends leads to many negative impacts of students’
life. Third, ukhuwah is very important for a student as they also believe that it leads to
the positive and good life. Forth, lacking love and attention are factors that needed by
students to stay enthusiastic to reach their study goals. Fifth, strong ukhuwah is vital
because many students need it as they can see based on their perspective and
experience that it assists in putting them away from negative impacts. Sixth, a pious
friend has stronger ability to help their friend to migrate or become better person
towards religious beliefs. Seventh, respondents believe a good friend is someone who
obey their religion obligations and show good akhlaq or morality and understands the
religion. Eighth, respondents agree that it is necessary to has a platform that enable
them as the student to find a good friend.

9
1.3 Problem Statement

Student interactions are among the school elements that influence learning
of the student (Kurniawan et al., 2018). This shows that peers one of the external
factors that able to contribute to either positive or good path towards them. Family
determines of the student character and individuality (Kurniawan et al., 2018).
Therefore, it is important to get a friend that come from a good family background.
Most people especially students need good friends to help them choose the right
path, give positive influence in their life especially on giving them a mental support
in study but sadly, based on the result of the survey below, the first problem in this
research is a lot of students having difficulty to find a good friend in guiding them
due to lack of sources or clear platform like social application that focus on this
purpose only.

Next, students tend to get wrong peers at university. Based on Habollah et.
al (2019) bad influences among peers lead to strong influence compared to good
influences. Lacking love make student tend to lose their focus on study. Based on
the survey that was conducted, can be referred on figure 3, majority of the students
are agree with the statement. Therefore, real relationship which is strong ukhuwah
is very important, this statement also support by the positive response of the
respondents in figure 4.

Lastly, the problem appears to be that student more likely to waste time on
unbeneficial social media platforms that lead to their neglection towards their
priority as the students that need to devote themselves on doing assignments and
duties assigned by lecturers, doing re-study, and participating in university-
sponsored activities (Habollah et al., 2019). Thus, students’ academic performance
can be negatively impacted by using social network too much, which results in
poor performance (Azizi et al., 2019)

Thus, all the existing problems can be reduced with the system that will be
developed in this project, student who face difficulty to find platform that can assist
them in finding good friends can get benefit from this system, student who get
wrong peer can use this mobile apps as the platform to find the right friend, student
who glad to waste time on unbeneficial social media app can spend time on more

10
beneficial app like this as the purpose of this app is to guide them to be a better
Muslim student by finding them good circle.

1.4 Research Questions

i) What difficulties do students face in trying to find good Muslim friends on


social media?
ii) How can mobile apps help in solving this problem?
iii) What is the student's acceptance of this mobile apps?

1.5 Research Objectives

This project research aims to successfully achieve the objectives below:

i) To identify the difficulties faced by students in trying to find good Muslim


friends on social media.
ii) To develop a mobile apps that can help students find Muslim friends online.
iii) To evaluate student acceptance of the mobile apps through an online survey.

1.6 Research Scope

This research scopes are:

i) Data sampling involves Muslim students and former Muslim students


in Malaysia.
ii) The development of the mobile app will be based on Android platform
only.
iii) The app will be evaluated via online.

11
1.7 Research Significance

Based on the preliminary study conducted, it was found that many students face
difficulties in finding pious friends. This mobile app able to be one of the best online
assistive tool platforms that can benefit them in term of finding a good peer or friend. One
of the objectives is to move students away from social media that distracts them from useless
things to more useful applications that focus on finding good friends. The mobile app does
not have other functions such as shopping platforms, video content editors such as
Instagram or Tik Tok that could waste a lot of user time in vain. This friend finder mobile
app is able to find friends matching the desired characteristics, thus, it is able to play an
important role in attracting other social media users who want to migrate to be a better
person by starting to find good friends with good environment even it starts
from cyberspace.

12
CHAPTER 2

LITERATURE REVIEW

This chapter focuses on past studies that are closely related to the topic of this research
project. The topic covers are online platform for Muslim, mobile application technology,
mobile application for Muslim students, user module using bot, matching algorithm, and
related works of this project.

2.1 Social Media Platform for Muslim

Social media platforms are getting grow day by day with billions of users. This is
because social media platforms are used by more than a billion people worldwide, and they
produce enormous amounts of unstructured data quickly(Ghani et al., 2019). The mainstay
of communication today is the use of social media platforms (Chung et al., 2019). Thus,
youth are increasingly using social media platforms like Instagram, Facebook, SnapChat,
YouTube, and TikTok to unwind, find information, and create and manage their social
networks (Yellow, 2020; Collin P. et al., 2011; as cited in Douglass et al., 2022). Muslim
people are not exclude to be one of the users as social media is a platform that can be used
as a tool to spread the Islamic teaching and already popular with it is functionality in
Islamic world (Harifadilah et al., 2021 . ), find new friends and easier to spread other
information (Azrin et al., 2019). Muslims are urged to use all resources available today,
including social media, to recognise the manifestations of God's greatness (Jusoh, &
Kamaruzaman, 2009 as cited in Harifadilah et al., n.d.).

Social media has been a major factor in the global growth of Islam in recent years
(Adam et al., 2014 as cited in Harifadilah et al., n.d.). One of the benefits of social media
as the platform for Muslim and Islamic world is reachers can interact with Muslims and
non-Muslims alike by using voice calls and social media videos to teach the Qur'an and
Sunna (Harifadilah et al., 2021). Muslims are increasingly turning to the internet for
information on Islamic topics, such as Islamic guidelines and advise on how to conduct
themselves in accordance with Islamic principles and practises (Halim & Rahim, 2010 as

13
cited in Harifadilah et al., n.d.). Even outperforming traditional media in terms of usage
overall, social media have become into the most frequently used channel for the spread of
Islamic teachings (Harifadilah et al., 2021). Ishak and Solihin (2012) discovered that by
lowering the variety among Muslims and raising the values they share globally, the media
was very effective at communicating Islam to people, including those who are not Muslims
(Ishak & Solihin, 2012 as cited in Harifadilah et al., 2021).

2.2 Comparison the advantages between Mobile Application and Web


Application

Table 2.1 shows the comparison of mobile application and website to highlight the
advantage of mobile apps compared to website in a few categories which are internet
connection, performance, personalization, features, mobile user time spent, access
difficulty, brand & design, and security comparison.

Table 2.1 Mobile application and website comparison

Category Mobile Application Web Application


Mostly work on offline
Internet connection Need an active internet
access
Performance Faster Slower
Personalization More individualised Less individualised
More interactive and user- Less interactive and user-
Features
friendly friendly
Mobile user time
Longer Shorter
spent
Need to have active internet
Access difficulty Easy to access information
to access
Brand & design More prominent Less prominent
Security Higher Lower
Source: Jena, 2022

14
There are a lot of benefits to find a friend using mobile applications. From Jena
(2022) in term of internet connection category, mobile application is more advantage
because it is an offline access that able to gives the consumer the option to utilise the mobile
application via offline, compared to websites, it requires an active internet connection to
load and access content, many programmes operate in offline mode, which allows them to
offer users with the necessary services without connecting to the internet. Thus, this can
minimize the cost for user that want to use the apps to communicate with the online friend.
In performance category, mobile application is faster, mobile application is a little
quicker than website. The reason is because the programmes keep their data locally, users
can access it a little bit more quickly. For personalization, mobile apps have better
personalization. Website is unable to offer personalised information like a mobile
application does, but mobile applications can consider the preferences of the end user based
on their interests and recommend tailored material accordingly. This is a significant benefit
that contributes to the user-friendliness of mobile applications. For the features category,
applications for mobile devices make advantage of functions like the camera, phone call,
GPS, contact list, etc. The mobile application is more engaging and user-friendly thanks to
such device features. These features swiftly and effectively complete any actions or duties
(Jena, 2022).
In mobile user spent time category, from Figure 2.1, it shows that from 2018 until
2022, mobile apps are always higher usage by users in US compared to web browser.

15
Figure 2.1 Mobile application vs browser daily spent time by US mobile
device users
(Source: Wurmser, 2020)

According to (Wurmser, 2020), adults will use mobile internet for more than 4
hours on average, with apps accounting for 88% of that time. According to (M.K et al.,
2018) statistics from 2014, 10.13 million Malaysians actively use their mobile devices to
access social media. Additionally, this indicates that 44% of people use social media
regularly on their mobile devices. Smartphone is an essential tool to enhance their daily
life thanks to mobile applications like social media, reading news, listening to radio, and
location-based services.
In terms of access difficulty category, it is quite easier to access any information
from a mobile application because it does not require an active internet connection (except
for some applications) or the opening of any browser. To access any website, a user must
have internet connectivity as well as use a web browser to access any information from
that site. Additionally, utilising a mobile application does not require remembering a
website's URL, whereas viewing any website does.
In brand and design comparison, the number of people who love using mobile
applications is growing along with the number of smartphone users. Most of the
programmes that are available on cell phones are used regularly. Additionally, even if
consumers don not open any applications, the app's icons serve as a reminder of the
branding of businesses or organisations. As a result, the emblem aids in a small amount of

16
brand promotion among buyers. Lastly, for security category, mobile apps integrate with
the device’s existing security features to provide better security to the users. Within mobile
devices, safe access, modification, and sharing of data with a high level of security can be
done. These processes give advantage of mobile apps compared to website.
As the conclusion of the advantages of mobile application compared to web
application are mobile application work offline, fast in performance, more individualised,
more interactive, and user-friendly, longer mobile user spent time on mobile apps instead
of web browser, easier to access, brand and design more prominent, lesser cost for
development and maintenance, more secure compared to web application.

2.3 Mobile application technology

Mobile applications have integrated themselves into daily life. Due to the
advancement of mobile technology, mobile access to high-speed internet, and the
interactivity of mobile phone interfaces, they have dominated people's digital habits
(Balapour et al., 2020). Mobile applications offer several beneficial functions that
encourage people to spend a lot of time using them, from communicating to amusing
(Reychav et al., 2019 as cited in Balapour et al., 2020). As the number of mobile apps
released and used increases, so do mobile users' concerns about utilising them (Harris et
al., 2016 as cited Balapour et al., 2020). According to one report, from the third quarter of
2016 to the first quarter of 2018, the Google Play Store had an average of 6140 new mobile
app releases every day (Statista, 2018 as cited in (Balapour et al., 2020). This shows how
fast the growth speed of mobile applications was developed and published on the Google
Store. Thus, no wonder why users have variety of mobile applications option that they can
choose everyday based on their daily requirements because this apps is no stranger to them.

2.4 Types of Mobile Applications

According to Valdellon (2022), mobile applications can be divided into 3 types


which are native apps, web apps and hybrid apps. Native applications are designed only
for a single platform or OS. Web apps provided using a mobile browser, thus they are
responsive versions of websites that can function on any mobile device or OS. Hybrid apps

17
combine features from native and online applications; however, they are contained within
native programmes that can have their own icons or be downloaded from an app store.
Native apps are created expressly for the operating system of a mobile device (OS).
Thus, in addition to all the other platforms and devices, user can have native Android or
native iOS mobile apps. User cannot use a Blackberry app on an Android phone or an iOS
app on a Windows phone since they are only designed for one platform. Technology used
in native apps example like Java, Kotlin, Python, Swift, Objective-C, C++, and React as
the programming languages used to code. Every type of mobile applications has their own
pros and cons. The good side of native apps are faster and more dependable in terms of
performance due to their solitary focus (Valdellon, 2022).
Web applications function similarly to native apps but are accessed through your
mobile device's web browser. In the sense that you must download and instal code into
your device, they are not standalone apps. These are responsive websites that change their
user interface depending on the device the visitor is using. In actuality, the "instal" option
for a web app frequently just bookmarks the website's URL on your device. The
progressive web app (PWA), which is essentially a native app running within a browser,
is one type of web app. Web apps are created using HTML5, CSS, JavaScript, Ruby, and
other commonly used web programming languages. The fact of good side of web-based is
it eliminates the requirement for platform or OS customization. This lowers the price of
development (Valdellon, 2022).
Hybrid applications is the web applications that have the same interface as native
ones. Although they may feature a home screen app icon, a responsive design, quick speed,
and even the ability to work offline, they are web apps that have been engineered to look
native. Hybrid apps employ a combination of native APIs and web technologies. Ionic,
Objective C, Swift, HTML5, and other technologies are used in their development. The
advantages of web apps compared to native apps, hybrid apps may be built significantly
more quickly and cheaply. As a result, a hybrid app may serve as a proof-of-concept for a
native app, or the minimum viable product. Additionally, they offer users a consistent user
experience, load quickly, and are perfect for use in nations with slower internet
connections. Finally, there is a lot less code to maintain because they share a single code
base. The only cons, power, and speed, which distinguish native apps from hybrid ones,
may be lacking in hybrid apps (Valdellon, 2022).

18
2.5 Mobile Application Design and Architecture

The process of designing mobile applications is known as mobile app design.


Mobile apps can be used for a wide range of purposes, but they all share the need for the
best usability, accessibility, engagement, and overall user experience. It solves all the
issues, in brief (Mobile App Design, n.d.)

Figure 2.2 Statistic of mobile application design contribution to app


retention
(Source: “Mobile App Design,” n.d.)

Based on Figure 2.2, from “Mobile App Design” (n.d.) revenue from mobile apps
is predicted to reach $189 billion by 2020, and the business is expected to keep growing as
smart devices and technology advance. Mobile application best practices are first, for the
hardware and software of the device, mobile apps can make use of virtually every feature
of their operating system, including cameras, storage, and app stores, as well as fingerprint
readers, credit card scanners, and other features. When Android have native UI
components and features that consumers already love and are familiar while using it, there
is no need to recreate the wheel.
Second, it can develop evocative screen transitions. There are two types of
meaningful screen transitions which are a slide and push screen. A slide confirms that the
previous screen is still visible beneath it, giving the user the sense that they might wish to

19
go back there (like reading the full Tweet in a new screen, then returning to the feed). The
previous screen is obscured by a push, indicating that users who do not wish to return there
can do so safely (Mobile App Design, n.d.).
According to "The Ultimate Guide" (2022) states the mobile application
architecture is a set of guidelines, methods, and patterns for creating mobile applications.
This package enables the creation of logical, well-structured programmes that satisfy client
needs and professional standards. The construction of a good mobile architecture is
influenced by a variety of factors, including the type of mobile platform, type of device,
internet connection speed, possible mobile gadget features, such as CPU load, screen size,
and resolution.
There are few types of principles that need to be followed by a software developer
to create the best mobile apps in few categories, first SOLID, which is a 5 principles of
oriented programming concepts for creating scalable and easy-to-maintain apps. Next,
KISS, a principle of reducing the number of errors by keeping the system and code simple.
Lastly, a principle stating that software patterns should not repeat themselves to prevent
redundancy, among other rules (The Ultimate Guide to Mobile Application Architecture,
2022).

Figure 2.3 Mobile application architecture


(Source: “Mobile App Architecture,” 2020)

20
Based on Figure 2.3 that shows common mobile application architecture, there are
two elements make up the presentation layer which are the User Interface and UI process.
The display of the mobile application used by the end user is the main topic of discussion
for this layer. The creators of mobile applications must consider the client type. It would
therefore conform to the infrastructure. During the presentation layer stage, developer must
make numerous crucial decisions. These consist of typefaces, colours, motifs, and
shadings. When designing the architecture of a mobile app, the developer should take the
client's distribution restrictions into consideration. The suitable data format must be
chosen, which is another crucial requirement of this layer. Use strong data validation
procedures after that (“Mobile App Architecture,” 2020).
Next, the components on the business front are for the business layer. This layer
examines how the app will portray the company to users. Workflow, entities, and business
components are included in this tier. The intricacy of these layers is more sophisticated
than other layers. It involves way too many issues, such logging and caching. The
difficulties with exception handling and security also make it more complex. This layer
divides into two components to simplify things. The domain model and service layer are
two of these. The application function sets for popular application layers. The domain
model, however, focuses on knowledge and expertise related to issues (“Mobile App
Architecture,” 2020).
Finally, the data access layers must satisfy the demands of the applications. They
provide quick and safe data transfers. A developer must create this layer for this reason. It
incorporates several components, such as service agents, data utilities, and data access
elements. It's crucial to choose the right data format. Another aspect that makes it crucial
to create this layer is having a good validation technique. The upkeep of the data should
be considered by mobile app developers. This procedure aids in keeping this layer
adaptable to changing business needs. The reason why clean architecture is so successful
for Android app development is because it separates architecture layers. Layers become
independent while maintaining data sharing capabilities (“Mobile App Architecture,”
2020).

21
Figure 2.4 The Clean Architecture for Android Applications
(Source: “The Ultimate Guide,” 2022)

From Figure 2.4, it shows that the Clean architecture is commonly represented as
a circle with four layers. The layers are entities, use cases, interfaces adapters, framework,
and drivers. Entities layer is for business logic, use cases layer is for app logic. Interface
adapters layer functioning in translating the data from the use cases format to the format
used by external agencies, such as databases or the web. Presenters, controllers, and
gateways are examples of interface adapters. Frameworks and Drivers layer the layer that
made up of frameworks and tools, such as databases, user interfaces, http clients, and
others. Each layer has its own boundaries to keep the Dependency Rule when the business
logic and the app logic are independent of presenters, UIs, and databases. These
Boundaries enable layer-to-layer communication by giving each layer two interfaces: an
output port for the response and an input port for the request (“The Ultimate Guide,” 2022).
As the conclusion, clean architecture is the best option to build an android app.
Each app layer is independent of any other levels or other apps as depicted in Figure 2.4.
When boundaries are used to transition between the levels, software engineers can connect
independent layers by using the Dependency Rule. The Input and Output ports at
boundaries allow information to be moved across the levels. Software engineers can simply
scale the software, do quick troubleshooting and unit tests, and add additional plug-ins to
the app. As a result, it quickens the process of developing mobile apps and significantly
reduces costs ("The Ultimate Guide," 2022).

22
2.5.1 Social Matching Concept

The idea of introducing people for varied social interests when user situations are
favourable for ad hoc face-to-face meetings is known as opportunistic social matching.
(Zytko & Sejour, 2018). An important part of helping users find and recommend
interesting and contextually relevant people is a context-aware social matching
algorithm(Kim et al., 2019). In the cyber-physical-social system (CPSS), profile matching
is utilised to offer a service that connects new strangers socially by matching the qualities
of each person's profile. As an illustration, several dating apps pair users based on their
hobbies, age, gender, and other factors. Once they connect, they can exchange information
with one another (Qian et al., 2021). Thus, two different strangers can be match together
based on their interest and gender in making friend between both when they are using the
same mobile application.
According to the original ideas for opportunistic social matching systems (Mayer
& Jones, Quention, 2016, Mayer & Hiltz, 2016 as cited in Zytko & Sejour, 2018), users
are only made aware of encounter opportunities when an alert is sent to their mobile device
(for instance, when two users who share a passion for tennis cross paths on the street). This
method has certain shortcomings. One need is that before encounter chances can be
provided to users, they must first provide some basic contextual choices (e.g., sign-up
surveys).

User-interface A User-interface B
Figure 2.5 Comparison of two different interfaces on contextual information to
match users
(Source: Zytko & Sejour, 2018)

23
Figure 2.5 shows that ‘user-interface A’ just has a written description of the meet-
up opportunity that a fictitious student posted. In the ‘user-interface B’, a fictitious student
has provided a photo and a text description of the potential to meet (Zytko & Sejour, 2018).
Based on findings study from Zytko and Sejour (2018), the participants who choose to join
the program in the picture found picture on UI-B is more well-informed as it provides
enough information and attraction for participants to make their final decision in joining
the activity.

2.5.2 Matching algorithm

Matching theory is a concept used in economics to describe pairing two actors in a


particular market to achieve a stable or ideal state. All types of matching issues have
surfaced in computer science, including entity-relation matching in knowledge graphs,
user-item matching in recommender systems, and question-answer matching in
information retrieval.

Figure 2.6 Matching problems classifications, inclusions, and typical cases


(Source: Ren et al., 2021)

Based on Figure 2.6, it summarizes the matching problems in simplest way with
separation of the matching classification, the inclusions of matching class, and typical
cases as the example for each matching class. From Explicit Matching class, the typical
Cases are marriage markets, College admission, Cognitive Radio, these are the most
popular cases that will use the Explicit matching among either one-to-one, many-to-one or
24
many-to-many inclusions that suitable with the cases for creating the system algorithms. It
is same goes with Implicit Matching class that popular with question-answer, paper-
reviewer, and music-user as the common cases to use this matching class by using retrieval,
user-item, entity-relation, and image matching respectively that suitable with their
algorithms for the system (Ren et al., 2021),

Table 2.2 Summarisation of explicit and implicit matching algorithms and applications

Source: Ren et al. (2021)

Ren et al. (2021) create the Table 2.2 with more details of information for the
matching categories. The matching problem classified into two categories which are
Explicit matching and Implicit matching as shown in Figure 2.6. The sub-categories
involved for Explicit matching are one-to one Matching, Many-to one Matching, Many-
to-many Matching. The algorithm involved for many-to-many Matching sub-category is
optimization algorithm, while application or typical cases for one-to one matching is
marriage market, many-to one Matching is job matching and pay matching, many-to many
Matchings are cognitive radio networks and D2D communications (Ren et al., 2021).
For Implicit matching, the sub-categories are Retrieval Matching, User item
Matching, Entity relation Matching and Image Matching. The algorithm involved for

25
Retrieval Matching are Traditional matching algorithms, Representation-based algorithm,
Interaction-based algorithms while for applications are machine translation, expertise
matching, question-answer matching. Next, for user item Matching, algorithm involved
are basic algorithms, representation-based algorithms, Matching function-based
algorithms, it involved recommendation systems applications (Ren et al., 2021).
Moreover, entity relation Matching, algorithms involve are Factorization-based
algorithms, Neural network-based algorithms, Translational distance-based algorithms, the
applications are recommendation systems, knowledge fusion and information retrieval.
Lastly, Image Matching, the algorithms are Area-based algorithms and Feature-based
algorithms, the applications are robot vision, object recognition, medical image diagnosis
(Ren et al., 2021).

Figure 2.7 An illustration of student-school matching (Explicit Matching)


(Source: Ren et al., 2021)

Figure 2.7 illustrates explicit matching concept of student-school matching as the


example of many-to-one matching. The term "explicit matching" describes issues where
the agents themselves provide preference lists. These issues are categorised into three
categories in this section: one-to-one, many-to-one, and many-to-many. The famous
deferred acceptance algorithm's procedure is then thoroughly explained (Ren et al., 2021).
Agents on one side may be paired with multiple agents on the opposing side
through many-to-one or one-to-many matching. Examples of many-to-one matching
challenges that commonly occur are student-college and doctor-hospital matching (N.

26
Shimada et al., 2020 as cited in Ren et al., 2021). This type of matching is based on the
principle that agents on one side (institution, for example) can offer many of the same
positions to agents on the other side (students, for example), but the reverse is not true.

Figure 2.8 An example of how to suggest music to people (Implicit


Matching)
(Ren et al., 2021)

Based on Figure 2.8, it shows that based on user recordings, such as search
histories, the similarity (matching score) between each user and music is determined. Then,
by rating the similarity metric values, a preference list for each user is created, which can
be utilised as a guide when suggesting new music to users (Ren et al., 2021)
Recommender system offers customers a practical way to locate their things of
interest as precisely as feasible in the age of data explosion (S. Zhang et al., 2019 as cited
in Ren et al., 2021). As a result, tailored product recommendations are commonplace now
and are used in a variety of real-world contexts, including the recommendation of music
in music player software, of users on social websites, and of products on shopping
websites. By assuming users' choices or interests, recommendations, as opposed to
searching, push information or products to consumers.

2.5.3 Basic algorithm

Basic algorithms are the algorithm of user-item matching sub-category of Implicit


Matching. From the perspective of the data source, traditional recommender systems can
be divided into three main groups (Betru et al., 2017 as cited in Ren et al., 2021)
collaborative filtering (CF), content-based recommendation (CR), and hybrid

27
recommender systems. As the most widely used recommendation algorithm now, CF is
typically categorised from three perspectives: user-based, item-based, and model-based CF
(X. Su & T. M. Khoshgoftaar, 2009 as cited in Ren et al., 2021). The first two categories
base their recommendations on how similar users or products are, whereas the model-based
CF builds models using machine learning techniques like matrix factorization, clustering,
and limited Boltzmann machines. The development of content-based recommendation
algorithms can be broken down into three sections and is still in its early stages.
• To represent each item, extract a few features from its content.
• By using the user's previous attitudes about an item, discover the user's preferred
qualities.
• By contrasting the user profile discovered in the previous phase with the qualities
of the candidate items, provide a list of the most pertinent items for a user.

Figure 2.9 Pseudocode for basic algorithm for matching


(Source: Parsons, 2021)

From Figure 2.9, the "stable marriage problem" was addressed by the creation of
the Gale-Shapley algorithm in 1962. The concept is that stable matches can be created
between an equal number of two sorts of participants, as the example in pseudocode in
Figure 2.9, men, and women, where there is no other feasible pairing that both participants
would prefer to the one, they are in. Today, Hinge allegedly makes same-sex matches using
an upgraded version of this algorithm that does not explicitly seek marriage as its end aim
(Parsons, 2021).

28
Figure 2.10 Flowchart of matching algorithm based on interest
(Source: Moramarco, 2015)

Based on Figure 2.10, according to (Moramarco, 2015), the matching algorithm is


executed to determine the set of matching users whenever something occurs in the network
(such as a new user joining, a user changing their skills and interests’ settings, or a user
changing location). The algorithm's operation is depicted in the flowchart below.

2.6 Database for Mobile Apps

According to “An Introduction Database” (n.d.) data persistence for an application


is possible with a database. A mobile database is a database that is made with the intention
of storing data locally, frequently on the device itself, in mobile apps. The app uses local

29
storage to function even when the device is offline and can even be utilised as a data cache
when a network connection is poor. This frequently takes the form of a file on the device
that contains the data in the appropriate format for the type of database being used. There
are various kinds of mobile application databases, and the type of database being utilised
will have an impact on how the information is kept. However, the requirement for data
storage is constant across all application kinds. Any number of various types of data,
including user preferences, profile details, cached material for quicker loading, and so
forth, could be stored by the application. The purpose for which this data is kept is constant
across apps. Instead, there will be distinct factors to consider when selecting a database for
mobile apps.
There are few types of databases characteristics, first relational database, primary
and foreign keys are used to create associations between tables when storing data in them.
As the example, SQLite. Second, Key-Value database, to store information, keys are used
as identifiers with a corresponding value. It is frequently used to hold brief pieces of data.
For the example, UserDefaults in the iOS SDK, and SharedPreferences from Android.
Third, Object-oriented database, this database supports the use of sophisticated data objects
like those seen in object-oriented programming languages like Swift or Kotlin. It can
quickly run sophisticated data queries. Due to the database's and code's object's similarity
in structure, code is frequently also simpler. Example, Realm database (An Introduction
Database, n.d.).
There are few types of storage characteristics type, first cloud storage. Database
hosting and access within the cloud is known as cloud database storage. Example of cloud
databases are Oracle Database, Microsoft Azure, Google Cloud platform and MongoDB
atlas. Second, local storage, locally on the device hosting the database-accessing
programme, this is where the database itself is kept. In a mobile database scenario, this
would be kept on the phone. Third, storage server. According to (Web-Based Application,
2022), it used to manage, secure, and store digital data, files, and services. It is a server
that was created specifically for storing and accessing little to big amounts of data across
a public network or the Internet. File server is another name for a storage server.
Based on (Mobile App Architecture, 2020), best databases to use for reacting native
mobile app development in 2020. First, firebase, it may be the best local solution to choose
from for data syncing and offline data editing. For React Native applications, Firebase
supports a real-time NoSQL database and is competent enough to meet their MVC needs.

30
It also has a cross-platform API with low setup requirements, which is a significant benefit.
Additionally, a mobile device can quickly and easily access it directly as a real-time
database. Second, Realm database, to support offline and real-time mobile applications,
Realm was created as a local database. It was created on top of SQLite with its own
database engine, without using an object-relational mapping. As a result, it is an object-
oriented database as opposed to a relational database, which is why developers of high-
performance, cross-platform mobile applications with massive volumes of data strongly
value it. Third, SQLite database, when SQLite was first developed, users could build local
storage databases for mobile applications. The word "Lite" refers to how lightweight and
setup-intensive the database is. Most SQL standards are implemented together with
additional tools that make handling data easier.

2.7 Related Works

Example of works that have the same concept with this project are Baituljannah|Jodoh
Muslim, Tinder and Bumble apps.

2.7.1 Baituljannah Muslim Spouse Finder Application

Baituljannah apps was developed with the aim to assist single Muslims in finding
partners in a halal (permissible under Islamic law), secure, and practical manner,
Baituljannah is a matchmaking website for Muslims. "Baituljannah has roughly 500,000
registered members and has assisted approximately 25,000 Muslims in Malaysia, Brunei,
and Singapore find their marriages since it began in 2017," according to Wan Hasifi Amin
Wan Zaidon, cofounder and managing director of Baituljannah (“Muslim Digital,” 2021).
The website launched an iOS version in April 2020 and an Android app in December 2019.
Figure 2.11 shows the Baituljannah logo app that has been taken from the Google Play.

31
Figure 2.11 Baituljannah mobile application logo and Mobile app UI
(Source: Google Play)

2.7.2 Tinder Mobile Dating Application

Popular dating app Tinder is accessible on both iPhone and Android devices. It was
established in September 2012 by Jonathan Badeen, Justin Mateen, Joe Munoz, Dinesh
Mrjani, Chis Gylczynski, and Whitney Wolfe (Laura Entis, 2015 as cited in MacLeod &
McArthur, 2019). Users must allow location tracking on their smartphones and give the
app permission to access such information to use the app. Then, after setting age, gender,
and distance filters, users are shown profiles of potential partners and given the choice to
swipe left to reject them or swipe right to be matched with them. Two users can message
one another if they form a match by swiping right on each other's profiles (MacLeod &
McArthur, 2019). Tinder app is designed to make it easier for nearby strangers to connect.
The app has been successful in removing barriers between people who are interested in
dating and in creating a setting where they can simply introduce themselves and meet in
person practically immediately (Stoicescu, 2020). Figure 2.12 shows the current (2023)
Tinder logo app.

32
Figure 2.12 Tinder’s logo and Mobile App UI
(Source: “Logos-World,” 2023)

2.7.3 Bumble Mobile Dating Application

Whitney Wolfe, one of the creators of Tinder, developed Bumble. After a


contentious breakup with one of the other founders, Wolfe was fired from Tinder in 2014
and later sued the company for sexual harassment (Yashari, 2015 as cited in MacLeod &
McArthur, 2019). The app was introduced in December 2014, and its stated objectives
include questioning heterosexual dating conventions and altering how men and women
interact with one another (Charlotte Alter 2015; Yashari 2015 as cited in (MacLeod &
McArthur, 2019). Bumble and Tinder are similar with a few significant exceptions. Users
can configure age, gender, and distance filters and view the profiles of potential
companions when location tracking is enabled. Users swipe left to reject them or right to
demonstrate interest in them in an anonymous manner. If both users swipe right, they
match and can message each other (MacLeod & McArthur, 2019).

33
Figure 2.13 Bumble logo and Mobile App UI
(Source: “1000Logos,” 2023)

2.8 Summary

As the summary, this chapter emphasises a comprehensive grasp of the research


topic, starting with the study's precise title. It provides locals and catering owners with a
greater grasp of the system utilised to construct the mobile application-based social media
friend finder. Additionally, the connection between in-depth discussion and current
growing trends helps in the development of an acceptable model for this study work. The
analysis of this similar chapter of work provides guidance and inspiration to begin coming
up with research subjects.

34
CHAPTER 3

METHODOLOGY

A methodology is a grouping of practises, methods, techniques, processes, procedures, and


regulations. Methodologies used in project management are precise, rigid, and typically
include a list of actions and tasks at each stage of the project's life cycle. They are defined
techniques that outline the precise next steps to take, the reasoning behind each one, and the
proper way to carry out each project stage (Cote, 2023). In this chapter, it will discuss about
the methodology that will be used to conduct the project.

3.1 Software Development Life Cycle (SDLC)

The application development life cycle, which is also known as the software
development life cycle, describes how the development process is set up within a project or
a full organisation. A structure for the planning, development, testing, control, and delivery
of offered software development services is what is referred to as the SDLC. Applying the
SDLC makes it simple to determine what stage the team is in, what resources are needed,
and what phase is coming up (Anurina, 2021).

3.2 Agile Methodology

Agile SDLC is currently one of the most well-liked software development


methodologies. The Agile techniques are thought to have started in 2001 (Anurina, 2021).
The Agile Manifesto, which outlined the guiding principles of best practises for Agile
software development, was written by seventeen software developers. The main advantage
of the Agile software development life cycle is the flexibility it offers. The paradigm
encourages the creation of software in brief, manageable increments. Agile software
development methodologies enable businesses to offer updates to users more often. Every
new release act as a foundation for the one after it. Before going on to the next phase, a
development team or business must finish the current one first. The is the primary

35
distinction between Agile SDLC and traditional software development life cycle models. In
the case of traditional software development, a company must create a thorough inventory
of all potential future requirements and create software that fully satisfies those
expectations. The usual development procedure takes longer as a result.

Figure 3.1 Agile SDLC


(Source: Anurina, 2019)

On the other hand, with Agile software development steps like shows in Figure 3.1,
a corporation establishes the scope of necessary modifications and follows the cycle of
analysis, design, development, and testing. Instead of providing a single major update, this
enables the team to release incremental improvements into production. One such cycle,
commonly referred to as a sprint, varies from firm to company and can last anywhere from
a few weeks to 30 days. According to Agile Coach and Scrum Trainer at Agile for Growth
Kamlesh Ravlani, "Agile is being adaptive, the capacity to gracefully adjust to quickly
changing customer needs." (Cote, 2023). Compared to a plan-driven approach, agile
software development is a more flexible method of developing software (Ghimire &
Charters, 2022). The capacity to alter requirements at any stage of the software development
cycle demonstrates this flexibility (Donmez et al., 2016 as cited in Ghimire & Charters,
2022). Agile methodologies emphasise cooperation between clients and developers and
promote self-organization in development teams (Ozkan et al., 2020 as cited in Ghimire &
Charters, 2022)

36
3.3 Phases in Agile Methodology

Agile SDLC was developed to speed up the software development process and offer
users regular and timely software updates. Figure 3.2 shows the main principles of Agile
SDLC that make it one of the best methodologies to use in building a software development
and Figure 3.3 shows the primary steps in an Agile Workflow (Anurina, 2021).

Figure 3.2 The Agile Manifesto's Core Values


(Source: Anurina, 2021)

Figure 3.3 The primary steps in an Agile Workflow


(Source: Anurina, 2021)

Table 3.1 shows the common agile workflow stages with the explanation of each of
the stages while Figure 3.4 shows the steps’ activities in each of the Agile phases with the
partition of engagement that also involved in the feedback stage.

37
Table 3.1 Typical agile workflow steps and its’ description

Steps Description
The Agile team conducts an overall project evaluation
throughout the first stage of the Agile SDLC, and the team
offers business analysis services. Here, the team tests or
Concept
disproves a business benefit hypothesis, determines how long
the project will take, and identifies any potential future
resource requirements.
The phase that follows the concept stage is when a financial
Inception
basis is laid, and the main team members are determined.
The team concentrates on delivering functional software
during this period. It is created based on feedback and
Iteration/Construction
iteration requirements, then modified and enhanced. Multiple
time frames make up this phase (sprints).
In this procedure, an iteration is released to the market after
Release
passing quality assurance and user testing.
Production The constant software maintenance.
Is the last and most obvious Agile SDLC phase. Here, the
Retirement development team informs users that it will no longer support
the programme that has been launched.
Source: Anurina, 2021

38
Figure 3.4 Steps’ activities in Agile phases
(Source: Singh, 2022)

Figure 3.5 shows Agile iteration that more specific to Sprint as the core of Scrum
framework. Scrum is the most popular and effective Agile framework. The figure shows
the loop occurs in the Agile iteration. From the Figure 3.5, the incremental and iterative
models are combined to create the agile paradigm. This paradigm emphasises flexibility
throughout product development more than the requirements. A product is divided into
manageable incremental builds in Agile. It is not created in its entirety at one sitting. The
number of features increases with each build. The upcoming update expands upon earlier
features. Sprints are the term used for iterations in agile. A sprint lasts two to four weeks.
Each sprint ends with the product owner verifying it before it is provided to the client with
his or her permission. Customer feedback is used to make improvements, and the following
sprint will focus on his recommendations and enhancements. Each sprint includes testing to
reduce the possibility of any failures (“SDLC,” 2023).

39
Figure 3.5 Agile iterations (Sprint)
(Source: SDLC, 2023)

Figure 3.6 shows the Agile SDLC Model with only 5 stages to be used in this project
start from analysis, design, development, testing and documentation.

Analysis

Documentation Design

Testing Development

Figure 3.6 Agile Software Development Model for this project

40
Table 3.2 shows the Agile SDLC phases in explanation table form to explain how
each of the phases will be conducted during on the running project until the end phases
which is documentation.

Table 3.2 Agile SDLC phases with description for this project

Phase Description
At this stage, data for the project will be
obtained. This phase will include the
documentation of all problem statements,
project objectives, the project's scope, and
Analysis
its significance. This development project
has considered pertinent current concerns,
the situation, and the environment to
strengthen it.
In this level, both the logical and physical
designs are required. The project prototype
Design
is shown to demonstrate the operation of
the system.
The development tools that will be used in
Development
this phase are firebase and Android Studio.
This phase will be more concerned with
setting up the system and testing its
Testing functionality to achieve the scope and
purpose that were previously established in
chapter one.
The documentation process and
Documentation presentation of the project as a senior
project will be part of this phase.

41
3.3.1 Analysis Phase

This phase will focus on creating a product that meets the needs of the consumer,
all necessary information is gathered from them during this phase. Any questions must be
answered during this specific time. A meeting is scheduled with the customer by the
business analyst and project manager to obtain all the necessary information, such as what
the customer wants to construct, who will be the end user, and what the product's purpose
is. A fundamental knowledge or understanding of the product is crucial before building it
(Swati, 2022). Additionally, a software requirement specification (SRS) document is
frequently produced by developers. This details every requirement for the system they
intend to develop, including software, hardware, and network requirements. This will stop
them from using up too many funds or resources while working alongside other
development teams (Preston, n.d.)
Table 3.3 shows the process of the activities that will be involved in the analysis
phase, the technique or software that will be used and the deliverables or output that want
to be achieved based on the activities in this phase.

42
Table 3.3 Analysis phase process

Phase Activities Technique/Software Deliverables

Analysis
phase Preliminary
Study Chapter 1 -
Searching Introduction

journals and
material sources Chapter 2:
Do literature
of references review
Identify Project:
1) Problem
Statement
2) Research
question,
objective
3) Project Complete
Scope and Chapter 1 and
Significance chapter 2

Analysis
related work

Analysis front
end and back
end

3.3.2 Design Phase

According to Preston (n.d.). Before moving on to the primary developer stage, the
design stage is required. Developers will first provide a general description of the
application along with specifics on specific components, such as its user interfaces, system
interfaces, network needs, and so forth. Databases. The SRS document they produced will
normally be transformed into a more logical structure that may then be implemented in a
computer language. Plans for operations, training, and maintenance will all be created so
that moving forward, developers will be aware of what to do at each point of the cycle.
Development managers will create a design document once everything is finished, which
will be used as a guide throughout the SDLC's subsequent stages.

43
Table 3.4 shows the process of the activities that will be involved in the design
phase, the technique or software that will be used and the deliverables or output that want
to be achieved based on the activities in this phase was mentioned in the table.

Table 3.4 Design phase process

Phase Activities Technique/Software Deliverables

Design
phase System design Use Case
Using Modelio Diagram
Open Source

Flowchart for
the mobile
Using powerpoint apps system
project

Diagram of
system engine
(Matchmaking
Using Draw.io
algorithm)

Entity Relational
Diagram
Using Balsamiq

Wireframe and
prototype

3.3.2.1 Use Case Diagram

The main representation of system/software requirements for an unfinished new


software programme is a UML use case diagram. Use cases describe the desired behaviour
(what), not the precise means of achieving it (how). Once defined, use cases can be used to
indicate both textual and graphic representation (i.e., use case diagram). Use case model's
ability to assist in system design from the standpoint of the end user is a fundamental idea.

44
By describing all externally observable system behaviour, it is a useful tool for explaining
system behaviour to users. Most use case diagrams are straightforward. The use case details
are not displayed. Only a few of the connections between use cases, actors, and systems are
summarised.
Figure 3.7 shows the use case of this project that summarize the 5 main activities
that will involve in the mobile system which are login or sign-up activity, fill profile
information form, match new user with suitable old users, reject or approve the matching,
start conversation, and build friendship. All the activities will involve by the main user of
the system which is the client of this apps.

Figure 3.7 Use Case Diagram of this project

3.3.2.2 Flowchart

An algorithm is graphically represented by a flowchart. It is frequently used by


programmers as a technique for planning programmes to address issues. It uses
interconnected symbols to represent the movement of information and processing.
"Flowcharting" is the process of creating a flowchart for an algorithm (Aggarwal, 2022).

45
Figure 3.8 shows the flowchart of the algorithm of this project, it shows how the
matchmaking process of friends’ finding will occur in this mobile app system starting from
registration from new user, system detecting the gender data either synchronize with other
user that system try to pair, if the condition is true, the system will move to the next
condition, otherwise, it will compare with other users, the process continues until the new
user found his or her suitable pairing based on the system condition.

Figure 3.8 Flowchart of this project

3.3.2.3 System matching algorithm diagram

Figure 3.9 shows the illustration of matchmaking algorithm that will be used in this
project. It consists of 4 stages or levels to filter the process of pairing each of the users by
the system condition. Level 1 shows that new user (Y=Male) is being compared by all the
old users active accounts, their gender will be detected based on already exist data, only

46
users with the same gender that able to go to the next level filtration, in this level, user X1,
X2 and X3 succeed to go to the next level filtration. On level 2, it shows that the parameter
that will be used to compare all the old users with the new user is state, in this level, only
X1 and X2 succeed to go to the next level as both old users come from the same country
with the new user (Y) which is Kedah. The last level of filtration is religion understanding
level, system will choose old users with higher religion understanding level to match with
the new user. Thus, the matchmaking or pairing outcome or result is Y is pairing with X2
to be friend.

47
Figure 3.9 System matching algorithm in this project

3.3.3 Development Phase

The stage of development is when programmers write the application's code in


accordance with the preceding design papers and laid-out specifications. SAST tools, also
known as static application security testing, are useful in this situation. According to the
design document's specifications, product programme code is created. The actual
development process ought to be rather simple given the extensive planning and outlining
that has already taken place. Developers will use various tools, including compilers,
debuggers, and interpreters, and adhere to any coding standards established by the business.
Standard programming languages include C++, PHP, and others. Depending on the
requirements and specifications of the project, developers will decide which programming
language to employ (Preston, n.d.).
Table 3.5 shows the process of the activities that will be involved in the analysis
phase, the technique or software that will be used and the deliverables or output that want
to be achieved based on the activities in this phase was stated in the table. Table 3.6 shows
the tools and the description of function of the tools in this project which is Android Studio
as software developer and firebase as the database.

48
Table 3.5 Development phase process

Phase Activities Technique/Software Deliverables

Development Coding mobile


phase application Using Android
Studio

Create Using firebase Objective 2


database Achieved

Table 3.6 Tools that will be used to develop the project

Tools Description
Android Studio Software to develop mobile application
Firebase Database that will be used in this project

3.3.4 Testing phase

Software testing is the process of assessing and confirming that a software


application or product performs as intended. Testing has advantages such as bug prevention,
lower development costs, and better performance. There are many types of testing but in
this project will focus on functional and usability testing (“What Is Software,” n.d.)

• Functional testing is the process of verifying how well a function works by


simulating business scenarios. Function verification is frequently done via black-
box testing (“What Is Software,” n.d.).
• Usability testing verifies how well a user can execute a job using a system or web
application (“What Is Software,” n.d.).

49
Table 3.7 shows the process of the activities that will be involved in the testing
phase, the technique or software that will be used and the deliverables or output that want
to be achieved based on the activities in this phase was stated in the table.

Table 3.7 Testing phase process

Phase Activities Technique/Software Deliverables

Do functional
System testing and usability
testing using User-feedback test
tools
user-feedback
Result of the
UFT achieved
Google form
for online
survey
Improve system
based on user- Objective 3
feedback result
Achieved

3.3.5 Documentation phase

According to (“Technical Documentation,” 2020) the phrase "technical


documentation" in the context of software engineering refers to all written materials and
documents pertaining to the creation of software products. Whether produced by a small
team or a large organisation, all software development products need some related
documentation. Additionally, several document kinds are produced throughout the entire
software development lifecycle (SDLC). The purpose of documentation is to clarify product
functionality, compile project-related data, and enable discussion of all important issues that
may come up between stakeholders and developers. There are two types of software
documentation, first, product documentation that contains information on the currently
under development product as well as directions on how to carry out various tasks with it.
Requirements, technical specifications, business logic, and manuals are all common
components of product documentation. The two primary forms of product documentation
are:

50
• System documentation that describes the system as a whole and its components
are referred to as system documentation. It consists of FAQs, design choices,
architecture explanations, and requirement documents.
• User documentation includes guides that are primarily written for system
administrators and end users of the product. Tutorials, user manuals, installation
guides, troubleshooting manuals, and reference manuals are all examples of user
documentation.

Second, process documentation that all documents created during development


and maintenance that describe the process are collectively referred. Standards, project
paperwork, including project plans, test schedules, reports, meeting minutes, or even
corporate correspondence, are typical examples of process-related papers. The primary
distinction between process and product documentation is that the former captures the
development process, while the latter describes the product that is under development
(Technical Documentation, 2020).
Table 3.8 shows the process of the activities that will be involved in the
documentation phase, the technique or software that will be used and the deliverables or
output that want to be achieved based on the activities in this phase was mentioned in the
table.

Table 3.8 Documentation phase process

Phase Activities Technique/Software Deliverables

Putting all the


Documentation data and
information from Using Microsoft Complete
the project's Word thesis for the
development in
project's
perspective and
development
drawing a
and accomplish
conclusion
all the
objectives.

Write a full
thesis about the
project
development

51
3.3 Gantt Chart

A Gantt chart is a stacked bar graph with timelines that show task length on the
horizontal axis and project tasks on the vertical axis. The project schedule is shown with
summary items, task dependency relationships, and milestones. The project management
chart known as the Gantt chart was made popular in the early 20th century by Henry Gantt
(Gantt Chart, n.d.). Figure 3.10 shows the Gantt chart of this project with the project phases
and the length on month durations to finish all the tasks in each phase.

Figure 3.10 Gantt Chart for this project

3.4 Summary

The actions, methods, and explanation of the deliverables for each phase of the
process are all covered in this chapter's conclusion. This chapter describes each phase of
this methodology, including the analysis of specifications, design, implementation, testing,
and review. The explanations in this chapter aim to make the development flow of the

52
cafeteria food ordering mobile app for campus cafeterias more understandable, from the
beginning to the end of the whole process.

REFERENCES

Aggarwal, N. (2022, June 21). An introduction to Flowcharts. GeeksforGeeks.


https://www.geeksforgeeks.org/an-introduction-to-flowcharts/
An Introduction Database for Mobile Apps. (n.d.). MongoDB. https://realm.io/database-for-
mobile-apps/
Anurina, O. (2021, November 12). Agile SDLC: Skyrocketing Your Project with Agile
Principles. MLSDev. https://mlsdev.com/blog/agile-sdlc
Azizi, S. M., Soroush, A., & Khatony, A. (2019). The relationship between social
networking addiction and academic performance in Iranian students of medical
sciences: A cross-sectional study. BMC Psychology, 7(1).
https://doi.org/10.1186/s40359-019-0305-0
Bakar, & Hamzah. (2019). FAKTOR KETERLIBATAN REMAJA DENGAN MASALAH
SOSIAL (Factors Influencing Teens with Social Problems).
Balapour, A., Nikkhah, H. R., & Sabherwal, R. (2020). Mobile application security: Role
of perceived privacy as the predictor of security perceptions. International Journal of
Information Management, 52. https://doi.org/10.1016/j.ijinfomgt.2019.102063
Chung, K. L., Morshidi, I., Yoong, L. C., & Thian, K. N. (2019). The role of the dark tetrad
and impulsivity in social media addiction: Findings from Malaysia. Personality and
Individual Differences, 143, 62–67. https://doi.org/10.1016/j.paid.2019.02.016
Cote, A. (2023, January 4). Project Management Methods, Methodologies, and
Frameworks – A Guide for Beginners. Paymo.
https://www.paymoapp.com/blog/project-management-methodologies/
Douglass, C. H., Borthwick, A., Lim, M. S. C., Erbas, B., Eren, S., & Higgs, P. (2022).
Social Media and Online Digital Technology Use among Muslim Young People and
Parents: Qualitative Focus Group Study. JMIR Pediatrics and Parenting, 5(2).
https://doi.org/10.2196/36858
Fattah, W. A., Ismail, W., Syukran Baharuddin, A., Mutalib, L. A., Salida, N., Saleh, S. N.,
Mamat, Z., Sahdan, Z., Noorul, S., Syed Husin, M., Aniq, M., Alias, A., Syazwani, N.,
Kahar, A., Kemanusiaan, F. S., Geografi, J., & Sekitar, A. (2021). E-PROCEEDINGS
53
INTERNATIONAL CONVENTION ON THE BASIC STRUCTURE OF
CONSTITUTION (ICOBAC) 2021 TINJAUAN AWAL TERHADAP PUNCA-PUNCA
YANG MENYEBABKAN REMAJA ISLAM DI MALAYSIA TERLANJUR.
Gantt Chart. (n.d.). ProjectManager. https://www.projectmanager.com/guides/gantt-
chart#:~:text=A%20Gantt%20chart%20is%20a%20stacked%20bar%20chart,milesto
nes%20in%20the%20project%20schedule%20are%20all%20depicted
Ghani, N. A., Hamid, S., Targio Hashem, I. A., & Ahmed, E. (2019). Social media big data
analytics: A survey. Computers in Human Behavior, 101, 417–428.
https://doi.org/10.1016/j.chb.2018.08.039
Ghimire, D., & Charters, S. (2022). The Impact of Agile Development Practices on Project
Outcomes. Software, 1(3), 265–275. https://doi.org/10.3390/software1030012
Habollah, N. S., Md Rashid, M., & Ihwani, S. S. (2019). Media Sosial dan Pelajar Universiti
Menurut Islam. Prosiding Seminar Sains Teknologi Dan Manusia, 227–240.
https://doi.org/10.1016/j.sbspro.2014.04.253
Hajimin, Ibrahim, & Hajimin, N. (2019). PENGHIJRAHAN MANUSIA DARI
PERSPEKTIF ISLAM Human Migration from the Islamic Perspective (Vol. 6, Issue
1).
Harifadilah, M., Rosidi, B., Wifaq, A., Mokhtar, B., Mohd, &, Bin, N., & Majid, A. (2021).
Journal of Fatwa Management and Research. THE IMPACT OF SOCIAL MEDIA ON
THE ACCEPTANCE OF FATWAS AMONG MALAYSIAN MUSLIMS, 26(1).
www.jfatwa.usim.edu.my
Jena, S. (2022, November 23). Advantages of Mobile Application over Websites.
GeeksforGeeks.
Jessica, L. (2021, August 19). How to write a Research Paper: Step 1.1: Preliminary
Research. Valencia College.
Kim, T., Lee, D., Hyun, S. J., & Doh, Y. Y. (2019). UrbanSocialRadar: A place-aware social
matching model for estimating serendipitous interaction willingness in Korean cultural
context. International Journal of Human Computer Studies, 125, 81–103.
https://doi.org/10.1016/j.ijhcs.2018.12.011
MacLeod, C., & McArthur, V. (2019). The construction of gender in dating apps: an
interface analysis of Tinder and Bumble. Feminist Media Studies, 19(6), 822–840.
https://doi.org/10.1080/14680777.2018.1494618

54
M.K, N., Lurudusamy, N., & Arokiasamy, L. (2018). Factors that Influence Mobile
Application Usage among Undergraduates in Malaysian Public University.
International Academic Journal of Science and Engineering, 05(01), 120–133.
https://doi.org/10.9756/iajse/v5i1/1810011
Mobile App Architecture – How to Design it? (2020, October 27). OS System.
Mobile App Design. (n.d.). Invision.
Moramarco, F. (2015, April 20). Matching Algorithm. Skillted.
Muhammad Azrin, M. F., Moorthy, V. K., & Jasmi, K. A. (2019). Media Sosial dan
Perhubungan Sesama Manusia Menurut Islam. www.hidayatullah.com/kajian/oase-
iman/read/2017/02/14/111793/menjaga-diri-dan-keluarga-bersama
Muslim digital matchmaking platform Baituljannah recorded over 85% increase in
registered users during Malaysia’s pandemic restrictions. (2021, September 3).
Malaysiakini.
Parsons, E. (2021, February 11). Making Your Match. CHM.
Petyak, O., Rudenok, A., Komar, T., Antonova, Z., & Danchuk, Y. (2022). Features of
Modern Understanding of the Concept of “Love” in Student Families. Revista
Romaneasca Pentru Educatie Multidimensionala, 14(2), 177–189.
https://doi.org/10.18662/rrem/14.2/574
Preston, M. (n.d.). System Development Life Cycle Guide. CloudDefense.
https://www.clouddefense.ai/blog/system-development-life-cycle
Qian, Y., Xia, X., & Shen, J. (2021, January 30). A Profile Matching Scheme based on
Private Set Intersection for Cyber-Physical-Social Systems. 2021 IEEE Conference on
Dependable and Secure Computing, DSC 2021.
https://doi.org/10.1109/DSC49826.2021.9346252
Rahayu, A. (2021). SIFAT-SIFAT RASULULLAH SAW SEBAGAI DASAR
PENDIDIKAN KARAKTER. SEMINAR NASIONAL DIES NATALIS KE-
41 UNIVERSITAS TUNAS PEMBANGUNAN SURAKARTA, 1(01), 19–26.
http://prosiding.utp.ac.id/index.php/SEMNASUTP/article/view/5/5
Rahmi, A. (2018). An Analysis of the Implementation of Islamic Brotherhood Value on the
Students of MTsN Jeurela Sukamakmur. Ilmiah Peuradeum, 6, 549–562.
http://journal.scadindependent.org/index.php/jipeuradeun/article/view/204

55
Ren, J., Xia, F., Chen, X., Liu, J., Hou, M., Shehzad, A., Sultanova, N., & Kong, X. (2021).
Matching Algorithms: Fundamentals, Applications and Challenges.
http://arxiv.org/abs/2103.03770
SDLC (Software Development Life Cycle) Phases, Process, Models. (2023, January 24).
Software Testing Help. https://www.softwaretestinghelp.com/software-development-
life-cycle-sdlc/
Singh, P. (2022, September 20). A Guide To Agile Scrum Methodology in Mobile App
Development. Appinventiv. https://appinventiv.com/blog/agile-scrum-methodology-
in-mobile-app-development/
Stoicescu, M. (2020). Social impact of online dating platforms. A case study on tinder.
Proceedings - RoEduNet IEEE International Conference, 2020-December.
https://doi.org/10.1109/RoEduNet51892.2020.9324854
Suriati, Burhanuddin, & Makmur, N. (2020). Da’wah in Form of Ukhuwah Islamiyah.
Technical Documentation in Software Development: Types, Best Practices, and Tools.
(2020, December). Altextsoft. https://www.altexsoft.com/blog/business/technical-
documentation-in-software-development-types-best-practices-and-tools/
The Ultimate Guide to Mobile Application Architecture. (2022, August 16). Scand.
Valdellon, L. (2022, September 20). What Are the Different Types of Mobile Apps? And
How Do You Choose? CleverTap.
Web-Based Application. (2022, May 30). Techopedia.
https://www.techopedia.com/definition/26002/web-based-application
What is software testing? . (n.d.). IBM. https://www.ibm.com/my-en/topics/software-
testing
Wurmser, Y. (2020, July 9). The Majority of Americans’ Mobile Time Spent Takes Place in
Apps. Insider Intelligence.
Zytko, D., & Sejour, D. J. (2018). Encounter opportunity browsing: A new approach to
opportunistic social matching. Proceedings of the ACM Conference on Computer
Supported Cooperative Work, CSCW, 357–360.
https://doi.org/10.1145/3272973.3274096

56
APPENDICES

APPENDIX A: DEMOGRAPHIC

57
58
59
APPENDIX B: SELECTED QUESTIONS

60
61
62

You might also like