CSCI 448 - Mobile Application Development (Android)Spring 2019 - Assignment 1 - This Is Jeopardy!Quick Links: Canvas | CS @ Mines | Mines | Piazza |
|||||||||||||||||||||
| Home | Syllabus | Assignments | Schedule | Resources | | |||||||||||||||||||||
This assignment is due
by February 11, 2019 by 11:59pm.
For this assignment, you will take your completed Lab02C (feel free to
start from Lab03 or Lab04 to have extra features!) and allow for
multiple question types. Currently, we can only ask the user a True or
False (Yes/No, A or B) question. It would be much better if we could
prompt the user with more options or even better yet - have the user
provide their own answer. You will need to make changes to the entire
MVC stack to accomplish this task.
When you create this project, set the domain to include <userName_A1> and name the app <userName>_A1 where userName is your name (for instance, mine would be jpaone_A1). Part I - Model: Create a Multiple Choice QuestionFirst, add a way for your app to
store Questions that have four answer choices and which is the correct
answer. We are only concerned with the Model side of the MC Question
at this point.
Part II - Model: Create a Fill-in-the-Blank QuestionNext, add a way for your app to store
Questions that have a free response (one word) answer and what the
correct answer is. When we check the correct answer, we will not worry
about the letter case. Again, we are only concerned with the Model.
Part III - Controller Updates View Appropriately
Now we'll start to see the changes. Create at least one of each type
of question and store them in your array. Pressing the "Next" button
should display the new question every time. Additionally, add a "Previous"
button to go to the prior question.
Previously, we created a new layout by modifying the View XML. This time, we need to have the Controller create the new View layout. It may be wise to have a layout component that contains the answer options and its contents are modified via the Controller. When a user chooses an option or enters an answer (maybe you need a Submit button for the Fill-in-the-Blank questions???), be sure to validate their response and display the appropriate Toast. Part IV - Keep Score
Finally, you will need to make changes to all of the MVC components.
When a user answers a question right, keep track of their progress and
increment their score. Display the user's current score somewhere in
your layout.
While not required, you are encouraged to only give credit for a correct question once. That is if the user answers the same question correctly five times, then their score is only incremented one time. Part XC - Extra Credit
There are two extensions you can do for extra credit:
Part V - Questions
Be sure to include a
README.txt
file containing any comments, notes to run, etc. In addition, answer
the following questions in your
README.txt
:
Part VI - Website!
In addition to finishing the app, create a webpage that showcases your
work. There is a template available for your website. If you wish to
use it, download this .zip
file and extract it in your dropbox. It will create a www/
directory with the stylesheet from the course webpage, which you can
use if you like. You'll be adding to it for each homework assignment,
with a screenshot or screenshots of your work, a short description of
the assignment, and the opportunity to talk about any neat
implementation details if you so choose. The websites are a way for
you to keep track of the projects you've made over the course of the
semester, but you should also aim to make the descriptions accessible
to people outside of the course as a way to share and showcase your
coursework.
Inside the www/ directory, there is an images/ folder. Place any screenshots and other images into this folder. If you're not familiar with HTML, don't worry; the template shouldn't do anything crazy - a <br> signifies a newline, the <img> tag places an image. There are plenty of tutorials available for HTML if you want to add tables, change font styles, or play with the formatting. There are some comments in the template file to help you out as well. If you choose to use the template or your own template, be sure to name the webpage <alias>.html
where <alias> is the name your chose during the initial survey. (For example, my submission
would look like
ElvishScout.html
.) Ask Dr. Paone if you have a question.
Grading Rubric
Your submission will be graded according to the following rubric.
SubmissionPlease update your project so it
produces an executable with the name userName_A1. When you are
completed with the assignment, zip together your full source code, Android
Studio project, README.txt, and www/ folder. Name the zip file,
userName_A1.zip. Upload this file to Canvas under A1.
This assignment is due
by February 11, 2019 by 11:59pm.
| |||||||||||||||||||||
Last Updated: 01/29/19 14:00
|