UNIVERSITY PERMISSION PAGE
"/ herebv arant the University of the Philippines a non-exclusive, worldwide, royalty-
free license to reproduce, publish and publicly distribute copies of this thesis or d^ertafon /o whatever form subject to the provisions of applicable laws, the
mSns of the UP IRR policy and any contractual obligations, as well as more
specific permission marking on the Title Page.
'Specifically, I grant the following rights to the University:
a rnov Of the work in the theses database of the
cliS^/ihMstitute/department and in any other databases
available on^ of the
c) To give open work in accordance w of especially for Reaching, scholarlythe Intellectual Property Code of
the Philippines (Republic Act /v .
and research purposes.
(MrP
eaching, scholarly
t/i
student Name over Signature and Date
ACCEPTANCE PAGE
This thesis titied Go Guro Mobile Application Buiit With Android and Firebase is hereby accepted by the Facuity of Information and Communication Studies, U.P.
Open Univereity in partial fulfillment of the requirements for the degree Master of Sdence/Master of Arts/Master of Information Systems/Master of Development
Communication.
Members of the Academic Advisory Committee;
Chair, Advisory Committee
signature ov(
Signature ove
(Signature printed name)
Member, Advisory Committee
r printed name)
, Member. Advisory Committee (Signature over printed name)
Dean,
(Date)
(Date)
1 Q_2JU 8
ACKNOWLEDGEMENTS
RnH whose unseen guidance has certainly helped create this capstone. Is a
Person who I would like to thank for everything that has happened to me during the
rerson wno i w „roiect When I spent countless, sleepless night writing codedevelopment of t^s project, wne j ^
Irerl^^th to eSure the process of this master's thesis. Without Him, this would not be
possible at all.
..r<=.e Hox/Plnned to help students. Therefore, I would like to
This . ates I would also like to thank my classmates from other
acknowledge iny bate patchmates, I enjoyed the brief time we subjects in UPOU, even . ^ g subjects. My batchmates and classmateshad while we were enroireo m i especially during IS295a and IS 295b. Even
supported each other in o ^eans only, I cherished the times when we all If our Interactions were thro g
helped each other out.
Ion use this application. Hence, I would like to acknowledge
Teachers can aiso uo professors before,
the hardworking teachers in u brought teaming to far away places, but all teachers working m ur ■ ogcause of this, I am sincerely grateful to
Without you, there would be no upuu.
have teachers like you-
name I would like to acknowledge SImCoder,
Although I forgot peiped me learn Android and FIrebase
whose Youtube videojutorrais a Jgyg,gpment a direction, forwards, and without development. Your videos otherwise be backwards.
them the direction of this cap , . ..
.1, nk the company the I work for, for giving me enough I would also like to tnaw , pgught. This Increased my productivity
money to pay for the ultrai^de m and a video tutorial beside It.
SSerably I had W ^-workem They always gave me something to
In addition, i would jj ® y«hen I was depressed.
laugh about during ti tk r • • c h-
^ ^^om I miss so much. They are living in Saudi
I also acknowledge 'Jgsured the times you called me on video, despite Arabia at the time of writing.^^
while I was busy pr -fledge my sweet girlfriend. She supported my
I a.stlv I would like to acknow » ^j^g^g ,ggg ^^ig jg^ gggf,
,0 .mil. I. tae. «
Other. She has alway 9 ^ g^
hardships. Therefore, I thank y
ABSTRACT
In universities or coileges. most students have control of their class schedule.
Tu . iJ!! of irreaular students, whose class times are different,
Theres also insta j ^ j enrolment. Hence, there are times a student
depending project, or reviewing for exams, but there are no
needs heip with a ies • jgg jq fjnd heip. one must roam the campus and ask
avaiiable professors o discouraged to ask because of fear of other students face-to-face. Often, may wn
rejection or that they're too shy
1 • r-n r^iiro a mobiie application for students who need help
The proposal'S " -..hiect they need help and with a press of a button, the
quick. The tutee selects t I people who also have the app. The tutors can
app instantly searches loi tptee's invitation. Once accepted, a map shows the
choose to accept or decline in-person, the
location of both which can be "jed to
study session can now b
Android 4 0 3 "Ice Cream Sandwich" up to Android 8.0
Mobile devices u^ng A development with Java as the
"Oreo" was targeted. Androio o provide backend services,
programming language. Firebase was
^ • o<.««factorv remarks from end-users, indicating that it is
Testing resulted m ^ vvouid also like to see it published on Google practical to use in their coHege_ y ^ggardless of school. The application Play for every student and teacn invitations anonymous, meaning
lessened the user's face of the tutor and vice-versa. Only when the
the tutee cannot see the name a ^ faces. Go Guro does tutor accepts the invite wll they s but only those who accepted,
not show the tutors who have j
TABLE OF CONTENTS
University Permission Page Acceptance Page
Acknowledgements
Abstract
II
iv
.V
vi 1
List of Tables
List of Figures
Chapter I: The Problem Domain '
A. Statement of the " 1
B. Background and Objectives of 1
C. Significance and ^P® ° seriousness of the Problem 2
D Documentation of Existent anu
chwt^f II: Revw 4
Chapter III: Approach to Be Taken in ^
A. Theoretical Framework...^..- ^
B. Rationale Con^^^^^^^ Use 5
C. Technologies You Kian w g
Chapter IV: Project Plan 6
A. Concept 8
Chapler V: Results and ' 12
A. Database Remodel
B. iOSPort "
Chapter VIII: References^
Cl^rVIV:^^^„i'
19
20 21 22 23 25 26 27
OQ
E. Resources jetina on
F. Complete Program Listing 30
G. Technical Reference 31
r^^»SS'dVen«nSspes«oa«en
A. Deliverables and
B. Budget...- C. Qualifications
D. Contributors/Coliaooia
LIST OF TABLES
Table 1. Point value of each option in System Usability Scaie 13
Table 2. Score computation for one respondent 14
Table 3. Initial project expenses
Table 4. Recurring project expenses per month
LIST OF FIGURES
Figure 1. Activity diagram of current system 2
Figure 2. Pie chart for Android version distribution in Google Play Store 4
Figure 3. Activity diagram for Go Guro 6
Figure 4 Us© case diagram for Go Guro 7
Figure 5. Main activity and map activity screenstiots of Go Guro 8
Figure 6. Project timetable from week 1 to week 2 8
Figure 7. Project timetable from week 3 to week 4 9
Figure 8. Project timetable from week 5 to week 6 9
Figure 9. Project timetable from vieek7to week 8 9
Fiaure 10 Project timetable from week 9 to week 10 9
Figure 11' Goigle Form questionnaire with first ^o statements ii
F 19 Bar chart for statements one to five of Google Form survey 12
13 Ba! chart for statements six to ten of Google Form survey 12
FiSre 14." System Usability System Calculations spreadsheet by Satori Interactive
with values from respondents Figure 15. Login/register form.
Figure <6. Main
Figure 17. *°Ji.reenshot of Go Guro 32
Fr'S 2?: Srpassword ernaii from ^
Figure 22. Reset password for ^
Figure 23. Reset ^ notification 35
Figure 24. Password chan^U^^^„ 35
Figure 25. Pointing to picture placeholder 36
Figure 26. Pointing to ^Ston 36
Figure 27. Pointing to j^Qgn button 37
Figure 28. Pointing to i pyi^sSWORD" button 37
Figure 29. Pointing to pirebase 38
Figure 30. Reset passwo d email tr
Figure 31. Reset Passw 33
Figure 32. Reset notification 39
Figure 33. Password e ^ ,g ^,^,tton 39
Figure 34. Pointing to O^r "DECLINE" buttons 40
Figure 35. Pointing to SESSION" button 40
Figure 36. Pointing to SESSION" button 41
Figure 37. Pointing to ^elp with?" textbox 41
Figure 38. Pointing to ^^^P" button 42
Figure 39. Pointing to MESSAGE" button 42
Figure 40. Pointing to yoUR TUTOR" button 43
Figure 41. Pointing to ^.pQpy" button 43
Figure 42. Pointing
.. 44
Figure 43. Pointing to single tiistory item ^
Figure 44. Single history psg©
Figure 45. Pointing to star rating
F«„,. 46, Pointing to -i-oGouT- Mon^ „
Figure 47. Use case diagram for Go Our
Chapter 1
THE PROBLEM DOMAIN
A Statement of the Problem
Who have difficulties in a subject might need help from a nearby
Studerits who p: j:--, a nearby tutor is a problem and involves plenty of teacher or ® -nd asking people. This is difficult especially when class
walking around ^"P^fg^gmS ^ready gone home,
hours are over, and your ciassiii<»«=
... There is also the • fear of rejection, one of our deepest human fears, that willg ^gjor because of getting rejected in-person.
discourage those who are j;^sic fear of separation— "the fear of abandonment, Fear of rejection fails unaer ^ becoming a non-person—not wanted,
rejection, and loss of connec ^ ^g^l^g ggpQgj jg jbg hierarchy
respected, or valued by anyone else.
of fear (Albrecht, 2012).
and Obiectives of the Project
B. ®®®'*®/|?rMular students (those who failed to follow the
Because instances or iri^ feiiures or dropping courses; course shifters) recommended course sequem» develop a system that will help not only are common in colleges, there rs Ending tutors without worrying about
irregular students but also reguia needlessly going around the campus, getting rejected personally ana
Therefore, the objective . g to find a tutor,
. to reduce the t""® , „ffootsteps it takes to find a tutor,
• to reduce the num , ^r^g^ of rejection.
. and; to lessen the tutees
The
and Scope of the Project
C. otfear of rejection by using anonymity. ..._
„ol .ho. I" the tule. »,«tuhxe who have
personal rejection. ^ho accepted.
declined but only the u Kgsed on one parameter only: proximity to the
The appltcetlh" f tutor i. loanO thetehv, tatlaoiog
tutee. This ensures tha^
physical movements o students in their academics and
Whan MV WPle."^ to attt<te..t.stu<lent o, atudaat-taaohar
pan also boost their mterp
interactions.
Go Guro is limited to only finding tutors. Monitoring of the study session is out of the project's scope.
D. Documentation of Existence and Seriousness of the Problem
The current system of finding tutors is to move around the campus and ask other students or professors if they are willing to help them in a topic. The problem with this is that it can be tiresome for the tutee to walk around the campus looking for tutors. Those that qualify to be a tutor are often invisible to tutees looking for them because they do not know they are able to help them.
The human fear of rejection is also a problem because it discourages tutees
to use this system due to fear of being rejected in-person. This fear extends to an altemative system that uses social media or messaging sites like Facebook, Twitter, Messenoer or Viber to privately contact a student or teacher and ask for help. There
is a possibility that the tutee can still be rejected with this alternative system, albeit
not face-to-face.
Tutee Tutor
Walk
Look for nearby Tutors
bund Tutqp-yes-
no
I
increase search radius iccept invitj
^•es
Start session
i
End session
Chapter II
REVIEW OF EXISTING ALTERNATIVES
There are two systems available for those looking for tutors. One system is
purely manuafand the other is a hybrid between manual and computerized.
. The manual system involves walking around the campus to
Manual systemJhe manua^ ^
look for tutors ^ "lopen face-to-face, they might be discouraged to ask due to
sincG th© invitation will napp fear of rejection.
Thic Qv«5tem uses social networks like Facebook and Twitter;
Hybrid Messenger. Viber. and WhatsApp; and SMS instant messaging . .. g.© used to facilitate communication between tutee
messaging. These apP"^ tutor. Even though the tutee and the tutor and tutor, but the t"*®® rejection still influences the tutee. "Most people can be physically ap^. t"®^ or rejected via a remote source like the would probably expert tnai^i a » rejected in person. Yet. our studies show
Intemet would not hurt as muc f^ological reactions to online exclusion as
Iha. PWte ™ TSSIJaSS. (S^wth. 2012>.-
they do with face-to-fa
has two problems in that it can be tiring for the tutee and
The manual system iw ^ system solves the first problem of thethe fear of rejection is communication techniques, but the fear of rejection
manual system ''y.|'®"?i'ilbrid system,
is still a problem with the nyor
developed to be completely computerized through
The proposed system w ^ gystem. remote messaging technologies is used a mobile application. Like the ny personally: the application invites
but the tutee does not n^d to a pre-set message that tells them nearby tutors who The names and faces of both tutee and tutor is not be what the tutee needs f^® P'";,g_roach lessens the fear of rejection by not attaching a
person's name or fa
Chapter Ml
approach to be taken in this subject
A. Theoretical Framework
The system is an Android application targeted for mobile devices using at least Android 4.0.3 "Ice Cream Sandwich." This makes the system portable and
usable in any location provided that the tutee has mobile data and location services
enabled.
B. Rationale for the Framework
There are more Android devices in 2016 than any other platform (Gartner.
2017) This means that the system is compatible with more users. More users mean
more adoption of the system.
Rv taroetinq Android 4.0.3 "Ice Cream Sandwich" as the minimum Android ver<.inn thP svstem is guaranteed to work with phones from as early as October
2ni 1 aHnftLn the system also targets Android 8.0 "Oreo" as the maximum. Using 2011. In addition, the sysi February 5. 2018, Android 4.0.3 "Ice Cream
to around 0.4% of visitors. Adding Google Play distribution
Sandw ch conshtutes Sandwich" to Android 8.0 "Oreo," we get
SSlTvfsSs devices capable of using the application.
low
Lcl ipop
Oreo
GicQcrbicao
Ice C'cnni Sandwich
^ Jo!lv Dean
KitKat
c Technologies You Plan to Consider to Use
AoHrniH qtiidio 3 0 1 wss used to build the application. This is the official IDE
Android Studio ^u.i wa ^p, ^j^gbase, GeoFire.
for Android Tte syste ^ jher with GeoFire. was used to display a map and
and Glide Google Maps An. lo^ ^
Glide was used for user profile photo management.
Chapter IV PROJECT PLAN
A. Concept
students will have a mobile application that can help them find tutors easily
Students win anonymously sending the invites for the studyand lessen the fear o'^ jf they will accept or reject the invitation
session. The apphcat^ mentioned in previous sections, what
o„, «e
personally. The activity diagram oeiu
finding tutors.
Go Guro
Type in topic
press search-button
GivefeedbacK
Look for nearby active Tutors
- increase search radius
Show names and profile picture
fOe feedb^
ound Tutoj>~y6S
ccept invit
Start session
End session
Figure 3- Activity diagram for Go Guro
•> • • • .v "irrr-'-•'
The use case diagram below represents what can be done in the system, it';
worth noting that the tutor can also be a tutee and therefore, can do use cases of the
tutee.
Register Accoum
Reset Password
Logout
<<iflclude>>
Select Topic Look ForTutw
view History Tuto
Accept invKaton
End Session
Figure 4. Use case diagram for Go Guro
HnnP bv not showing the name and face of the tutor to the Anonymity was ooi / j^nation before they see the name and face of tutee. The tutor must accept
each other.
riesianed according to Google's Material Design guidelines.
The the system user-friendly and therefore, more enjoyable and
This can help in screenshots of the main activity and map activity of the
enticing to use. Seeapplication below.
liiiiii
• ■ r i) ioo%112.li Mi<
Oagupan
San Jos« Citj
' ToilacCity .Cabanatuan
Ctty
Angeles
San Fernando
Olonoapo A
Manila
What <Jo yCKj want to do'
. y fid\9ng9S ^
Figure 5. Main activity and map activity screenshots of Go Guro
B. Methods
j k 69 days or ten weeks. Programming the prototype
Project development spanning 56 days or eight weeks. This wa;
alone took most of the ^„erience with Android development. Video tutorials
mainly due to having no prior programming. Because of this,
were extensively use longer than expected,
prototype development took long
Weekl Week 2
2/14/ia 2/15/15 2/16/18 2/17/18 2/18
1
2/8/18 2/9/18 /18
SUrtDate End Date 05-«h l8 Ol-Apr-18
Develop prototype
Oemo prototype to end
oe-Apr
Revise prototype
07.Apr-l8 08-Apr
Create user manual
-^"7 " 09-Apr-i8 lA-Apr-W
Revise systems proposa'
ftpr-16
Figure 6. Project timetable from week 1 to week
Mart Date End Date Week 3
Develop protctYpe OS-Feb-ia 01-Apr
1/,0/iB 7/n/I8 2/22/18 2/23/18 2/24/18 2/2S/18 2/26/13 2/27/18 2/28/18 3/1/18 3/2/18 3/3/18_3/4/_W
Demo prototype 10 end-users 02-Apf-18 02-Apr-ia
Revise fwototype 03-Apr-lS Ofr-Apr-18
Create user manual 07-Apf-lB Oa-Apr-IB Revise systems proposal
Task
Develop prototype
W-Apr-lB 14-Apr-18
Figure 7. Project timetable from week 3 to week 4
Weeks Weeks
Mart Date End Date 3/8/i8 3/9/« 3^0/183/11^83/1^183/1^^
OS-Feb-IS Ol-Apr-18
Oemo piDlotypetoend-tJsers OZ-Apr-IB 02 Apr 18 Revise prototype O^-Apr-IS 06-Ap.-18
07-Apr-18 OS-Apr-18
Create user manual
Revisesystemsproposal <«-Apr-l8 lA-Apr-lB
Figure 8. Project timetable from week 5 to week 6
Figure 8.
Task
start Date End Date
Develop prototype OS-Fet^TS 01-Apr i8|
Oemo prototype to eod-us^rs 02-Apr-18 02-Apr-18
Revise prototype 03-Apr-lS OB-Apr-W
Create user manual
07.Apr-18 08-Apr-18 Revise systems proposal 09.Apr-J8 14-Apr-13•Apr-io i- "f
week 7
ate , art3/l8 3/24/18 3/25/18 3/26/18 3/27/18 3/28/18 3/23/18 3/30/18 3/31/18 4/1/18
Figure 9. Project timetable from week 7 to week 8
niete on April 1. However, there were only thirteen The prototype testing was done in one day only. Four days were
days left in the to bugs founds during the dema Bugs were found
allotted to prototype re^the application was used outside of the development because it was the . ||g data was used instead o i 1.
ted in two days. After that, the manuscript was revised
User manual ^[ff/submission date,
on the last week up o
week 9 week 10
. ./«;/,« 4/fi/18 4/7/18 4/8/18 4/9/18 4/10/18 4/11/18 4/12/18 4/13/18 4/14/18
^^^^/3/18 4/4/18 4/5/16 J_
SrartDate En^D^^
05.Feb-l8 Ol Apr-W
Develop prototype ^ •—
02-Apr-l8 Oi-kC Demo prototype to end-osers ^ ^ —-
O^AP- W
Revise prototype __ „——
"o-'i":''
Create user manual
,^Apr « Revise systems proposal
. n Project timetable from week 9 to week 10
Figure 1U-
C. Plan for User Testing and Project Assessment
Testing was done on AMA Computer College - Las PInas and De La Salle - College of Saint Benllde. 9:00 AM to 12:00 NN time period was dedicated to AMA Computer College — Las PInas, and 3:00 PM to 6:00 PM time period was dedicated to De La Salle — College of Saint Benllde. 12:00 NN to 03:00 PM was accounted for lunch break and travel time from Las Plhas to Taft Avenue, Manila.
A total of 21 persons took part In testing. First, they were briefed with the goal and methodology of the test. They were given at most thirty minutes to use Go Guro on a control device. They were Instructed to use the app as a tutee while the author acted as the tutor, and vice-versa. Once they were ready to answer the
questionnaire, they were redirected to an online survey using Google Forms on the
same control device.
The questionnaire was maoe accoraing lo me - a quicK ana dirty
usability scale (Brooke, 1986), freely provided by Usablllty.gov. The System Usability Scale was created by John Brooke In 1986. It Is a LIkert scale consisting often Items. These Items are the following.
1 I think that I would like to use this mobile app frequently.
2. I found this mobile app unnecessarily complex.
3 I thought this mobile app was easy to use.
4 I think I would need assistance to be able to use this mobile app.
5 I found the various functions In this mobile app were well Integrated.
6 I thought there was too much Inconsistency In this mobile app.
7. I would Imagine that most people would learn to use this mobile app very
8. Snd this mobile app very cumbersome to use.
9 I felt very confident using this mobHe app.
10 I needed to learn a lot of things before I could get going with this mobile app.
I Hriitinn there was a textbox on the end of the system usability scale where
respondents can suggest Improvements to the app. It was titled: "How would you
improve this mobile app?
Go Guro Usability Evaluation
3o Guro IS an Ard'cid application :hat aiir^s to prov-de students an easy v.-ay to call for a tutor.
V.-b-'T-voj need neb on a specinc topic, a project, or for a peer revieiv of your thesis. Go Guro is
your app
Th'S survev focuses on general ease of use of Go Guro This can be accoirplished m less than 5
minutes
Please sjbni t 'eedback regarding tne general ijsabilit>' of Go Suro js.ng tne System tsab.lity Scale
below
S Digital Eq jipn^ent Corporation. 1986
rec ..iref
Email address
System Usability Scale
strongly Disagree
Disagree Neut'al Agree Strongly Agree
i think that)
v.ould liketouse Q
this rrobre aop frequently
I found this
mobile app Qj
unnecessarily complex.
O
o
o
o
o
o
o
o
Figure
11 Google Form questionnaire with first two statements
was of this was
focused on the overall ease of use of Go Guro. The survey
The and administer, but scoring it proved to be difficult. Because
not hard to set automatically calculates the SUS score was used. This
'Jovided b?Satori Interactive.
11
ChspiBr V
RESULTS AND DISCUSSION
A. System Usability Scale Results
The fiaures below show bar charts. In the X-axis are the statements and in the
Y-axis are the number of respondents. These charts were provided by Google
Forms.
,,, —Dtcaoree M Agree Mi Strongly Agree
12 5 nn stroftgly Disagree Mi Disagree
100
75
50
25
00
Figure 12 Bar chart for statements one to five of Google Form survey
■ Disagree 7 ■; Neutral M Agree Mi Strongly Agree
. o Dor rhart for statements six to ten of Google Form survey Figure 13. Barcndu
iri like to use this mobile app frequently. Majority of I think that I wouio , ..gtrongly agree." However, there were three respondents answered ag » gpe who answered "neutral," and one who
respondents who d'®^^ •
answered "strongly ci'
. ann unnecessarily complex. Nine respondents I found this six with "disagree." Four answered "neutral" and
answered "strongly disagre are in disagreement with this statement, two that answered "agree.
bile app was easy to use. Majority of respondents agreed, I thought answered "agree" and five answered "strongly agree."
having eleven respon
d assistance to be able to use this mobile app. Majority
I think I would ne ^ respondents answered "disagree" and seven
of respondents "
V disagree.
InS "Strongly disagree.
I found the various functions in this mobiie app were well integrated.
I founa I anree" and eight answered "agree." Three answeredSsSr^'^and two answered "strongly disagree." Nonetheless there are five who
answered "neutral."
. .u there was too much inconsistency In this mobile app. Many
respondente disagree with this statement, but seven respondents were neutral.
. j ■ ..iee that most people would learn to use this mobile app
I would imagmeth statement, with five "strongly agree" and eight
very quickly. Majority ^9 -neutral." three answered "disagree." and one
"agree" answers. Four answereu ii<=
answered "strongly disagree.
o I«t of things before I could get going with this mobile I needed to learn a lot w » g^gjement. Nine respondents answered
app. Most are in ««®®®H®«transwered "disagree." There were also four who answered
"neuirai anaiwown
. - I Kabllltv Scale Results Interpretation
B. the corresponding point each option on the statements
in the questionnaire.
Value
Option
Strongly Disagree
Disagree Neutral Agree
strongjy_^?!^
4 5
,e 1 Point value of each option in System Usability Scale
^ , .tP the scores for each statement. For odd numbered
I leinn this we can *^0 value minus one. For even numbered . » 3 5.7. 9). minus the value. The scores are within
statements ( . ^ ^ g .,0) the ^ computed, they are added
?h?S 0 to 4.'0nce aj p^^^yed the overall system usability score for
together then multipHe
13
one respondent. The table below shows an example computation for one
respondent.
Number
Strongly Disagree
Strongly
Agree Value Calculation Score
1 □ □ □ 0 □ 4 4-1 3
2 0 □ □ □ □ 1 5-1 4
3 □ □ □ □ 0 5 5-1 4
4 0 □ □ □ □ 1 5-1 4
5 □ 0 □ □ □ 2 2-1 1
6 0 □ □ □ □ 1 5-1 4
7 □ □ □ 0 □ 4 4-1 3
8 0 □ O □ □ 1 5-1 4
9 □ □ □ 0 □ 4 4-1 3
10 □ □ 0 □ □ 3 5-3 2
Sum x2.5
32 80
Table 2. Score computation for one respondent
fnr all respondents have been computed, the final score for
a., respSnTs^Seraged and the overall score Is produced.
tinn was done using Satori Interactive's System Usability System The computa computations built-in. The survey information Calculations spreaos porms and put into the spreadsheet. The figure below
was extracted from ooog