Objectives
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.
Introduction
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.
Order Now
Order Now
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.
This player breathes heavily when he
intends to fold etc. 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.
Profile page
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.
Other Features
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.
Required Documentation
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? .
Submission
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
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.
Assessment criteria
Assignment | Criteria | Marks | Total | |
Component | ||||
-That pressing "OK" in the onBackPressed() method saves the SQLite | ||||
Main Activity File | database and exits | 3 | ||
- | The ArrayList values are set from the SQLite database entries on entry | |||
-The profile page checks that the passwords match, no items are null | ||||
and returns to the home fragment | ||||
-The save all entries options menu saves the correct values to the | ||||
Menu Options | database | 3 | ||
- | The send entries menu option clears the SQLite database and the days | |||
ArrayLists | ||||
-The profile option brings up the profile page | ||||
Email UI | - | Data correctly sent as email & email documents submitted | 5 | |
SQLite database | -The DBAdapter class is present and works correctly | 4 | ||
- | The days ArrayLists are correctly set when the application loads from | |||
the SQLite database | ||||
Testing Strategy | ||||
- Discuss the selection of mobile models and device | ||||
manufacturers for your testing process | ||||
- Discuss whether testing is required on actual devices and what | 5 | |||
part emulators/simulators and desktop browsers can play in this | ||||
process | ||||
- 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 | ||||
Financial Case & | show that you are achieving this user base? | |||
- Given how long it has taken you to develop what do you | 5 | |||
Commentary | ||||
estimate technical development costs to be in hours? How | ||||
would you promote your app and what kind of marketing | ||||
should be employed? | ||||
General | ||||
-Feedback given as required | ||||
-Use appropriate naming conventions | 5 | |||
- | Adequate commenting | |||
- | Correct grammar | |||
-Citation of references, copyright use | ||||
Penalties | ||||
Total | 30 | |||
No comments:
Post a Comment