Last Updated on 01/25/2023 by Sophia

Case Study: MyCheckins
A startup company plans to develop an app which allows users to check in their daily
activities. For example, a user can log the following information in the app:
• At 15:00 on 1st August 2019, I visited Delicious restaurant with friends. We were there for
half an hour. A photo is attached.
The requirements for the app are listed as follows:
1. When a user opens the app, the main user interface (List UI) appears, which includes the
following items:
a. A list of check-in records is shown. For each record, its “title”, “date”, and “place” are
b. A toolbar with two entries: “New”, “Help”.
2. When the user clicks the menu item “New” in List UI, a new UI (Item UI) appears to allow the
user to log a new record. The following items should be displayed: “Title”, “Place”, “Details”,
“Date”, “Location”, “Image”, “Share”.
a. “Title”, “Place”, and “Details” are editable text fields.
b. “Date” is a button, showing the current date. When clicked, it uses a dialog for users to
pick up a date.
c. “Location” has two parts: a (read-only) text view, and a button. The text view shows the
GPS location (Latitude, Longitude) captured when this UI first shows. When the button
“Show map” is clicked, it opens a new window to display the saved GPS location in
Google Map.
d. “Image” has two parts: an image view, and a button. When the button is clicked, it
allows the user to take a picture of the receipt with the camera, and display it.
e. “Share” is a button, allowing to send a summary of the record.
f. When a user leaves this UI, the record details are saved. The List UI should be refreshed.
3. When the user clicks a record in List UI, its details will be displayed in a new UI (Item UI)
similar to Requirement 2, but
a. GPS location should not be updated. Display the same GPS location when this record
was created.
b. A button “Delete” to delete this record. Deletion should bring the app to the refreshed
List UI.
4. When the user clicks the menu item “Help” in the List UI, a new UI appears to show help
messages. The requirement is:
a. Use Webview for the implementation.
b. Use “https://www.wikihow.com/Check-In-on-Facebook” as the dummy content to show.
General implementation requirements:
• Requirement 2 & 3 should be implemented with one Activity.
• Use fragments for List UI and Item UI. Failure to do so will cause a penalty of 50% for each.
• Save receipt records with SQLite. Failure to do so will cause a penalty of 15 marks.
ICT311 Mobile App Development Assignm