联系方式

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

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

日期:2021-12-16 10:30

PROG2500 – Programming Mobile Systems – Session 2 2021

Assignment 1


Submission: You need to submit your source code as a ZIP archive for all parts of the assignment

to assignment 1 submission link in the unit site (this is the preferred way). If the file size is too

large to upload to submission link, please send the ZIP file via e-mail or via a method specified by

your tutor. Note that marks will be deducted for poorly structured or uncommented code. All

source code files submitted must include title comments that at least identify the author and the

assignment part. The separate parts of the assignment are to be submitted in separate

subdirectories (e.g., Part 1, Part 2) – submissions that ignore this instruction and leave all

assignment files in one directory will be penalized.


Do not leave this assignment to the last minute – you can start on it while concepts are fresh in

your mind. You may start Part 1 before you have studied all the required materials. If you require

an extension you must apply to your tutor before the due date to be considered. Unless an

extension is approved there is a penalty (see Unit Information Guide).


Assignment Overview: This assignment requires you to develop an application using Typescript

for Part 1, and Angular for Part 2, to demonstrate your knowledge of the Typescript language and

Angular framework. Your apps should be stand-alone apps without server contact for data. The

app will not save data after the browser window is closed but you will need to maintain a

JavaScript object so that changes made remain while the browser window is open.


Part 2 can be an expansion of Part 1 though you can start again from scratch if you wish. It is

recommended that you save your Part 1 before you start modifying it for Part 2.


Part 1 – Basic TypeScript App (12 marks)


The aim is to develop a simple one-page TypeScript app to maintain a small database of ‘IT

serveries ticket’ information while the browser window is open. You can initialize your app with

hard coded data, or you can start with an empty data structure. Types are important in your code,

and you are expected to declare types for example, for variables, function parameters, and

function return values. Marks may be deducted for too few type definitions, i.e., writing

JavaScript instead of Typescript.


The ticket data has the following fields:

ID

Subject

Category (Billing, Marketing, Developing)

Assignee

Priority (Low, Medium, High)

Status (Open, Solved, Close)

Comment (one line of comments that user can enter)


PROG2500 – Programming Mobile Systems – Session 2 2021

Assignment 1


The ticket data has the following requirements (1 mark):

Each record must have a value for all fields, only the Comments field can be blank. There

must be at least 10 records.

The Category, Priority and Status must be one of the options shown above.

An ID can only be entered and saved once (it must be unique for each ticket)


Your database would probably be a Typescript array of JavaScript objects, each of which has

properties corresponding to the above fields. You can use another data structure if you wish but

types will be necessary to ensure integrity of the data (1 mark).


Your app should implement:


A way to edit the ticket data (2 marks). Remember you do not have to permanently save

the data between browser sessions, but you do have to save it while the app is active.

HTML form widgets are the easiest here.

A way to add a new ticket data (2 marks). Consider re-using the edit form above, it will

require careful thought so as not to confuse the user.

A way to delete individual ticket with a warning message saying “Do you really want to…”

to reduce accidental deletions (2 marks).

A way to search any ticket by the ID field (2 marks). This will probably done with a HTML

list but you may use other techniques (e.g. implement a search text field).


Your app should also:

Provide an interface equally viewable by narrow and wider mobile screens (it will be

tested). Note that this is just a request to keep your app simple and displayable on narrow

screen as well as possibly wider screens. You can put links in a long page to navigate your

app on narrow screens. This will be important when we get to mobile device apps later in

the unit (1 mark).

Use interactive features (e.g. use innerHTML assignments) to improve user experience

(not alert() calls!). You are expected to add error messages where necessary (1 mark).


Part 2 – Expand the App (13 marks)


Modify the app from Part 1 to become a multipage Angular app. For example, place the add

record on a separate page to the search facility. You can use as many pages as you like but don’t

forget to use an error page (for malformed URLs), an Information page e.g., about the app and

have your name as app developer. A Help page showing how to use the app would be nice as

well.


PROG2500 – Programming Mobile Systems – Session 2 2021

Assignment 1


Marks are allocated as follows:


Having a working Angular app with appropriate Angular coding (3 marks). Minimally the

app will have one component and one module, but to implement the following

requirements you will need more components.

Using Angular forms (3 marks). This is separate to the multipage facility. If you just add

Angular code to the one-page Typescript app from Part 1, you have not used Angular

forms.

The multipage facility using the Angular router (3 marks). This includes the navigation

between pages, error indicators and no broken links.

Add at least one help button on each page that shows appropriate help messages. You

should make interaction with the help facility as easy as possible. Also add helpful

information, including error messages, when data entry is incorrect (3 marks).

Use of CSS styles (1 mark). Just use them, there are no marks for artistic design. We are

looking for the ability to use styles. Feel free to use styles you find in the Angular

documentation of other on-line sources (a reference to the original designer should be

made in your code if appropriate).


相关文章

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