联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2022-06-28 08:14

ITP4501 Programming Techniques for Mobile Systems

Assignment

Semester 3

Institute of Vocational Education

Department of Information and Communications Technology

HDSE (IT114105)

ITP4501 Programming Techniques for Mobile Systems

Summer Semester 2021-2022

Assignment

Submission Guidelines

? This is an individual assignment. ? The submission deadline of the assignment to is 11:55pm, 3 July 2022 (Sunday). ? You need to submit all program sources (in a single zip file) and your answer of two

questions in section 7 (in a MS Word file) to the Moodle website

http://moodle.vtc.edu.hk assignment dropbox before the deadline. You are advised to

upload your work at a time reasonably earlier than the cut-off date and time. Moodle

allows multiple submissions, however, only the latest copy will be retained. You will

receive ZERO MARKS for LATE SUBMISSION. ? You are also required to give a demonstration. 40 marks will be deducted if

demonstration is not done. 1 Aims and Objectives

? To gain experience in mobile application UI and program design.

? To gain practical skill of Android application development. ? To understand the constraints and limitation of mobile application and the ways to

overcome them.

? To obtain knowledge on connecting the mobile device to the internet services and

building a multi-tier distributed system.

2 Introduction

In this assignment, you are required to develop an Android Application to play a Tic-Tac-Toe

Game. This app will also record the result and corresponding time required to complete a game

and use charts to show the history records.

You can use following link to know how to play a Tic-Tac-Teo game:

https://en.wikipedia.org/wiki/Tic-tac-toe

Page 2 of 4

ITP4501 Programming Techniques for Mobile Systems

Assignment

Semester 3 3 Functional Requirements

Listed below are the basic requirements of your application. You need to refer to the Local

Database section for the database schema.

1. A main activity which contains a main menu for players to choose.

The four main functions are: Play, Game Ranking, Your Records and

Close.

2. When players touch the "Play" button on the main menu, they start to play the game with

CPU. Players will mark an 'O' on an available button which does not contain any mark ('O'

or 'X') by touching it. After players touch on an available button, CPU will RANDOMLY

to mark a 'X' on an available button. To simplify your workload, you are not required to

write an AI for CPU to win the game.

When players or CPU who succeed in placing three of their marks in a horizontal, vertical,

or diagonal row is the winner. Your app will save the record of this game to the GamesLog

table in a local database and then your app will show a "Continue" for players to restart the

game.

3. When players touch the "Game Ranking" button on the main

menu, your app will download a JSON from your own api

server. You MUST use a ListView to show all the records

in the JSON string.

Page 3 of 4

ITP4501 Programming Techniques for Mobile Systems

Assignment

Semester 3

4. When players touch the "Your Records" button on the main menu, Your app will load the

records in the GamesLog table from your local database. You MUST use a ListView to

show all these records. Your app will provide a button "Show in Pie Chart" which let

players to show winning status (Win, Lose, Draw) by using a Pie Chart.

Note: You are encouraged to design and implement extra features. 10 marks will be allocated on

such additional functions. Refer to section 7 Marking Guidelines for more details.

4 Local Database

The database scheme described here is an extremely simple one. Many fields are intended not to

be included in order to reduce the complexity of this assignment. You are free to add columns and

tables to the database to fit for your own needs.

GamesLog (gameID, playDate, playTime, duration, winningStatus) 5 Ranking JSON Server

You can obtain a ranking list from your own api server and the data returned is in JSON format.

The JSON string returned is shown below:

[{"Name":"Kenny Lam","Duration":104},

{"Name":"Peter Kwong","Duration":25},

{"Name":"John Chan","Duration":38},

{"Name":"Johnny Kwong","Duration":117},

{"Name":"Mary Lam","Duration":23},

{"Name":"David Wong","Duration":49},

{"Name":"Alan Ma","Duration":18},

{"Name":"Carrie Lam","Duration":68},

{"Name":"Chris Lam","Duration":93},

{"Name":"Mary Cheung","Duration":78}]

You need to sort the JSON data by using duration in ascending order to obtain the ranking.

Page 4 of 4

ITP4501 Programming Techniques for Mobile Systems

Assignment

Semester 3 6 Additional Constraints

? The UI of the mobile application must be produced with Android widgets such as

TextView, CheckBox, and Spinner etc. Web-based UI is NOT allowed.

? The statistical charts must be produced using Android built-in graphics API such as

drawRect() and drawText(). Using any other external drawing packages or libraries is

NOT allowed.

7 Marking Guidelines

You project will be assessed according to the items below.

? Database initialisation. ? Level of completion. ? Correctness. ? UI design (no mark will be given if you are using the same design in this document). ? Program design and implementation. ? Program style and comments. ? Driving Question: How can an organization get benefit from a central computerized

management system by using a mobile app? ? Briefly discuss how ITP4510, ITP4522 and ITP4915M modules help you to finish this

assignment.

10 marks will be allocated to extra features not described in section 3. Each student can develop

at most 3 additional functions such as animation effect or sound effect on the Android device or

any other relevant and useful functions.

10 marks will be deducted if you do not submit your answer of last two questions in section 7:

Driving Question: How can an organization get benefit from a central computerized

management system by using a mobile app?

Briefly discuss how ITP4510, ITP4522 and ITP4915M modules help you to finish this

assignment.

40 marks will be deducted if demonstration is not done.

END


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp