Starting from:
$35

$29

Assignment 1 Solution

Learning O bjectives

S olve a problem by constructing a sim ple, interactive application using A ndroid and Java.

D ocum ent an object-oriented design in U nified M odeling Language.

Problem D escription

C onsider the situation of som eone w ho w ants to track their bike rides. M ake a sim ple, attractive, intuitive, A ndroid m obile app to note this data. Let us call this app: R ideB ook.

S pecifically, each ride (w hen it is done) has the follow ing fields:

date (presented in yyyy-m m -dd form at)

tim e (presented in hh:m m form at)

distance in km (non-negative decim al)

average speed in km /h (non-negative decim al)

average cadence in revolutions per m inute (non-negative integer)

com m ent (textual, up to 20 characters)

O nly the com m ent field m ay be left blank for a ride.

The app should allow the user to:

show a list of rides

add a new ride (w hich alw ays appends to the bottom end of the list)

view and edit the details of an existing ride

delete a ride

see the totaldistance of allrides below the list of rides

The list need not show allthe inform ation for a ride if screen space is lim ited. M inim ally, each ride in the list should show its date, tim e, and distance.

The app m ust assist the user in proper data entry. For exam ple, use appropriate user interface controls to enforce particular data types and avoid illegal values.

For this assignm ent, the app need not be persistent.

U se your cam pus com puting ID in the app nam e. S pecifically, the app nam e m ust show up as YO URCCID-R ideB ook (e.g., kennyw -R ideB ook).

    • eliverables

        1. C ode B ase: (5 m arks)

Your com plete source code and com piled binary, im plem enting the w orking app and its user interface, w illbe inspected and run by the TA . The A ndroid Studio project and A PK (A ndroid Package K it) binary m ust be included in the subm ission. Each class m ust contain com m ents describing its purpose, design rationale, and any outstanding issues.

        2. Video: (1 m ark)

The video is a recording of the app's user interface. The video file m ust be included in the subm ission. B esides being instructionalfor using the app, the video is m eant to show that the dem onstration actions below actually w ork. N o audio is needed. M axim um duration is 3 m inutes. Focus on just the screen of the app, not your w hole desktop. For visualclarity, do not use a handheld cam era.

        3. System D ocum entation: (2 m arks)

D escribe the structure of your app's object-oriented design using U M L class diagram (s), saved as non-lossy im age file(s). Focus on the m ost im portant classes that you designed and im plem ented. Add notes to describe the m ain responsibilities of these classes.

    • em onstration Actions


        1. O pen the app from the launcher.

        2. Show the list of rides, w ith no rides so far. (This should be the initialscreen.)

https://eclass.srv.ualberta.ca/m od/assign/view .php?id=3706040
1/3
23/09/2019    Assignm ent


    3. Add a ride w ith date 2019-09-27, tim e 14:00, distance 40.5, speed 25.5, cadence 75, and no com m ent.

    4. Show the list and total, w ith this ride.

    5. View /edit this ride to be distance 41.5, and com m ent "light w ind".

    6. Show the list and total, w ith this updated ride.

    7. Add a ride w ith date 2019-09-28, tim e 15:30, distance 39.5, speed 26, cadence 76, and com m ent "sunny"

    8. Show the list and total, w ith the tw o rides.

    9. Add a ride w ith date 2019-09-29, tim e 09:05, distance 25, speed 27.5, cadence 80, and com m ent "cloudy"

    10. Show the list and total, w ith the three rides.

    11. D elete the ride dated 2019-09-28.

    12. Show the list and total, w ith the tw o rem aining rides.

    13. View the details of the 2019-09-27 ride.

    14. View the details of the 2019-09-29 ride.

    15. D elete the ride dated 2019-09-27.

    16. D elete the ride dated 2019-09-29.

H ints

This is a description of the core functionality. O ften, problem statem ents from users lack details. As you are prototyping a design, you m ay uncover other behaviors that have not been specified, but m ake sense in the context and intent of the application. For exam ple, think about how som eone m ight effectively use your application. It is up to you to decide w hat functions your design w illneed, based on the given problem description and valid assum ptions, in discussion w ith your users (the TAs and instructor). You should consider asking the custom er (the instructor) w hat they w ant to see.

    • hile you m ay discuss your design w ith other students, the code and docum entation m ust be your ow n w ork. C ode from publicly available sources m ay be used w ithin reason and only if their licenses perm it so. A lw ays fully cite to give proper credit to the originaldevelopers in the source code and in the system docum entation. For exam ple, in citing a w ork, at least state: from w hom , the date of publication, license, and U R L. D o w hat is required by its license.

The TAs w illbe inspecting your code, so "m ajor" com m ented-out experim ents should be cleaned up so that the code is readable.

D o not skim p on the U M L class diagram s in the system docum entation. For neatness and readability, diagram s should be created or draw n using a vector graphics editing tooland exported in a com m on, non-lossy graphics form at.

B esides addressing the problem correctly, your softw are design w illbe evaluated on its proper use of object-oriented design concepts, such as separation of concerns and inform ation hiding.

Losing M arks

You m ay lose m arks for any of the follow ing:


files not in properly nam ed subdirectories


m issing A PK file for the app


cannot run the app after install


cannot distinguish C C ID from the app nam e


cannot view files w ithout specialized tools


lossy com pression used in im age file for U M L (e.g., JPE G )


inadequate or im proper citations

These are brow n M & M rules.

Please also ensure your originalfiles are secure from public access.

Subm ission Procedure

C reate an assignm ent directory called YO URCCID-R ideB ook/ (e.g., kennyw -R ideB ook/), and w ithin it have three subdirectories: code/, video/, doc/.

Your w hole A ndroid Studio project directory goes as is w ithin code/. The com piled binary A PK file(s) should be found w ithin an app/build/outputs/apk/ subdirectory w ithin the project directory. The video file goes in video/. The U M L docum entation goes in doc/.

Zip the assignm ent directory and upload to eC lass.

Please m ake sure allthe required files are included to build the app. The TA w illtest your app from the subm itted code and A PK file.

The app nam e m ust show up as YO URCCID-R ideB ook (e.g.,kennyw -R ideB ook), so that it can be easily distinguished from other subm issions.









Subm ission status





S ubm ission status
N o attem pt





G rading status
N ot graded





D ue date
M onday, 30 Septem ber 2019, 4:00 PM




https://eclass.srv.ualberta.ca/m od/assign/view .php?id=3706040
2/3

23/09/2019


Assignm ent






Tim e rem aining
7 days 4 hours






Last m odified
-








S ubm ission com m ents

C om m ents (0)












Add subm ission

You have not m ade a subm ission yet













You are logged in as A run W oosaree (Log out)

C M PU T 301 (Fall2019 LAB LEC )














































































https://eclass.srv.ualberta.ca/m od/assign/view .php?id=3706040    3/3

More products