Practical Assignment 2— Mobile Android application
Due date: Midnight AEST, Friday Week 11 ASSESSMENT
Length: Less than 50 MB 2
This assessment item relates to the learning outcome 1, 3 and 4. More specifically, to design and implement a complex mobile application.
The objective of this assignment is for students to:
• Develop, test and maintain a mobile application using an integrated suite of mobile software development tools. More specifically Android Java development is undertaken using the Eclipse ADT IDE and API's.
You are assigned the task of extending the poker note taking mobile application to store session data in a database. The individual notes app has links to each player. If a player is selected a page (fragment) is shown to add note entries. A note entry consists of a timestamp and note strings. When the Save Entries button is pressed these values are saved in a database in the application. When the Show Entries button is pressed a related page (fragment) is shown that list all the date/time, note and location entries made for that day. More details of these pages will be given in the sections below.
We refer to the app as PokerNotes.
Mobile Application Home Startup Page
The application start-up is unchanged from assignment 1a.
Player 1 to Player 5 Data Entry Pages
These pages are unchanged from assignment 1a.
Show Notes Entries Pages (Fragments)
These pages are unchanged from assignment 1a.
Options Menu pages
The Options Menu options is unchanged from assignment 1a except for the Save entries and Send all entries option.
If the user taps the Save entries Menu then the day, date/time and note values should be saved to a SQLite database on the device. When the application is opened this database is used to intialise previously saved days' note entries.
The Send all entries will be used for sending the notes database to the user and to clear the current database of any entries. When the Send all entries selection is made an email message is composed containing each days note entry. The username given in the preferences is to be contained on the first line of the email. Each date / time and note entry is put on its own line in the email, e.g. cowlingm 8/9/2017:0:7
This player twirls her hair when she has a good hand
This player breathes heavily when he intends to fold
When the email is sent all the days notes entries are deleted. To test this feature send the email to yourself. Include a copy of such emails to the documents you submit for the assignment.
The Profile fragment UI is also required. A username edit text field is supplied for the user to enter their business username. Two text fields are also supplied so that the user can enter their associated password for this username. When the Save profile button is pressed this data is saved in local variables (for use in the section above) and the Home page (fragment) is shown. If the Cancel profile button is pressed the Home page is immediately returned too.
When the Send all entries menu option is chosen a dialog asking the user if they wish to send is shown. If the -OK- button is selected then the existing SQLite database is cleared of all entries along with the local objects used to save the daily diary entries. As a result sub-sequentially showing the list for any day will present an empty list.
When the Android BackButton is pressed on the Android device a dialog asking the user if they wish to save is presented. If the user taps the -Yes- button then the local notes logs will be written to the SQLite database before quitting the application. If the -No- button is tapped then the application exits without saving any changes to the SQLite database.
You are also to prepare a Word document. Your document should include an appropriate title page. Your document should have two sections that address the hardware and software requirements and application commentary given below.
Plan for a Testing Strategy for your Mobile Web Site
Your document should:
• Create and review a list of mobile devices, browsers and networks targeted for the app.
• Discuss the selection of mobile models and device manufacturers for your testing process
• Discuss whether testing is required on actual devices and what part emulators/simulators and desktop browsers can play in this process
• Review the kind of ad-hoc testing that may be used to help frame your device testing strategy.
Financial Case & Application Commentary
Your document should:
• List the features you successfully implemented and those you were unable to successfully implement; you should describe the problem in a few sentences and also briefly describe anything you attempted to do to get it to work. Your approach to identifying and attempting to fix these bugs may gain you some partial credit for those features you were unable to implement.
• A description of any additional functionality you believe would be useful to add to this App should be included. Explain what the features are and how they would help to improve the App.
• Are there any ethical considerations in making this kind of service available?
• Discuss the economic/financial case for the proposed system. Identify potential revenue streams and costs. How much would these costs be for your proposed user base? How would you show that you are achieving this user base? Given how long it has taken you to develop what do you estimate
technical development costs to be in hours? How would you promote your app and what kind of marketing should be employed? .
You are required to submit your assignment electronically via the Moodle player website. The deliverable is a rar or zipped directory containing all the code and resources needed for testing. You must rar or zip together:
• Use the export option on your dairy project to produce a zip file that can be imported back into Eclipse to re-create your project.
• Your Word document
• Copies of emails from your app
The resulting rar or zip file should be submitted on the player website. Please note that you should use your student number as the name for your rar or zip file when uploading to Moodle.
Frequently Asked Questions about Assignment 2
How does the user access the Profile Page?
The profile page is intended to be accessed from the options menu (not shown on first launch). There is only one for the user (not for each player) and asks for a username and password that are then saved as preferences (to a pref file or to the database). When the user presses -send all entries-, the username is send as the first line in the e-mail. The password is not used.
What happens when Save Entries is pressed?
When this option is selected, all entries for every player are saved to the database. On load of the app, all entries should be read from the database.
What does the Back Button do from different screens?
When the back button is pressed from the home screen, the user should be prompted to -save all entries- and given the choice to -Save- or -Don't Save-. From other parts of the app, the back button can go backwards or act as a Home button.
What do I need to do for the Testing Strategy?
The testing strategy should be for a mobile app as designed and should include details of the device and operating system used, as well as if it requires a network connection. -Browsers- detail may not be needed for this particular app.
What details do you need in the Financial Case?
The case is made up of details on the potential revenue (reflected by no. of potential customers) as well as the cost to develop (calculated via hours spent). You need to explain what -user base- you would sell the app to and how you'd market to this user base.