Assignment title: Information


How to submit your assignment

This module uses the electronic TMA (eTMA) system for submission of TMAs. To submit your TMA, please go to your StudentHome page and follow the link(s) provided.

Your answer will comprise several files, one of which will be your mobile application source file, which will be a zip file. You will need to zip all the files into one zip file to be able to submit them. Your zipped TMA file must be no more than 5 MB. If your file is bigger than this then you should compress the images you have used in order to reduce the overall size.

You should put your name, your personal identifier, the module code, the assignment number and the date on the title page. It is also useful to your tutor if you include this information as part of the header or footer.

If you foresee any difficulty with submitting your assignment on time then you should contact your tutor well in advance of the cut-off date.

This tutor-marked assignment covers all parts of Block 3. It will make up a third of your continuous assessment score for this module. For more details about how your score for this module is calculated, see the Module Guide.

For further information about policy, procedure and general submission of assignments please refer to the Assessment Handbook, which can also be accessed via your StudentHome page.

Plagiarism It is imperative that you avoid plagiarism, as it is a form of cheating. If you do plagiarise then you won't simply lose marks; instead, your work will be referred for further disciplinary action. If you are in any doubt as to what constitutes plagiarism, please refer to the University guidelines or see the Module Guide.

Introduction to the assignment Tutor-marked assignment 03 (TMA 03) This assignment consists of three questions. The first question concerns the characteristics of mobile devices, and how to make websites suitable for them. The second question asks for your description of a mobile app that could be used by the OU Running Club for timing races. Finally, in Question 3, you are asked to use App Inventor to design a prototype of this mobile app for the OU Running Club.

Please read the guidance in the TMA questions and guidance section of the TT284 Module

Guide before answering the questions here. If you need further guidance on any assignment questions, please ask your tutor who will be happy to help.

Question 1 (30%) (a) Suppose you are asked to develop a website for mobile banking and a website for a running club for users with mobile devices. What would you do to make sure the developed sites work effectively on mobile devices?

i. For both sites (5%)

ii. For the banking site only (5%) iii. For the running site only (5%)

(250 words) (15%)

(b) Now suppose that instead you are asked to develop apps rather than websites for these two cases. Amongst the options you could consider are native apps and mobile web apps. Consider the specific advantages and disadvantages of deciding to develop a native or mobile web app for each case. i. The mobile banking case (8%) ii. The mobile running club case (7%)

(250 words) (15%) Question 2 (20%)

A timer for the OU Running Club

At present, the timekeeper for Open University Running Club (OURC) records the finishing times for the runners in the race, and each runner is given a paper token with their finishing position. Someone then has to manually put these times against the runners' names and finishing positions in an Excel spreadsheet. This can then be emailed to all the runners, or downloaded from the website. There is a feeling that perhaps some or all of this process could be automated using a mobile app so that the running times appear on a page of the OURC website almost immediately after the race. And other information about the race can be calculated such as the average race finishing time (average LAP time).

Use information from the interviews with the people involved with the OU Running Club and your own ideas to develop a description of the application, in the form of a list of requirements (see details below). Useful videos

Video 1 Introduction to the OURC

https://learn2.open.ac.uk/mod/oucontent/view.php?id=738954

Video 6

Considering mobile options

https://learn2.open.ac.uk/mod/oucontent/view.php?id=738954§ion=1.3.5 Video 25

Mobile stopwatch app

https://learn2.open.ac.uk/mod/oucontent/view.php?id=738954§ion=7.2

Write down a list of what you consider to be the user requirements for this app. Try to be specific about how the app must look, how it will be accessed and used, and how it will work. You should consider, for example, the timing device, the number of runners, what happens if the mobile connection is lost and runners are still passing the finish line. Additional issues may concern privacy and security, the user interface and the general look of the app. You should split the features into 'essential' and 'nice to have'. Here is the start of my list to give you an idea of the level of detail needed.

Essential

Functionality: There needs to be a START timer button and a LAP button that records each runner's finishing time as they pass. The app should be able to measure the finishing time or LAP time (the OURC time keeper refers to LAP times) of up to 100 runners and should display the average race finishing time (average LAP time). etc.

(150 words maximum, including my features if you decide to include them)

Question 3 (50%) Developing a prototype timer mobile app for the OURC:

1. The full app, as described previously, requires each runner's name to be associated with their finishing position and time. However, for the purpose of this part of the TMA, you will develop a mobile app that is a little simpler. The developed app needs to measure and record the time for each finishing position and send them to a 'Positions and times' page of the OURC website that we have already designed for you. Appendix 1 explains the way in which this 'Positions and times' page works.

2. The mobile app should also show the OURC 'Positions and times' page, as a way of showing the timing data sent to the site.

3. Finally, the mobile app should calculate and display the average finishing time (average LAP time) – this needs to be done on the app (phone) side. Although some of the handicap races will be longer than an hour you may assume for the purposes of this app that the maximum time to be measured is 59 minutes.

Following the suggestion in Chapter 15 of the App Inventor book it is a good idea to break the application down into code modules. Click here to read this chapter. Now read the extra information in Appendix I and II, then draw a block diagram or a

wireframe showing how the code modules that need to be developed will work with each other and connect to the server. You are not required to include screenshots of your app blocks for this question. Instead, sketch out your initial ideas of what your app should look like and how the different elements should work. This would form the basis of your subsequent design using App Inventor.

Now develop the mobile app using the Open University App Inventor software. Remember to use good naming and comments in your code. The full breakdown of the marks for this activity is given in the marks table later. What to submit to the eTMA system Given that you will be submitting your TMA via the eTMA system, you will need to combine all the required files into a zip archive for submission. A link to information on how to do this is given here.

Please read the instructions carefully and make sure that you are familiar with the eTMA system and also how to zip files in good time for your submission. You should not leave this until the last moment.

To locate the eTMA service, follow the links from StudentHome and then carefully work through the instructions to submit your TMA files as a single zipped archive containing:

Your answers to Q1, Q2 and Q3 part a), which should have the filename 'TMA03.doc'.

The document you submit must be in a format readable by Microsoft Word. Your app as a downloaded App Inventor project file (.aia file). It should be called 'OURCtimeryourPI' e.g. OURCtimerA1234567. Do not send a packaged '.aia' file if you have packaged one. Note: Unless you have prior arrangement with your tutor, these are the only document formats we will accept; other formats including 'pdf' files are therefore NOT permitted and will receive a marks penalty.

Please note that there is no mechanism for a marker to determine whether you have submitted all the files you intended, or that the files submitted contain any data. So please take the time before submission to double-check everything you submit. One way to test whether you have included everything is to create your single Zip file and then copy it to another folder on your hard disk. Unzip the file and review the content from the new folder.

It is strongly advised that you test the system beforehand using the dummy TMA 00 system to help eliminate potential errors. Breakdown of marks

Question 1 marks will be awarded out of a total of 30 for:

a. What would you do to make sure the developed sites would work effectively on mobile devices?

(a) For both sites (5%) (b) For the banking site only (5%)

(c) For the running site only (5%) (250 words) (15%) b. What are the specific advantages and disadvantages of deciding to develop a native or mobile web app for each case?

(a) The mobile banking case (8%) (b) The mobile running club case (7%) (250 words) (15%)

Question 2 marks will be awarded out of a total of 20 for:

List of the essential and 'nice to have' features of the OU Running Club mobile app (20%) Question 3 marks will be awarded out of a total of 50 for:

a. A diagram or a wireframe showing the code blocks (10%)

b. A functioning app that successfully updates your OU Running Club positions and times page (15%) and displays the average LAP time (15%) c. The general look and usability of the app (5%) d. Good naming and code comments (5%)

N.B. some marks will be awarded under 3(b) to apps that are 'part working'.

Appendix I: 'Positions and times' page The 'Position and times' page that you will use has the following address: yourOUCU.tt284.open.ac.uk/querystring_page.php

Figure 1 shows how my position and times page looks with a couple of times displayed. Figure 1 The OU Running Club 'Position and times' page with two times displayed View description - Figure 1 The OU Running Club 'Position and times' page with two times displayed

The page has been designed to accept a query string of the form:

YourOUCU.tt284.open.ac.uk/querystring_page.php?name1=value1&name2=value2......etc.

Once this query string is received, the php code stores the data in your results database just as you did in Block 2. Then it retrieves the data and displays it as a web page, as shown in Figure 1 (again, as you did in Block 2).

The page has a 'Clear database' button. This sends a request which has a POST that tells the server to clear the database.

Appendix II: Some hints How many of the techniques needed have been covered already?

The tutorials that you have already completed have shown you how a button can be used to instigate an event and how labels can be used to display information. Buttons will be important in starting the timer and recording the times of the runners. Indeed, you have already done this when you made a simple stopwatch. This can be modified to store all the finishing times.

The QuizMe tutorial showed you how it was possible to store information in a list. The GetStock tutorial showed you how to send a query string to a website. The web viewer

in the 'not ready for prime time' in the component design palette will be of use to show the OURC 'Positions and times' page on the mobile phone emulator. I suggest you start by developing an app that just shows the OURC 'Positions and times' page, as this will demonstrate that you can access your own page using your OUCU and password.

Finally, a word of caution: App Inventor allows the development of apps with multiple screens. I have intentionally not used this feature in this block. Doing so involves complications which are not necessary for this TMA. You will get no extra marks for a two-screen solution.

Figure 1 The OU Running Club 'Position and times' page with two times displayed Description

This figure shows the OU Running Club positions and times page with two times displayed.

It shows a web page with a URL starting http://gsm2.tt284.open.ac.uk/querystring_page...

Beneath this at the top of the web page there is the title 'OURC positions and times'. And a sub title 'Values for user Glyn Martin, gsm2 on 5 March 2012:' At the top right of the web page there is the Open University logo.

Under the title there is a table with two columns and two rows. The columns are labelled 'position' and 'time' respectively. The first row has the values 'position1' and '34.9' respectively. The second row has the values 'position2' and '50.9' respectively. Beneath the table there is a button labelled 'Clear database'