Professional Documents
Culture Documents
Utar Lost and Found Management System
Utar Lost and Found Management System
SYSTEM
September 2020
iii
DECLARATION
I hereby declare that this project report is based on my original work except for
citations and quotations which have been duly acknowledged. I also declare that it has
not been previously and concurrently submitted for any other degree or award at
UTAR or other institutions.
Signature :
ID No. : 1701169
I certify that this project report entitled “UTAR LOST AND FOUND
MANAGEMENT SYSTEM” was prepared by CHIN YUN TING has met the
required standard for submission in partial fulfilment of the requirements for the award
of Bachelor of Science (Honours) Software Engineering at Universiti Tunku Abdul
Rahman.
Approved by,
Signature :
Signature :
Co-Supervisor :
Date :
v
The copyright of this report belongs to the author under the terms of the
copyright Act 1987 as qualified by Intellectual Property Policy of Universiti Tunku
Abdul Rahman. Due acknowledgement shall always be made of the use of any material
contained in, or derived from, this report.
ABSTRACT
People lose things occasionally. Scattered and unorganized lost and found information
can have a significant impact on the possibility to get back the lost items. The
information cannot reach the rightful owner if they are not well-managed.
Hence, the UTAR lost and found management system project was
implemented to provide a standardized, centralized way to handle lost and found items
in UTAR. The project objectives are to analyze the existing lost and found problems
in UTAR as well as the features of similar systems and develop a cross-platform lost
and found management system to improve the efficiency and effectiveness in
managing and organizing the lost and found items in UTAR.
The result showed the user preference between web application and mobile
application are almost equal based on the survey conducted. Thus, a cross-platform
application was developed so users can access through a web browser or mobile
application. The basic functionality of the application includes viewing, reporting and
updating lost and found items, submitting claims, selling and bidding expired items.
MySQL database was used as the system database. The framework of the web
application is Laravel while the mobile application is React Native. The adopted
methodology in this project is prototyping methodology. Unit testing, integration
testing and user acceptance testing were conducted to evaluate the system. Based on
the user acceptance testing conducted, most of the respondents are satisfied with the
function of the system. Some respondents suggested to improve the user interface of
mobile application so it can be more attractive for users.
vii
TABLE OF CONTENTS
DECLARATION iii
APPROVAL FOR SUBMISSION iv
ABSTRACT vi
TABLE OF CONTENTS vii
LIST OF TABLES xi
LIST OF FIGURES xiv
LIST OF SYMBOLS / ABBREVIATIONS xviii
LIST OF APPENDICES xix
CHAPTER
1 INTRODUCTION 1
1.1 Introduction 1
1.2 Problem Statement 1
1.3 Project Objectives 4
1.4 Proposed Solution 4
1.5 Project Approach 6
1.6 Scope 7
1.6.1 System Scope 7
1.6.2 Project Modules 8
2 LITERATURE REVIEW 11
2.1 Introduction 11
2.2 Software Development Methodologies 11
2.2.1 Waterfall Methodology 11
2.2.2 Agile Methodology 13
2.2.3 Comparison of Waterfall and Agile 16
2.2.4 Prototyping Methodology 17
viii
2.2.5 Conclusion 18
2.3 Existing Lost and Found Systems 19
2.3.1 Crowdfind 19
2.3.2 RepoApp 21
2.3.3 FidoFinder 23
2.3.4 Comparison of Crowdfind, RepoApp and FidoFinder
25
2.3.5 Conclusion 25
2.4 Auction Models 26
2.4.1 Open-Bid Auction 27
2.4.3 Sealed-Bid Auction 28
2.4.4 Conclusion 29
4 PROJECT SPECIFICATION 47
4.1 Introduction 47
ix
5 SYSTEM DESIGN 72
5.1 Introduction 72
5.2 System Architecture Design 72
5.3 User Interface Navigation Design 73
5.4 Database Design 74
5.4.1 Entity Relationship Diagram 74
5.4.2 Data Dictionary 75
5.5 Activity Diagram 81
6 SYSTEM IMPLEMENTATION 96
6.1 Introduction 96
6.2 Route Design 96
6.3 Role-Based Access Control Diagram 102
6.4 Results and Discussions 103
6.4.1 Register 103
6.4.2 Login 105
6.4.3 Announcement 107
6.4.4 Found Item 110
6.4.5 Claim Item 112
6.4.6 Lost Case 115
6.4.7 Item for Sale 117
6.4.8 Profile 120
6.4.9 Staff Account 122
6.4.10 Item Category 123
REFERENCES 165
APPENDICES 167
xi
LIST OF TABLES
Table 2.1: Average scores for each factor, for both Kanban and
Scrum (Lei, et al., 2015) 15
Table 2.2: Defect Analysis for Waterfall and Agile Projects (Poe
and Seeman, 2019) 16
Table 7.1: Unit Test Case – Test Register New Account 125
Table 7.3: Unit Test Case – Test View and Search Announcement 128
Table 7.4: Unit Test Case – Test Create, Edit and Archive
Announcement 130
Table 7.5: Unit Test Case – Test View and Search Item Found 132
Table 7.6: Unit Test Case – Create, Edit and Archive Item Found 134
Table 7.10: Unit Test Case – Test View and Search Lost Case 141
Table 7.11: Unit Test Case – Test Report Lost Case 144
Table 7.12: Unit Test Case – Test Archive Lost Case 145
Table 7.13: Unit Test Case – Test View and Search Item for Sale 146
Table 7.14: Unit Test Case – Test Bid Item for Sale 147
Table 7.15: Unit Test Case – Test Approve Item for Sale 148
LIST OF FIGURES
Figure 3.4: Way to find the lost and found information in UTAR 33
Figure 5.15: Activity Diagram : View and Search Item for Sale 91
Figure 6.7: Home page from staff and student view 106
Figure 6.12: Post new announcement page from admin view 109
Figure 6.14: Item Found page from staff and student view 110
Figure 6.15: Item Details page from staff and student view 111
Figure 6.18: Claim Item page from staff and student view 113
Figure 6.19: Claim Item page from staff and student view 113
Figure 6.20: Claim Record page from staff admin view 114
Figure 6.22: Lost Case page from staff and student view 115
Figure 6.23: Report Lost page from staff and student view 116
Figure 6.26: Item for Sale page from staff and student view 118
Figure 6.27: Item Details page from staff and student view 118
Figure 6.28: Item for Sale page from staff admin view 119
Figure 6.29: Item for Sale page from mobile view 119
Figure 6.30: Profile page from staff and student view 120
Figure 6.31: Profile page from staff and student view 121
Figure 6.34: Staff Admin Account page from system admin view 123
Figure 6.35: Create New Staff Admin account page from system
admin view 123
Figure 6.36: Item Category page from system admin view 124
Figure 6.37: Add New Item Category page from system admin
view 124
xviii
LIST OF APPENDICES
CHAPTER 1
1 INTRODUCTION
1.1 Introduction
According to James Gleik’s study, people spend around 16 minutes each day to search
for their lost items (Ahmad, et al., 2015). Furthermore, according to Tunajek (2009),
the American Demographic Society states that Americans as a whole spend almost 9
million hours a day looking for lost items and it might be because of excessive clutter.
The above research shows that people are extremely careless in handling personal
items. Most of the time these lost items are around us but we are not able to find out
on time.
People nowadays are too busy and it is common for them to lose items.
Universiti Tunku Abdul Rahman (UTAR) students have a habit of losing or misplacing
their personal items which might be valuable to them such as keys, student id cards
and mobile phones. All UTAR students are allowed to report and hand over any lost
items to the Department of Safety and Security (DSS). There are some Facebook
groups such as “UTAR-Sg Long Campus” that allow students to post or check their
lost and found items. If students found their items on the Facebook groups, they can
contact the persons to claim back their lost items. However, the current way is not
efficient to manage and deliver the latest lost and found information to relevant
students so the rate of return items is low.
The main goal of the project is to design and implement an application to
handle all these items and ensure that everything is tracked efficiently. It is a cross-
platforms so users can access it through a web browser and mobile device. This will
eventually reduce the time and efforts for handling lost and found information.
respondents also reveal that there is too much information on Facebook and they
do not know where to get the actual information.
For students who have lost items, many actions should be taken to search for
their items. For example, they should go to DSS to check for their items. In addition,
students should check the Facebook posts as people might post lost and found
advertisements anywhere. It is time-consuming for students to read through all the
Facebook posts one-by-one to find their lost items. At this time, there is no specific
platform that allows the staff to manage and organize all information at ease. It
causes confusion and inconvenience as students require to access various sources
to find all relevant information.
iii. Failure to deliver the latest lost and found information to students
The latest lost and found information is expected to reach target students to ensure
a high rate of returned items. However, based on Appendix B, 73.3% of
respondents think that students have half a chance or even less than it to see their
lost items being advertised on Facebook. No respondent believes that students can
see their lost items being advertised on Facebook. It shows that the confidence
level of students at Facebook in delivering the latest lost and found information is
quite low.
There are so many posts on Facebook per day as users are allowed to post
anything on it. Most of the time the lost and found advertisements are mixed with
other irrelevant posts and it is easy to skip over the posts. Once they skip over the
posts, they might never see it again and it reduces the chances for the owners to
claim back their items.
Furthermore, there is no restriction for the contents of Facebook posts so
students can post the lost and found advertisements in any format. For example,
some Facebook posts only attach with single items images without any further
descriptions such as location and date found. It might cause people to be confused
with just providing the images if the items are very common. Some people might
use the search by keywords function on Facebook to find their lost items. However,
it might be useless if students do not provide a detailed description for the items.
4
1.6 Scope
The section below explains the system scope and project modules.
This project is to implement a lost and found management system for UTAR staff and
students which involves a few modules in this cross-platform application. The admins
can only access through web browsers. However, for UTAR staff and students, they
can access through web browsers and mobile applications.
All lost and found information will be displayed orderly with detailed
descriptions. The system provides a search engine for staff and students to search and
filter the items based on different criteria. If items matched the search criteria, the
system will display that particular item as a search result, otherwise, it displays ‘No
record found’. Staff and students are allowed to report lost items by filling in the forms
in the system. Form validation is applied in this system so staff and students are
required to provide all necessary information in order to report the items successfully.
If staff and students found their lost items in the system, they can submit the claim
form before they claim back their items at the department. Furthermore, the staff and
students can view all announcements posted by admins.
Admins can login into the system to manage all records in this system such as
lost and found items records, claims records as well as announcements. All the found
items will be kept for a certain duration. The default expired duration is 30 days.
8
However, the admin can set their own expired duration in the system. If there is no
response from students within the expired duration, all unclaimed items will be opened
for students to bid. Staff and students can enter the bid amount for the items. The bid
amount should be higher than the current bid. The admins are allowed to determine
the starting bid of these selling items.
CHAPTER 2
2 LITERATURE REVIEW
2.1 Introduction
In this chapter, the comparison of software development methodology will be
discussed. Besides that, similar existing lost and found systems are studied. The system
features will be discussed and extracted out to include in this software project. Various
auction models will also be compared and discussed in the following section.
High visibility
Kanban card wall enables the project team to visualize the current progress of
the project. The card wall states accurately what work should be done within a
certain period. All required tasks are written onto colored sticky notes and
added into the Kanban backlog. Once a task is completed in a specific step, it
moves to the next step until it is fully completed. The tasks in the backlog
should move through a number of steps until they are completed (Lei, et al.,
2015).
Limiting Work in Process (WIP)
Kanban limits the number of tasks in any step of the card wall. It can accept
more tasks if a step has fewer tasks. However, if a step reaches a maximum
number of tasks, it should only accept a new task if any tasks complete and
move to the next step. A queue is used to allow for slack between steps and the
tasks are assigned based on their priority. It means that we should put the most
attention to the most important tasks to reduce any risk of task incompletion.
The sprint is the core of the Scrum process. According to Lei, et al. (2015), each sprint
can be considered as a sub-project with a plan of what should be built as well as how
it should be built. Normally, the project teams require 30 days for a sprint. The
development goals cannot be changed within the sprint cycle. However, the sprints can
15
be cancelled and project scope can be redefined if any changes occur to meet customers’
requirements.
Scrum teams require a lot of meetings during the sprint cycle to ensure the product
quality of each sprint. In the beginning, the project teams should conduct a sprint
planning meeting to plan for the goals as well as the product’s implementation process.
Each member should have a common understanding of the project goals after the
discussion. The duration of the sprint planning meeting is usually eight hours. In the
sprint execution, there is a daily Scrum meeting for 15 minutes. Project team members
should update their current progress and challenges faced each day. In addition, a sprint
review meeting is conducted to discuss the contribution of each team member. It can
also be a product demonstration so the project teams can identify the potential
improvements for future sprint.
Table 2.1: Average scores for each factor, for both Kanban and Scrum (Lei, et al.,
2015)
Factor Kanban Scrum
Time schedule 4.05 3.67
Clear project scope 3.68 3.60
Budget handling 3.79 3.87
Risk control 3.93 3.83
Available resource 3.93 3.88
Quality of project 4.02 3.98
Kanban scored an average of 4.36 but Scrum only had an average score of 3.76
for the awareness of project status. It shows that Kanban users are more aware of the
project status than Scrum users. Furthermore, in the time schedule factor, the result
16
states that Kanban scored 4.05 while Scrum only scored 3.67. It shows that Kanban
users can deliver tasks on time according to the project schedule. In scope, budget, risk
and resources factors, Kanban scored slightly better than Scrum as the difference of
average scores between them is not more than 0.1. Both Kanban and Scrum can deliver
successful software projects as they scored around 4.0 in the quality factor. The survey
results show that Kanban is more efficient than Scrum in terms of schedule, scope,
budget, risk, resources and quality factors. In addition, Kanban performs better than
Scrum in awareness of project status.
Table 2.2: Defect Analysis for Waterfall and Agile Projects (Poe and Seeman, 2019)
Project Methodology Waterfall Agile
Total Combined Development Hours 3140 2076
Total Number of Production Defects 19 21
Total Number of Pre-Production Defects 43 13
Percentage of Production Defects to Development 0.61% 1.01%
Hours
Percentage of Pre-Production Defects to 1.37% 0.63%
Development Hours
The software development hours and software defects were recorded for all teams
during the software development life cycle. Based on the result, the project teams
required 3140 development hours to complete a Waterfall project, which is 1064 hours
longer than the Agile project (2076 hours). The total number of pre-production defects
in Waterfall project teams was much higher than Agile project reams, 43 to 13
respectively, with the percentage of pre-production defects to development hours, 1.37%
17
to 0.63%. Furthermore, the total number of production defects for Waterfall (19
defects) and Agile (21 defects) were almost the same.
However, when we factored in the software development hours for both
methodologies, Waterfall only had 0.61% of production defects to development hours
whereas Agile had 1.01%. It is because more defects were found during the pre-
production stage and the Waterfall project team spent more time fixing it before it
came to production. The result of case study reveals that Waterfall methodology can
ensure a higher software quality code but it requires a longer software development
time for testing.
2.2.5 Conclusion
the development stage of the project. The feedback and comments of end-users are
very important to a system prototype as any errors can be detected earlier.
Furthermore, the prototyping methodology has a better change control process.
The changes or modifications can be flexible based on the users’ feedback. It ensures
that there are no out of scope or run-away-requirements at the end of the development
stage. A more user-friendly system can be developed with the involvement of users by
implementing the prototyping methodology.
2.3.1 Crowdfind
admin to verify their lost items. The more information provided, the higher the
chance to match an item successfully.
Chat function
The admins can directly communicate with customers in the system for further
information or coordinate the pickup time and location.
Automated reporting
The system can generate reports from the dashboard automatically. These
reports can show the number of items is matched, the most common lost items
and others.
Email notification
The users will receive a confirmation email once a claim form is submitted. If
they receive a message from the admin or their claim is accepted, they will
receive an email notification from the system.
Evaluation on Crowdfind
Crowdfind is a lost and found system that was developed by a Chicago-based company.
Crowdfind is an enterprise software and it is very popular to be used at universities in
the United States such as University of Michigan, University of Iowa, Texas State
University and more. Its image-based features and specialized dashboard provide
companies with a better user experience
The best feature of Crowdfind is the customized claim forms. The system will
generate customized questions that are set by admins for different items categories.
For example, mobile phone owners should provide brand, model, color and passcode.
The person who wants to claim back the identity card should provide the last 4 digits
on the card as well as the date of birth. This item verification process is based on the
detailed information provided by users on the claim form. Therefore, claims may be
rejected by admins if accurate information is not provided. It helps to ensure that all
the found items are returned to the actual owners. For those who plan to pretend to be
someone else will fail to claim the items as they cannot provide sufficient information
for that particular item.
Furthermore, another good feature is the email notification for claim forms. A
confirmation email with relevant details will be sent to students’ inbox after a claim
form is submitted. It is possible that some students might forget the appointment they
21
have made before. With the existence of email notification, students can directly check
and confirm their appointment in the email without logging into the system.
However, Crowdfind has a limitation as there is not much information provided
in the lost and found list. The system only shows item images and item categories in
the user view. It is still very difficult for the users to identify their items accurately
although the images are provided as some of the items look similar. It causes many
rejected claim cases as people need more unique information for verification.
In conclusion, unlike Crowdfind, the system should provide at least 3 types of lost
and found information in the list. It is very helpful for students to identify their personal
lost items clearly without much clicking. Furthermore, the email notification will also
be implemented in the system.
2.3.2 RepoApp
in the receiver, subject and body of the email. The admin can modify any
information before sending it if they are not satisfied with the email contents
generated. Furthermore, the email template can be customized anytime based
on the requirements.
Auto-match items
The users can search items with different criteria in the system. Based on the
criteria provided, the system will try to find and match all the items. Any
suspected items that match the criteria will show on the match list for users’
verification.
Release of unclaimed items
Admins are allowed to set the expired date for each item. After the items are
updated, the system will count the number of days until it reaches the expired
date. Any unclaimed items will be released from the lost and found information
list.
Evaluation on RepoApp
RepoApp is a web-based lost and found software with a mobile-friendly design of user
interface. It allows customers to integrate with the website so any operations can be
done within their organization website. National University of Singapore (NUS) is
now using RepoApp to manage lost and found items within the campus.
The best feature of RepoApp is the email notification to suspected owners.
Normally, if the admins want to contact the suspected owners, they should login into
their email account and write the email content before sending emails. It is a very time-
consuming procedure. By implementing this email notification feature, admin can
customize their own email template and the system can directly send emails based on
the template provided. This feature reduces the employees’ time spent working on
unproductive tasks.
However, RepoApp does not provide item images in the lost and found
information list. A picture is worth a thousand words as it can show the unique features
of items more quickly and effectively than words. Users might find it very difficult to
identify their lost items based on the descriptions provided.
In conclusion, the features of the search engine and email notification to inform
suspected owners will be implemented in this system. It helps to reduce the issues of
information overload as well as improve the deliverability of lost and found
23
2.3.3 FidoFinder
Users can pre-register their dogs although the dogs are still safe. The system
will update dogs in safe listings. Users can mark the status as “lost” if their
dogs get lost. The person who found the dogs can change status to “presumably
safe” and directly contact the owners of lost dogs.
Evaluation on FidoFinder
FidoFinder is a lost and found dog website that helps to connect the lost dog’s owners
and finders. The best feature of FidoFinder is the pre-registration function. It allows
people to register their dogs online before they get lost. Currently, FidoFinder already
has 508,387 registered dogs. It becomes a large public database to store information
about dogs. If people find a lost dog, they can search the registered dog listings based
on the characteristics of the dog to get the owner’s information. It eases the whole lost
and found process to be more efficient and effective.
However, the user interface (UI) design of FidoFinder looks messy. The lost and
found dog listings are not shown in the home page. Users should enter the search
criteria such as postcode, colour or dog breeds in order to get the information. It is not
user-friendly as users are required to fill in the form before viewing the dog
information and it reduces the willingness for people to use this website. Therefore,
the system should directly show the lost and found dog listings in the first page of the
website so all information can reach users at the earliest.
In conclusion, the issues of UI design in FidoFinder are studied and will be
improved in this system. The lost and found information will be shown in the home
page so users can view the item directly once they enter the web page. Furthermore,
the search options are provided on the top of the listings so users can search the items
anytime if it is needed.
25
2.3.5 Conclusion
In conclusion, different lost and found systems have their own unique features that
serve for different purposes. There are also some general features such as view lost
and found information. Based on the evaluation of these lost and found systems,
Crowdfind has the best features as compared to RepoApp and FidoFinder.
The overall interface design of Crowdfind is clean and neat which enables users
to identify their items effectively. The features that are chosen to be implemented in
this project are:
i. View lost and found information in card format
ii. Show item images
iii. Search and filter function
iv. Release of unclaimed items
v. Email Registration
26
The above features can increase the willingness of students to report their lost
items and actively view the information in the system. The search and filter function
allow students to find the information they want rapidly. All the unclaimed items will
be released and opened for students to bid after the expired date. If the students register
a new account, they will receive a verification mail.
Unlike the sealed-bid auction, English auction is completely open and transparent.
The participants are able to know the identity of others during the auction.
Therefore, the participants can easily estimate the item valuation based on the
observation towards each other. For the bidders who do not have much auction
experience, they can observe other bidding behaviour as well as the highest bids at
the past moments. All this information reveals the actual value of the items and
current market demand.
Flexible bid jumping
During the English auction, all participants can determine their own next bid
amount. It encourages the participants to place the bids based on their ability.
Flexible bid jumping actually increases their willingness to bid for the items as the
bidders only require to bid a small amount with a slightly price increment.
However, if all the participants have limited financial ability, the bid jumping can
be very low, the seller cannot obtain the maximum possible price.
(2014) also stated that Dutch auction is useful if the seller wants to sell expensive items
with high demand. The process of Dutch auction is also synchronous. Unlike English
auction, the item of Dutch action starts at an extremely high price. If the potential
buyers are willing to accept the price, they can submit the bid to get the item. The seller
gradually lowers the price of the item until the item has been sold out.
The main characteristics of Dutch auction:
Work well when the bidding process is slow
Unlike English auction, the participants can wait until the last possible moments
to place their bid to prevent others to compete with them. It causes the whole
bidding process to become slow as most participants are not willing to place bids
at the beginning. According to Ilonka (2017), Dutch auction can solve this problem
perfectly. In Dutch auction, the seller continuously lowers the price if there is no
bidder. It reduces the waiting time as well as the high pressure causes participants
tend to place the bids earlier to prevent others win the item. Therefore, the Dutch
auction can be carried out faster than English auction.
Starting price is relatively close to market price
In Dutch auction, the seller can set a starting price which is relatively close or even
higher than the market price. The high pressure causes participants to bid sooner
as the number of bids is limited. If the items are in high demand, the final price of
the items should be very high. However, for the bidder without much experience,
they might miscalculate or overbid the item. This situation is called the winner’s
curse.
the highest bid only has to pay the amount submitted by the second-highest bidder
(Ilonka, 2017). Since all participants are not able to know the bid amounts submitted
by others, the second-price sealed-bid auction can give them the confidence to bid the
item with the best price without overpaying.
According to Hong, Wang and Paylou (2016), a study was conducted to
investigate the effect of bid visibility on the auction performance by using the data
from an online labor market. Based on the result, the sealed-bid auction (59.2%) can
attract 18.4% more bids than open-bid auction (40.8%). However, the open-bid auction
can offer a higher buyer surplus, which is $10.87 higher than the sealed-bid auction.
Based on customer feedback, the open-bid auction can also generate higher customer
satisfaction than the sealed-bid auction. It shows that although the sealed-bid auction
can attract more bids, the open-bid auction can have higher buyer surplus and customer
satisfaction. Therefore, the sellers should determine the auction model based on their
requirements and expected achievements of the auction.
2.4.4 Conclusion
In conclusion, English auction will be chosen as the auction model in the system to
sell the unclaimed items. It is because all items being sold are pre-owned items so it is
difficult for the admin to determine the value of items. By implementing the English
auction, the admin can set a minimum price for the items. Once the items are open for
sale, all users are allowed to place any bids which are higher than the current price.
The system will automatically raise the bids according to the bids submitted by users.
Furthermore, the auction in the system mainly aims to clear out all unclaimed
items, instead of to earn higher profits. Therefore, English auction with flexible bid
jumping actually encourages potential buyers to place their bids based on their ability
without any financial pressure since the users in the system are mainly students. By
doing so, the auction can have more participation from students.
31
CHAPTER 3
3.1 Introduction
The software development methodology used in this project is prototyping
methodology. The figure below shows the model of prototyping methodology.
requirements and development tools can be determined. A quick design for system
storyboard was also developed.
Figure 3.4: Way to find the lost and found information in UTAR
Based on Figure 3.3, most of the students (76.7%) access the lost and found
information in UTAR through DSS. Some students (16.7%) access UTAR lost and
34
What is the problem you encounter when you try to find the lost and found
items in UTAR?
30 responses
No issue.
No image provided
Only can find lost item on DSS, but sometime I lazy go to DSS department
Some people are lazy to hand over the items to relevant department
When I lost something at school and I can't find it at the spot I left it.
Hard to find
No idea
Lazy to go DSS
Based on Figure 3.4, the main problems encountered by students are as listed
below:
Based on Table 3.1, 15 respondents (50%) think that it is hard to search and
access the lost and found information in UTAR. For the student who usually checks
36
lost and found information through DSS, 8 respondents (26.67%) think that it is
inconvenient and time-consuming to check information through DSS. It is because
some students might need to go DSS multiple times to check for their lost items until
the item is found. 2 respondents (6.67%) state that they cannot get the latest
information immediately and the other 2 respondents (6.67%) think that the item
information on Facebook is incomplete. Some of the students do not provide the item
images or the item descriptions are not unique enough for owners to identify their lost
items.
Figure 3.6: Comments on the lost and found information posted on Facebook
Based on Figure 3.5, most of the respondents (46.7%) think that it is hard to
access the lost and found information on Facebook as it is scattered and unorganized.
They are different types of sources for students to post lost and found advertisements
on Facebook. It causes confusion as students cannot identify which are the most
reliable and trustable sources. Furthermore, 40% of respondents state that it is still
acceptable for the lost and found information posted on Facebook. Only 13.3% of
respondents have no issue with it.
37
Figure 3.7: Confidence level on the deliverability of lost and found information on
Facebook to students
In this question, the respondents are required to rate the deliverability of lost
and found information on Facebook to students based on their opinions. Based on
Figure 3.6, most of the respondents (36.7%) rate 3 for the deliverability of lost and
found information on Facebook to students. It is because the deliverability of Facebook
posts is very random so people cannot predict who will receive the information. No
respondent believes that students definitely can receive the lost items posts advertised
on Facebook. Furthermore, only 1 respondent thinks that the student definitely cannot
receive the lost and found information on Facebook. Based on the result in this
question, we conclude that most of the respondents have a moderate confidence level
on the deliverability of lost and found information on Facebook to students.
38
0 5 10 15 20 25 30 35
Figure 3.8: The most important components in lost and found advertisements
In this question, all respondents are allowed to select the three most important
components. Based on Figure 3.7, item image (29 respondents) are the most important
component in a lost and found advertisement, followed by location found (24
respondents) and date found (11 respondents). It is because the image can directly
show the unique features of the item, together with the location found and date found,
the owner can almost identify their lost item. Furthermore, 10 respondents think that
the additional descriptions for the item are also important. The least important
components are the item category (5 respondents) and the item name (5 respondents).
Figure 3.9: Preferred platform to access UTAR lost and found information
39
What are the features you expect in a lost and found application?
30 responses
Search feature.
Search by keywords
Register by student id
User who lost their item can also post picture to find back their lost item.
40
Item filter
Location of my item
Based on Figure 3.9, the main expected features can be concluded as listed
below:
Table 3.2: Main Expected Features in Lost and Found Application
Expected Features Number of Respondents
Clear and well-organized lost and found 13 (43.3%)
information
Search and filter items 8 (26.7%)
Allow student to report lost and found items 3 (10.0%)
User-friendly interface 2 (6.7%)
High accessibility 2 (6.7%)
Make appointment before claim back items 1 (3.3%)
Notification 1 (3.3%)
41
Based on Table 3.2, 13 respondents (43.3%) expect to have a clear and well-
organized lost and found information in the application so they can have a better view
on all items. 8 respondents think that search and filter functions are important in a lost
and found application. Furthermore, 3 respondents also suggest to allow students to
report their lost and found items on the application. It is because some of the students
are too lazy to hand over the items to DSS. By doing so, it increases the willingness of
students to report anything they found around UTAR. Few respondents also suggest
to have a user-friendly interface (2 respondents), a high accessibility system (2
respondents), make an appointment before claim back items (1 respondent) as well as
the notification function (1 respondent).
Figure 3.11: Confidence level on the positive impact of search functionality towards
the deliverability of lost and found information
Based on Figure 3.10, most of the respondents (93.3%) believe that an accurate
search functionality in application can improve the deliverability of lost and found
information to students. Only 6.7% of respondents hold the opposite views. An
accurate search functionality means that students can retrieve the lost and found items
accurately based on the selected search criteria such as keywords, item categories or
date range. The result shows that the respondents have a high confidence level on the
positive impact of search functionality towards the deliverability of lost and found
information to students.
42
i. Wamp Server
Wamp Server is a web development platform that allows us to create a dynamic
web application with Apache, PHP and MySQL (WampServer, n.d.). The
features of Apache, PHP and MySQL are explained below.
Apache: Apache is a HTTP web server
PHP: PHP is a scripting language that is used for web development.
MySQL: MySQL is a database management system that is used to store
all data
ii. Laravel
Laravel is a free, open-source PHP framework intended for web application
development by adopting the model-view-controller (MVC) architectural
43
pattern (Laravel, n.d.). A consistent API and predictable structures are provided
by Laravel framework (Stauffer, 2019). According to Kaluža, Kalanj and
Vukelić (2019), Laravel has large communities that can respond to the issues
quickly. Therefore, developers can learn faster as there are more sufficient
documentation and guidelines provided in Laravel communities.
v. Atom
Atom is a text and source code editor. The most attractive feature of Atom is
the GitHub package is bundled with Atom so developers can directly create
new branches, push and pull as well as solve the merge conflicts in Atom
(Atom, n.d.).
Additional features were added into the prototype for web application.
iii. Evaluation phase
5 users were invited to evaluate the prototype with added features. Another
feedback from users was collected and analysed for better improvements.
v. Refining phase
The feedback analysis was summarised to determine the section to be refined.
Then, the prototype was refined.
3.5 Deployment
During the deployment phase, the system for both web application and mobile
application was fully completed. All features in the system were tested with no error
and necessary bug fixing was done. The system is ready to be available for use.
47
CHAPTER 4
4 PROJECT SPECIFICATION
4.1 Introduction
In this chapter, functional requirements were determined based on the result of the
survey conducted. The use case diagram and use case descriptions will also be shown
and described in the following section.
2. The system shall send a verification mail to users to activate user accounts.
3. The system shall allow users to request for a resend email if the users have not
received a verification email.
Login
1. The system shall require users to enter email and password to login into the
system.
3. The system shall display “No Record Found” if no announcement matches the
search criteria.
7. The system shall display an error message if users do not provide all
information required.
10. The system shall display a confirmation dialog box if the admins clicks on the
archive button.
3. The system shall allow users to filter items by selected date range.
5. The system shall display “No Record Found” if no item matches the search
criteria.
6. The system shall allow users to click on the item card to navigate to the detailed
page.
7. In the detailed page, the system shall display item image, item name, item
category, description, date found, location found and current status.
Claim Item
1. The system shall display item information and user’s personal information.
3. The system shall allow users to submit the claim form after the claim date is
selected.
4. The system shall change the item status from “Available” to “Pending” if the
claim form is submitted.
5. The system shall display an error message if users do not select the claim date.
49
3. The system shall allow users to filter items by selected date range.
5. The system shall display “No Record Found” if no item matches the search
criteria.
6. The system shall allow users to click on the item card to navigate to the detailed
page.
7. In the detailed page, the system shall display item image, item name, item
category, description, possible location, date lost and owner information.
2. The system shall require users to upload the image of the lost item.
3. The system shall allow users to submit the report form after all information are
provided.
4. The system shall display an error message if users do not provide all required
information.
4. The system shall allow users to click on the item card to navigate to the detailed
page.
50
5. In the detailed page, the system shall display all information of the item such
as item image, item name, item category, description, starting price, current
price and bid end date.
6. The system shall allow users to view all bids for the selling items.
7. The system shall allow users to enter the bid amount for the selling items.
8. The system shall display an error message if the bid amount entered by users
is lower than or equal to the current price.
9. The system shall change the value of the current bid after users place a new bid
amount.
2. The system shall allow admins to search the item based on different attributes.
3. The system shall display “No Record Found” if no item matches the search
criteria.
5. The system shall require admins to enter item information such as item name,
item category, description, location found, date found, person to claim item and
the location to claim item.
6. The system shall require the admins to upload the item image.
7. The system shall allow admins to update a new found item after all information
are provided.
8. The system shall display an error message if admins do not provide all required
information.
9. The system shall set the item status as “Available” as default once a new item
is added.
10. The system shall allow admins to modify the item information.
51
12. The system shall display a confirmation dialog box if the admins clicks on the
archive button.
13. The system shall set the item status as “Expired” if the item is expired.
Manage Claim
1. The system shall display the claim records such as claim id, item id, item name,
item image, item category, claim date, owner name, email, contact number and
current status in table format.
2. The system shall allow admins to search the claim records based on different
attributes.
3. The system shall display “No Record Found” if no claim record matches the
search criteria.
4. The system shall allow admins to change the claim status from “Pending” to
“Claimed” or “No show”.
2. The system shall allow admins to determine the starting bid and bid end date
to approve the item for sale.
3. The system shall set the item status as “Selling” as default once a new item is
approved for sale.
4. The system shall allow admins to view all bids of the selling item.
5. The system shall set the selling item status as “Closed” after the bid end date.
6. The system shall allow admins to determine the final winner of auction after
the bid end date.
7. The system shall allow admins to modify the selling item information.
9. The system shall display a confirmation dialog box if the admins clicks on the
archive button.
Brief Description: The use case describes how the staff or student reports the lost
item.
Trigger: Staff or student enters the home page
Type: External
Relationships:
Association: Staff, Student
Include: -
Extend: -
Generalization: -
Normal Flow of Events:
1. The admin, staff or student enter the home page.
2. The admin, staff or student select “Report Your Lost” section.
3. The system displays a report form.
4. The staff or student enters the lost item information such as item name, item
category, description, possible location lost and date lost.
5. The staff or student upload the item image
6. The student clicks on the “Submit” button.
7. The system updates a new lost case.
Subflows:
Alternate / Exceptional Flows:
4a: If the staff or student enters an invalid information, an error message will be
shown.
Include: -
Extend: -
Generalization: -
Normal Flow of Events:
1. The system displays all item information in table format.
2. The system displays an “Add New Item” button in the home page.
2.1 If the admin clicks on the “Add” button, add new item is performed. (S-
1)
3. The system displays an edit icon on each item.
2.1 If the admin clicks on the edit icon, edit item is performed. (S-2)
4. The system displays an archive icon each item.
5. 3.1 If the admin clicks on the archive icon, archive item is performed. (S-3)
Subflows:
S-1: Add New Item
1. The system displays an add new item form.
2. The admin enters item information such as item name, item category,
description, location found, date found.
3. The admin uploads the item image.
4. The admin clicks on the “Submit” button.
5. The system updates a new item.
S-2: Edit Item
1. The system displays the item name, item category, description, location
found, date found and the item image.
2. The system allows admin to select which information to edit.
2.1 If the admin selects item name, the admin can enter a new item name in
the text box.
2.2 If the admin selects item category, the admin can select a new item
category from the drop-down list.
2.3 If the admin selects description, the admin can enter a new description
in the text box.
2.4 If the admin selects location found, the admin can enter a new location
found in the text box.
63
2.5 If the admin selects date found, the admin can enter a new date found in
the text box.
2.6 If the admin selects item image, the admin can upload a new item image.
3. The admin clicks on the “Submit” button.
4. The system updates the item with new details.
S-3: Archive Item
1. The system displays the confirmation dialog box.
1.1 If the admin selects “OK”, the item is archived from the system.
1.2 If the admin selects “Cancel”, the archive action is cancelled.
Alternate / Exceptional Flows:
S-1, 2a: If the admin enters invalid information, an error message will be shown.
S-2, 2a: If the admin enters invalid information, an error message will be shown.
2.1 If the admin clicks on the “Claimed” button, claim item is performed.
(S-1)
3. The system displays an archive icon on each claim record.
3.1 If the admin clicks on the archive icon, archive claim record is
performed. (S-2)
Subflows:
S-1: Claim Item
1. The system displays the item information
2. The system displays the information of the person who claim the item.
3. The admin clicks “Confirm” button.
4. The system changes the claim status from “Pending” to “Claimed”
S-2: Archive Claim Record
1. The system displays the confirmation dialog box.
1.1 If the admin selects “Yes”, the claim record is archived from the system.
1.2 If the admin selects “No”, the archive action is cancelled.
Alternate / Exceptional Flows:
2.1 If the admin clicks on the “Approve for Sale” button, approve for sale is
performed. (S-1)
3. The admin displays an archive button for each expired item.
3.1 If the admin clicks on the archive icon, archive expired item is
performed. (S-2)
4. The system displays all items for sale.
5. The system displays an edit icon for each item for sale.
5.1 If the admin clicks on the edit icon, edit item for sale is performed. (S-3)
6. The system displays an archive icon for each item for sale.
6.1 If the admin clicks on the archive icon, archive item for sale is performed.
(S-4)
7. The system displays “View all bids” button for each item for sale.
7.1 If the admin clicks on the “View all bids” button, view all bids is
performed. (S-5)
Subflows:
S-1: Approve for Sale
1. The system displays expired item information.
2. Admin enters the starting bid price and bid end date.
3. Admin clicks on the “Submit” button.
4. The system updates the item status from “Expired” to “Selling”
S-2: Archive Expired Item
1. The system displays the confirmation dialog box.
1.1 If the admin selects “Yes”, the expired item is archived from the system.
1.2 If the admin selects “No”, the archive action is cancelled.
S-3: Edit Item for Sale
1. The system displays starting bid price and bid end date of the item for sale.
2. The system allows admin to select which information to edit.
2.1 If the admin selects the starting bid, the admin can enter a new starting
bid in the text box.
2.2 If the admin selects the bid end date, the admin can enter a new bid end
date.
S-4: Archive Item for Sale
1. The system displays the confirmation dialog box.
66
1.1 If the admin selects “Yes”, the item for sale is archived from the system.
1.2 If the admin selects “No”, the archive action is cancelled.
Alternate / Exceptional Flows:
S-1, 2a: If the admin enters invalid information, an error message will be shown.
S-3, 2a: If the admin enters invalid information, an error message will be shown.
System Admin – wants to create, update and delete staff admin account.
Brief Description: This use case describes how the system admin posts, updates and
deletes the staff admin account.
Trigger:
1. System admin clicks on the “Create New Staff Account” button in the staff
admin account page.
2. System admin clicks on the edit icon of the staff admin account.
3. System admin clicks on the archive icon of the staff admin account.
Type: External
Relationships:
Association: System Admin
Include: -
Extend: -
Generalization: -
Normal Flow of Events:
1. The system displays all staff admin account in table format.
2. The system displays an “Create New Staff Account” button in the home
page.
2.1 If the system admin clicks on the “Create New Staff Account” button,
create new staff admin account is performed. (S-1)
3. The system displays an edit icon on each staff admin account
2.1 If the system admin clicks on the edit icon, edit staff admin account is
performed. (S-2)
4. The system displays a delete icon each staff admin account.
5. 3.1 If the system admin clicks on the delete icon, delete staff admin account
is performed. (S-3)
Subflows:
S-1: Create New Staff Admin Account
1. The system displays a create new staff account form.
2. The system admin enters staff department, name, email and contact number.
3. The system admin clicks on the “Submit” button.
4. The system admin creates a new staff admin account.
S-2: Edit New Staff Admin Account
69
1. The system displays the department, name, email and contact number.
2. The system allows system admin to select which information to edit.
2.4 If the system admin selects department, the system admin can enter a
new department.
2.5 If the system admin selects name, the system admin can enter a new
name.
2.6 If the system admin selects email, the system admin can upload a new
email.
2.7 If the system admin selects contact number, the system admin can upload
a new contact number.
3. The system admin clicks on the “Submit” button.
4. The system updates the user account with new details.
S-3: Delete Staff Admin Account
2. The system displays the confirmation dialog box.
1.5 If the system admin selects “OK”, the user account is deleted from the
system.
1.6 If the system admin selects “Cancel”, the delete action is cancelled.
Alternate / Exceptional Flows:
S-1, 2a: If the system admin enters invalid information, an error message will be
shown.
S-2, 2a: If the system admin enters invalid information, an error message will be
shown.
1.8 If the system admin selects “Cancel”, the delete action is cancelled.
Alternate / Exceptional Flows:
S-1, 2a: If the system admin enters invalid information, an error message will be
shown.
S-2, 2a: If the system admin enters invalid information, an error message will be
shown.
72
CHAPTER 5
5 SYSTEM DESIGN
5.1 Introduction
In this chapter, system architecture design, navigation design and database design will
be discussed based on the functional requirements which are determined in the
previous chapter. Furthermore, the activity diagram will also be illustrated in the
following section to show the system flow.
Figure 5.15: Activity Diagram : View and Search Item for Sale
92
CHAPTER 6
6 SYSTEM IMPLEMENTATION
6.1 Introduction
In this chapter, the route design of the system will be listed according to the database
table. The role-based access control diagram is also provided to illustrate the rights of
3 different roles in this system. Furthermore, the final system user interface as well as
the functionalities will also be discussed with image in the following section.
Method: POST
/admin/Category/store Create a new item category account
Method: PUT
/admin/Category/update/{id} Update item category by id
6.4.2 Login
This module verifies users with database through API. The users should enter email
and password to login into the system. The verification of email and password is
performed when the users click on the ‘Login’ button. If the email does not exist in the
database, or the password is incorrect, an error message ‘These credentials do not
match our records.’ will be shown. If the email or password is empty, an error message
‘Please fill out this field.’ will be shown.
In this system, there are 3 user roles, which are system admin, staff admin, staff
and student. Each role is authorized to certain rights. If both of the email and password
is matched, the system will verify the role of users and redirect them to their home
page respectively. The home page lists out various sections for users to click in to view
respective information.
106
6.4.3 Announcement
This module contains all announcements posted by admin. The system displays posted
date, subject and relevant department of the announcements in table format. The search
boxes are provided on the top of the table to enable users to search specific
announcements based on different attributes such as posted date, subject and relevant
department. If users want to search the announcements by posted date, a date picker is
also provided for them to select the specific date.
Users can click on the subject to view the content of announcements. Each
announcement can attach at most 5 attachments. The attachments can be pdf file or
any image file. Users can also click on the attachments to view the content.
The admin can post a new announcement by entering the announcement’s
subject, content. Form validation is applied so the subject field and content field are
required in this section. If necessary, at most 5 attachments can be attached in the
108
announcements. Only the person who post the announcement can edit the content of
that particular announcement. Furthermore, the admin can archive the announcements.
Figure 6.14: Item Found page from staff and student view
111
Figure 6.15: Item Details page from staff and student view
date picker is also provided for them to select the specific date. The admin can also
archive the claim records.
If the item owner claim back their item within the claim date, the staff admin
can click on the ‘Claimed’ button to mark the claim status as ‘Claimed’. However, if
the person who submit the claim form does not claim back the item within the claim
date, the system will mark the claim status as ‘No Show’.
Figure 6.18: Claim Item page from staff and student view
Figure 6.19: Claim Item page from staff and student view
114
Figure 6.22: Lost Case page from staff and student view
116
Figure 6.23: Report Lost page from staff and student view
auction end date. Staff and students can also view all bids for the particular item. Staff
and students can place their bids which are more than the current bid.
After the staff and students click on the “Bid” button, a confirmation box will
pop out to inform staff and students about the difference between their bid amount and
the current price. The bid is confirmed after they click on the “OK” button. The item
is available for staff and students to place their bid until the bid end date. The system
will close the auction and the staff admin can select final winner of the auction.
Figure 6.26: Item for Sale page from staff and student view
Figure 6.27: Item Details page from staff and student view
119
Figure 6.28: Item for Sale page from staff admin view
6.4.8 Profile
This module shows user’s personal details such as name, email and contact number.
Users can click on the edit icon to update their personal information. They can also
click on the “Change Password” button to change their account password by entering
the current password, new password and confirm password.
Furthermore, from staff and student view, the profile module also shows their
claim cases, lost cases as well as the successful bid. It allows the staff and students to
check the current status of their records within a page. For the lost case, if the staff and
students found their lost items, they can click on the “Found” button to inform the
system. When the status of lost case is marked as found, the item will not be displayed
in the lost case page anymore.
From staff admin view, there is a settings section for staff admin to edit the
expired duration of items. By doing so, all the items updated in the system will be
expired based on this expired duration.
Figure 6.34: Staff Admin Account page from system admin view
Figure 6.35: Create New Staff Admin account page from system admin view
Figure 6.37: Add New Item Category page from system admin view
125
CHAPTER 7
7 SYSTEM TESTING
7.1 Introduction
In this chapter, unit testing, integration testing and user acceptance testing were
conducted to evaluate the system. The test case result will be listed in the following
section.
6. Click “Register”
button
Register 1. Enter valid name “Chin Yun Error Error PASS
with valid Ting” message message
name, 2. Enter invalid “yting98@ “The “The
contact no, email gmail.com” email email
password 3. Enter valid “01223597 should be should be
and contact no 1” UTAR UTAR
confirm 4. Enter valid “123456” mail” is mail” is
password password shown shown
but invalid 5. Enter valid “123456”
email confirm password
6. Click “Register”
button
Register 1. Enter valid name “” Error Error PASS
with 2. Enter valid email “” message message
empty 3. Enter valid “” “Please “Please
value contact no fill out fill out
4. Enter valid “” this field” this field”
password is shown is shown
5. Enter valid “”
confirm password
6. Click “Register”
button
3. Click “Login”
button
Login 1. Enter valid “yting98 Error Error PASS
with valid email @1utar. message message
email and my” “These “These
invalid 2. Enter invalid “1234567 credentials credentials
password password 89” do not match do not match
our records” our records”
3. Click “Login” is shown is shown
button
Table 7.3: Unit Test Case – Test View and Search Announcement
Test Case ID: TC003 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Announcement Module Test Executed by: Chin Yun Ting
Test Title: Test View and Search Text Execution date: 24th August 2020
Announcement
Pre-condition:
User is required to login into the system
User is required to select the “Announcement” section from homepage
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
View 1. Click the subject Announcem User is Announcem PASS
announceme of ent subject, redirected ent subject,
nt details announcement content and to content and
attachments announce attachments
are shown ment are shown
details
page
View 1. Click the subject The content User is The content PASS
attachments of of redirected of
announcement attachment to attachment
2. Click the is shown attachmen is shown
attachment link t page
Search 1. Click the All All PASS
announceme calendar icon in announceme announceme
nts by date the search box nts which nts which
2. Select date from 08/17 are posted are posted
datepicker /2020 on on
08/17/2020 08/17/2020
are shown are shown
129
department department
are shown are shown
Table 7.4: Unit Test Case – Test Create, Edit and Archive Announcement
Test Case ID: TC004 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Announcement Module Test Executed by: Chin Yun Ting
Test Title: Test Create, Edit and Text Execution date: 24th August 2020
Archive Announcement
Pre-condition:
User is required to login into the system as admin
User is required to select the “Announcement” section from homepage
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
Post new 1. Click “Post New New User is New PASS
announce Announcement” announceme redirected announceme
ment with 2. Enter valid Valid nt is posted to nt is posted
all valid subject and subject announce
field content and ment page
131
conten
t
3. Upload
attachment file
Post new 1. Click “Post New Both error Both error PASS
announce Announcement” message message
ment with “The subject “The subject
2. Enter empty “”
empty field is field is
subject and
value required” required”
content
and “The and “The
content field content field
is required” is required”
are shown are shown
Edit 1. Click edit icon The selected User is The selected PASS
announce announceme redirected announceme
2. Change Valid
ment nt subject is to nt subject is
announcement subject
subject changed announce changed
subject
ment page
Edit 1. Click edit icon The selected User is The selected PASS
announce announceme redirected announceme
ment 2. Change Valid nt content is to nt content is
content announcement conten changed announce changed
content t ment page
Update 1. Click edit icon The selected User is The selected PASS
attachmen announceme redirected announceme
ts in 2. Delete previous nt to nt
attachmen attachment attachment announce attachment
t 3. Upload new is updated ment page is updated
attachment
Archive 1. Click archive The selected The selected PASS
announce icon announceme announceme
132
Table 7.5: Unit Test Case – Test View and Search Item Found
Test Case ID: TC005 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Item Found Module Test Executed by: Chin Yun Ting
Test Title: Test View and Search Text Execution date: 24th August 2020
Item Found
Pre-condition:
User is required to login into the system
User is required to select the “Item Found” section from homepage
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
View item 1. Click “Details” Item image, User is Item image, PASS
found button of item item name, redirected item name,
details item to item item
category, details category,
item page item
description, description,
date and date and
location location
found are found are
shown shown
Search item 1. Click “Show All All items All items PASS
found by Categories” under under
category button “Keys” “Keys”
133
3. Click “Search”
button
Search item 1. Click first 12/01/ Message Message PASS
found by calendar icon and 2020 “No record “No record
date range select date from found” is found” is
which is not date picker shown shown
match with 2. Click second 12/31/
all records calendar icon and 2020
select date from
date picker
3. Click “Search”
button
Search item 1. Click first “” No change No change PASS
found by calendar icon and in number in number
date range select date from of items of items
date picker
134
Table 7.6: Unit Test Case – Create, Edit and Archive Item Found
Test Case ID: TC006 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Item Found Module Test Executed by: Chin Yun Ting
Test Title: Test Create, Edit and Text Execution date: 24th August 2020
Archive Item Found
Pre-condition:
User is required to login into the system as admin
135
Claim 1. Enter claim 08/30/ The claim User is The claim PASS
item with date 2020 form is redirected form is
valid 2. Click “Submit” successfully to item successfully
claim date button submitted found page submitted
Claim 1. Enter claim 01/01/ Error Error PASS
item with date 2020 message message
the claim 2. Click “Submit” “The claim “The claim
date button date must be date must be
before a date after a date after or
today or equal to equal to
today” is today” is
shown shown
Claim 1. Enter claim “” Error Error PASS
item with date message message
empty 2. Click “Submit” “Please fill “Please fill
claim date button out this out this field”
field” is is shown
shown
Search claim 1. Enter name “Lap Message “No Message “No PASS
record by top” record found” record found”
name which is shown is shown
is not match
2. Press Enter
with all
records
Search claim 1. Enter name “” No change in No change in PASS
record by the number of the number of
name with claim records claim records
2. Press Enter
empty value
Search claim 1. Enter owner “Yu Claim records Claim records PASS
record by information n where the where the
owner info Ting owner info owner info
” matches “Yun matches “Yun
2. Press Enter Ting” are Ting” are
shown shown
Search claim 1. Enter owner “Tan Message “No Message “No PASS
record by information Ah record found” record found”
owner info Kow is shown is shown
which is not ”
match with 2. Press Enter
all records
Search claim 1. Enter owner “” Message “No Message “No PASS
record by information record found” record found”
owner info is shown is shown
with empty 2. Press Enter
value
Search claim 1. Select status Pend Claim records Claim records PASS
record by from ing where the where the
status dropdown status is status is
list “Pending” are “Pending” are
shown shown
141
Search claim 1. Select status Clai Message “No Message “No PASS
record by from med record found” record found”
status which dropdown is shown is shown
is not match list
with all
records
Table 7.10: Unit Test Case – Test View and Search Lost Case
Test Case ID: TC010 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Lost Case Module Test Executed by: Chin Yun Ting
142
Test Title: Test View and Search Text Execution date: 24th August 2020
Lost Case
Pre-condition:
User is required to login into the system
User is required to select the “Lost Case” section from homepage
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
View lost 1. Click “Details” Item image, User is Item image, PASS
case details button of item item name, redirected item name,
item to item item
category, details category,
item page item
description, description,
date and date and
location location
lost and lost and
owner info owner info
are shown are shown
Search lost 1. Click “Show All “Key All items All items PASS
case by Categories” button s” under under
category 2. Select item “Keys” “Keys”
category category is category is
shown shown
Search lost 1. Click “Show All Message Message PASS
case by Categories” button “No record “No record
category 2. Select item “Bags found” is found” is
which is category & shown shown
not match Back
with all packs
records ”
Search lost 1. Click first calendar 08/10 All items All items PASS
case by icon and select date /2020 found found
date range from date picker within within
143
3. Click “Search”
button
Search lost 1. Click first calendar 12/01 Message Message PASS
case by icon and select date /2020 “No record “No record
date range from date picker found” is found” is
which is 2. Click second 12/31 shown shown
not match calendar icon and /2020
with all select date from
records date picker
3. Click “Search”
button
Search lost 1. Click first calendar “” No change No change PASS
case by icon and select date in the in the
date range from date picker number of number of
with empty 2. Click second “” lost cases lost cases
value calendar icon and
select date from
date picker
3. Click “Search” “”
button
Search lost 1. Enter keyword “bottl All items All items PASS
case by e” where the where the
keyword name name
2. Press “Enter”
matches matches
“bottle” are “bottle” are
shown shown
144
3. Click “Submit”
button
Report lost 1. Enter empty “” Error Error PASS
case with item name, item message message
empty value category, “The “The
description, field is field is
possible required” required
location, date is shown ” is
lost shown
2. Click “Submit”
button
Table 7.13: Unit Test Case – Test View and Search Item for Sale
Test Case ID: TC013 Test Designed by: Chin Yun Ting PASS
Test Priority: High Test Designed date: 21st August 2020
Module Name: Item for Sale Module Test Executed by: Chin Yun Ting
Test Title: Test View and Search Text Execution date: 24th August 2020
Item for Sale
Pre-condition:
User is required to login into the system
User is required to select the “Item for Sale” section from homepage
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
View item 1. Click “Details” Item image, User is Item image, PASS
for sale button of item item name, redirected item name,
details item to item item
category, details category,
item page item
description, description,
starting bid, starting bid,
current bid current bid
and bid end and bid end
date are date are
shown shown
Search item 1. Click “Show All “Clot All items All items PASS
for sale by Categories” hing” under under
category button “Clothing” “Clothing”
2. Select item category is category is
category shown shown
Search item 1. Click “Show All Message Message PASS
for sale by Categories” “No record “No record
category button found” is found” is
which is not 2. Select item shown shown
match with category
all records
147
Search item 1. Enter keyword “jack All items All items PASS
for sale by et” where the where the
keyword 2. Press “Enter” name name
matches matches
“jacket” are “jacket” are
shown shown
Search item 1. Enter keyword “bottl Message Message PASS
for sale by which is not e” “No record “No record
keyword match with all found” is found” is
which is not records shown shown
match with 2. Press “Enter”
all records
Table 7.14: Unit Test Case – Test Bid Item for Sale
Test Case ID: TC014 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Item for Sale Module Test Executed by: Chin Yun Ting
Test Title: Test Bid Item for Sale Text Execution date: 24th August 2020
Pre-condition:
User is required to login into the system
User is required to select the “Item for Sale” section from homepage
Test Case Test Steps Test Expected Post- Actual Result Status
Summary Data Result condition
1. Enter bid 40.50 User is PASS
amount redirected to
148
Bid item 2. Click New bid with item for sale New bid with
with valid “Bid” RM40.50 is page RM40.50 is
bid amount button placed placed
Bid item 1. Enter bid 5.50 Error message Error message PASS
with bid amount “Your bid “Your bid
amount 2. Click amount must amount must
which is less “Bid” be more than be more than
than current button current bid” is current bid” is
bid shown shown
Bid item 1. Enter bid 35.00 Error message Error message PASS
with bid amount “Your bid “Your bid
amount 2. Click amount must amount must
which is “Bid” be more than be more than
same as button current bid” is current bid” is
current price shown shown
Bid item 1. Enter bid “” Error message Error message PASS
with empty amount “The bid “The bid
bid amount amount is amount is
2. Click
required” is required” is
“Bid”
shown shown
button
Table 7.15: Unit Test Case – Test Approve Item for Sale
Test Case ID: TC015 Test Designed by: Chin Yun Ting
Test Priority: High Test Designed date: 21st August 2020
Module Name: Item for Sale Module Test Executed by: Chin Yun Ting
Test Title: Test Approve Item for Sale Text Execution date: 24th August 2020
Pre-condition:
User is required to login into the system as admin
User is required to click the “Approve for Sell” button in the “Item for Sale” page
Test Case Test Steps Test Expected Post- Actual Status
Summary Data Result condition Result
149
Approve the 1. Enter valid 10.00 The item is User is The item is PASS
item for sale starting bid approved for redirected approved for
with valid 2. Enter valid bid 09/30 sale to item for sale
starting bid end date /2020 sale page
and valid 3. Click “Submit”
bid end date button
Approve the 1. Enter valid 10.00 Error Error PASS
item for sale starting bid message message
with valid 2. Enter invalid bid 01/01 “The bid end “The bid end
starting bid end date /2020 date must be date must be
and invalid 3. Click “Submit” a date after a date after
bid end date button or equal to or equal to
today” is today” is
shown shown
Approve the 1. Enter invalid “ten” Error Error PASS
item for sale starting bid message message
with invalid 2. Enter valid bid 09/30 “The bid “The bid
starting bid end date /2020 starting starting
and valid price must price must
bid end date be a be a
3. Click “Submit”
number” is number” is
button
shown shown
Approve the 1. Enter invalid “ten” Both error Both error PASS
item for sale starting bid messages messages
with invalid 2. Enter invalid bid 01/01 “The bid “The bid
starting bid end date /2020 starting starting
and invalid 3. Click “Submit” price must price must
bid end date button be a be a
number” number”
and “The bid and “The bid
end date end date
must be a must be a
150
are are
shown shown
provided. provided.
Please try Please try
again” is again” is
shown shown
Change 1. Enter valid “1234 Password is User is Password is PASS
password current 56” updated redirected updated
with the new password to profile
password 2. Enter new “new page
matches password pass”
with the
3. Enter re-enter “new
reenter
password pass”
password
4. Click “Update”
button
Search Item 1. User logins into the system All items where the PASS
Found by 2. User clicks the “Item Found” section from name matches
Keyword homepage “bottle” are shown
3. User enters “bottle” in the search box
4. User presses “Enter”
Claim Item 1. User logins into the system The item is PASS
2. User clicks the “Item Found” section from claimed.
homepage
3. User clicks the “Details” button of item
4. User clicks “Claim” button
5. User select 08/31/2020 from datepicker as
claim date
6. User clicks “Submit” button
View Lost 1. User logins into the system All items are PASS
Case 2. User clicks the “Lose Case” section from shown. User is
homepage redirected to view
3. User clicks the “Details” button of item the item details
when the “Details”
button is clicked.
Report Lost 1. User logins into the system A new lost case is PASS
Item 2. User clicks the “Report Lost” section from updated. User is
homepage redirected to “Lost
3. User enters “Wireless Mouse” for name Case” page
field
4. User selects “Computers & Electronic” for
category field
5. User enters “Logitech Wireless Mouse” for
description field
6. User enters “KB300” for possible location
field
7. User enters “08/17/2020” for date lost field
8. User uploads item image
9. User clicks “Submit” button
158
Search Lost 1. User logins into the system All items under PASS
Case by 2. User clicks the “Lost Case” section from “Keys” category
Category homepage are shown
3. User clicks “Show All Categories” button
4. User selects “Keys”
Search Lost 1. User logins into the system All items found
Case by Date 2. User clicks the “Lost Case” section from within 08/10/2020
Range homepage and 08/14/2020 are
3. User clicks first calendar icon shown
4. User selects 08/10/2020 from datepicker
5. User clicks second calendar icon of the
search box
6. User selects 08/14/2020 from datepicker
7. User clicks “Search” button
Search Lost 1. User logins into the system All items where the PASS
Case by 2. User clicks the “Lost Case” section from name matches
Keyword homepage “bottle” are shown
3. User enters “bottle” in the search box
4. User presses “Enter”
View Item for 1. User logins into the system All items are PASS
Sale 2. User clicks the “Item for Sale” section from shown. User is
homepage redirected to view
3. User clicks the “Details” button of item the item details
when the “Details”
button is clicked.
Search Item for 1. User logins into the system All items under PASS
Sale by 2. User clicks the “Item for Sale” section from “Clothing”
Category homepage category are shown
3. User clicks “Show All Categories” button
4. User selects “Clothing”
Search Item for 1. User logins into the system All items where the PASS
Sale by 2. User clicks the “Item for Sale” section from name matches
Keyword homepage “jacket” are shown
159
CHAPTER 8
8.1 Conclusions
UTAR lost and found management system contributes to all UTAR staff and students.
It digitalizes the manual process in managing and organizing the lost and found items.
Furthermore, it also provides a platform for UTAR staff and students to search for the
lost and found items efficiently and effectively.
For the department staff, they only require to insert the item details with an
image to post a new item in the system. The system will generate an item id once a
new item is updated so the department staff can have a clear identification for each
item. All data in this system will be up to date. If someone claims the item, the post
will be taken down as it is pending for the owner to claim back their item. Furthermore,
the department staff can also decide to sell the lost and found items if they have no
claim for a long time. It can prevent too many unclaimed items accumulate in the
department.
The other benefit of the system is item labelling and item categorization were
applied in the system for better searching. Thus, for anyone who lost an item in UTAR,
they can search items based on different options such as item category, date range or
keyword. It enables an accurate item can be delivered to users so they can get back
their items in a more efficient way. They can also submit the claims 24/7 rather than
only restricted to office hours so the item is reserved for them to claim back at the
department. If they claim the item, they will be able to know where their item is located
so they can get back the item without hassle.
REFERENCES
Ahmad, S., Ziaullah, M., Rauniyar, L., Su, M. and Zhang, Y., 2015. How Does Matter
Lost and Misplace Items Issue and Its Technological Solutions in 2015 - A Review
Study. IOSR Journal of Business and Management Ver . I, 17(4), pp.2319–7668.
Aldaej, R., Alfowzan, L., Alhashem, R., Alsmadi, M.K., Al-Marashdeh, I., Badawi,
U.A., Alshabanah, M., Alrajhi, D. and Tayfour, M., 2018. Analyzing, Designing and
Implementing a Web-Based Auction online System. International Journal of Applied
Engineering Research, 13(10), pp.8005-8013.
Casteren, W.V., 2017. The Waterfall Model and the Agile Methodologies: A
comparison by project characteristics. Academic Competences in the Bachelor 2,
pp.10-13. DOI: 10.13140/RG.2.2.10021.50403.
CollabNet VersionOne, 2019. The 13th annual SATE OF AGILE REPORT - 2018.
CollabNet | VersionOne 13, 16.
Dennis, A., Wixom, B.H. and Tegarden, D., 2005. System Analysis and Design with
UML Version 2.0. 2nd ed. New York: John Wiley & Sons.
Hong, Y., Wang, C. and Pavlou, P.A., 2016. Comparing open and sealed bid auctions:
Evidence from online labor markets. Information Systems Research, 27(1), pp.49-69.
Ilonka, C., 2017. An Online Auction System for Selling Fiber Products. Master.
Johannes Kepler University Linz. Available at:
<http://www3.risc.jku.at/publications/download/risc_5873/Lenzing%20Global%20A
uction%20Portal%20-%20M.Sc.%20Thesis%20-%20Csaba%20Ilonka.pdf>
[Accessed 10 July 2020].
Kaluža, M., Kalanj, M. and Vukelić, B., 2019. A comparison of back-end frameworks
for web application development. Zbornik Veleučilišta u Rijeci, 7(1), pp. 317–332. Doi:
10.31784/zvr.7.1.10.
Lei, H., Ganjeizadeh, F., Jayachandran, K. and Ozcan, P., 2017. A statistical analysis
of the effects of Scrum and Kanban on software development projects. Robotics and
Computer-Integrated Manufacturing. Elsevier, 43, pp. 59-67. DOI:
10.1016/j.rcim.2015.12.001.
Nicu, C.C., Maria, R.E., Pavel, I.D.D. and Pólkowski, Z., 2014. E-auctions from the
Automotive Perspective. Zeszyty Naukowe Dolnośląskiej Wyższej Szkoły
Przedsiębiorczości i Techniki. Studia z Nauk Technicznych, 3, pp.129-145.
Petersen, K., Wohlin, C. and Baca, D., 2009. The Waterfall Model in Large-Scale
Development. Lecture Notes in Business Information Processing, 32, pp.386-400.
DOI: 10.1007/978-3-642-02152-7_29.
Poe, L.F. and Seeman, E., 2019. An Empirical Study of Post-Production Software
Code Quality When Employing the Agile Rapid Delivery Methodology. pp. 1-8.
Tunajek, S.K., 2009. A Place for Stuff : Clutter Can Be Hazardous to Your Health.
WELLNESS MILESTONES, [online] Available at:
<https://www.aana.com/docs/default-source/wellness-aana.com-web-documents-
(all)/a-place-for-stuff-clutter-can-be-hazardous-to-your-
health.pdf?sfvrsn=e12c4bb1_2> [Accessed 15 February 2020].
Yang, F., 2013. How to Migrate from Waterfall Development Approach to Agile
Approach. Master of Science. Chalmers University of Technology. Available at: <
https://odr.chalmers.se/bitstream/20.500.12380/188289/1/188289.pdf > [Accessed 24
February 2020].
167
APPENDICES
APPENDIX A: Questionnaire
168
169
170
171
APPENDIX C: Storyboard
178
179
180
181
182
183
184
185