首页 > > 详细

代做COMP3013 Mobile Application Development

School of Computer, Data and Mathematical Sciences
COMP3013 Mobile Application Development
Spring 2023: Assignment 1
MovieBuddy App
(Assignment deadline: Sunday 10/09/2023, 11:59pm (Week 7) on vUWS. You must
demonstrate your assignment at your usual tutorial in week 9)
Assignment Details
For this assignment, you are required to create a simple MovieBuddy as an Android App. There
should be a list of Cinemas and an inventory of the existing Movies. The app has a home screen
that includes one or more decorative images and options (e.g. button, menu items, tabs etc.). The
App has the following main functions aside from the home screen:
1. Allow user to view and manipulate movie inventory.
2. Allow user to view and manipulate a list of cinemas.
3. Allow user to delete movie and/or cinema records.
4. Allow user to view and manipulate images that are associated with movie items.
5. Allow user to search for a movie/movies from the movie inventory.
For the purposes of this assignment the details of the items in the movie and cinema inventories
should be stored in some kind of “database”. For high marks this should be an SQLite database.
For a basic pass, some kind of array, list or file structure is acceptable. Where the word
“database” appears below it can refer to any of these types of structures, however refer to the
marking guide to see what will attract high marks.
Please note that the application must have exact elements described in this assignment
specifications, extra elements are NOT accepted. For example: implementing an extra
element for a screen (eg price for a movie item where it is not required by the specification)
will not be accepted. You can implement features in higher levels (eg credit, distinction or
high distinction) to gain marks even you skip some features in lower (eg pass) levels. The
provided simple screenshots are for your reference only, you are encouraged to design your
own look and feel for your application.
In particular, the App should
Pass level (up to 64%):
1. For Movie inventory:
Provide the main interface and corresponding actions where user can select an option
from buttons (or other controls) including:
• Add a new movie record: The movie information includes Id (a unique string for
each item), title, directors, casts, release date and poster (for pass level,
poster/image is NOT required, image field can be empty).
• View movie records as a list
• Edit a movie record: the user can select an item from the list. The program will
display all details of the item in the corresponding fields where the information can
be edited. The page should also include an option to delete the current record in
addition to the edit option.
2. For Cinema items:
Provide the main interface and implemented actions where the user can select an option
from the buttons/menus for manipulating cinema items including:
• Add a new cinema item. The cinema information includes Id (unique string for each
cinema), cinema name, location (cinema address), list of movie items. Please note that
user should be able to choose one or more movies from a list of movies items. You
can use checkboxes or background colours to indicate selected items. This list can be
hardcoded (pass or credit level) or taken from the “database” of movies as described
above (distinction level or above). If you use hardcoded list of groceries, make sure
you have at least title and release date for each movie. There are at least three movie
items in the hardcoded movie list.
• View the cinema items. User is able to view the list of cinema items.
• Edit a cinema item. When the user clicks on an item in the list of cinemas, the
program will display full detail information of the selected cinema in the
corresponding fields where they can be changed. For the list of movies, the user
will choose again the movie items from the list as in Add a new item function. The
page should also include an option to delete the current record in addition to the edit
option.
3. Other functionalities should be included in the pass level:
• Be able to return to the home page or the previous page.
• Provide an acceptable quality user interface - Are the screens easy to use? Are they
laid out neatly? Do they look good?
• For a pass it is not necessary to store data in an SQLite database.
Credit level (up to 74%):
Include all functions of the pass level, plus
- Store data in a local SQLite database, and implement INSERT, UPDATE, SELECT and
DELETE on the database.
- Delete multiple items: From “View Movie Records” and/or “View Cinema Records” pages,
user is able to delete one or more movie records and/or cinema records from the lists. You
may use checkboxes or background colours to indicate selected items to be removed from the
list.
Distinction level (up to 84%):
Include all functions up to the credit level, plus
- When adding/editing a cinema record, the list of movies is NOT hardcoded but is queried
from the movie database (SQLite database).
- When viewing the movie records, the movies are listed in two categories “Released” and
“Coming Soon” by checking the release dates of the movies.
High Distinction level (up to 96%):
Include all functions up to the distinction level, plus TWO of the following options:
- Option 1: Assign an image to a movie item: provide an interface and corresponding actions
where user can select an image and assign the image/poster to a movie item. The images can
be manually stored within the app itself OR user can browse and choose an image from the
device. Another way is to take a picture using the device camera and assign the picture to a
movie item. The app should be able to display the assigned image when showing the movie
information.
- Option 2: Search function: provide an interface and corresponding actions where users can
type in some words to find a movie/movies in the existing database. The search interface
should allow users to enter some text for title and/or directors and/or casts. The results are
displayed as a list of movies matching the input words.
- Option 3: Map: Provide a function to show a cinema address on the map. Note: the address
is taken from the cinema record.
Outstanding works: (up to 100%)
Include all functions up to the high distinction level, plus
- Coding practice with excellent choice of object-oriented programming structure and
functions. The program has clear coding style and comprehensive supportive comments.
- Profesional look with advance controls used (eg date picker, input validation tabbed
activities) and creative/useful features might be considered as extra contributions. Note:
simply adding an extra GUI element is not considered as a bonus feature and is usually NOT
allowed as stated at the beginning of the specifications.
Deliverables
You are only allowed to use Android Java to code your solution. Your program must be
executable. It is an advice that you need to keep multiple versions in case of unforeseen
problems. You are allowed to demonstrate your program on your laptop. You might modify the
code from related source(s) with a proper citation(s) and you must be able to explain clearly your
understanding. The external code should contribute less than 30% of the total program. No
part of the code can be written by any other persons.
Declaration
There is no requirement for documentation. However, you are required to submit a
declaration with the following claim (in a text file or world file).
DECLARATION
I hold a copy of this assignment that I can produce if the original is lost or damaged.
I hereby certify that no part of this assignment/product has been copied from any other student’s
work or from any other source except where due acknowledgement is made in the assignment.
No part of this assignment/product has been written/produced for me by another person except
where such collaboration has been authorised by the subject lecturer/tutor concerned.
Submission
Both the declaration and source code should be submitted via vUWS before the deadline for
documentation/checking purpose. All these files should be zipped into one file with your
student id and your name as the zipped file name. Remember to include the declaration
word/pdf file in the zip file. Submission that does not follow the format is not acceptable. No
hard copy of the source code and email submission is acceptable.
Demonstration
You are required to demonstrate your program during your scheduled practical session in the
following teaching week (or based on the advice of the lecturer/tutor). Your tutor will check your
code and your understanding of the code. You will receive no marks if you do not do the
demonstration, especially if you miss the demo time without a special consideration. To prove
that the program is written by yourself, the tutor might require you to make some minor
modifications. In this case, you must do the requirement in order to prove that the code is only
written by yourself. You are allowed to run your program from your laptop at the demonstration
time. The feedback to your work will be delivered orally during the demonstration. No further
feedback or comments are given afterward.
The program you demonstrate should be the same as the one you submit. If you fail this
assignment at your first demonstration, you are allowed to improve your work within one week
(maximal grade is pass in this case). You must indicate your intention to the tutor/lecturer if you
want to take the opportunity to improve the assignment. Do not send your work to the unit
coordinator or your lecturer. Your tutor is responsible to mark your work.

联系我们
  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp
热点标签

联系我们 - QQ: 99515681 微信:codinghelp
程序辅导网!