Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

Department of Computer Science and Information Technology

CSE2UI Assignment Two

20% of your final grade.

Objective

Demonstrate your knowledge and understanding of UI development

Due Date

11:59 PM (AEST/AEDT), Sunday 5th November 2023 (Week 13)

Delays caused by computer downtime cannot be accepted as a valid reason for a late submission without penalty. Students must plan their work to allow for both scheduled and unscheduled downtime.

The LMS will be configured to allow you to submit as many times as you like, the most recent version will be marked.

A penalty of 5% per day will be imposed on all late assignments up to 5 days (date). An assignment submitted more than five days after the due date will NOT be accepted and zero mark will be assigned.

Students will not be granted an extension of the assignment deadline. Students are requested to apply for special consideration through Student Centre. In addition, students are advised to submit whatever incomplete work they have already done for the assignment.

If you change your submission after the due date it is considered a late submission and will incur a 5% penalty for each day that it is late.

Academic Misconduct

Types of academic misconduct include plagiarism (copying other people’s work without proper acknowledgement), collusion (working together on an assessment task that is supposed to be completed individually), and cheating.

Please refer to https://www.latrobe.edu.au/students/admin/academic-integrity

Submission Guidelines

The deliverables are your projects with source code that your solution needs to function (separate zip or rar file for each solution), the video file and the text file, which should be submitted to LMS by one of the group members.

You are NOT permitted to use any sort of automated code generation tools or programs.

Problem Description

This assignment requires you to implement a gesture keyboard which also supports text-editing command input by drawing gestures. As the gesture keyboard was initially designed to input text by dragging the cursor over the letters in the desired word, you need to figure out a way to distinguish between text input and command input. For example, you draw a gesture from the key “s”, “a”, “v” and “e” on the keyboard. By default, you enter the word “save”. But how can you enter the command “save” by drawing a similar gesture?

This assignment is based on the lab of week 9 and assignment 1. In the lab of week 9, we have developed the Gesture Keyboard. In assignment 1, you have proposed solutions to differentiate text input and command input on gesture keyboards. In this assignment, you need to select some solutions and implement them. If you have new solutions, you can also use and implement them.

Rules and Requirements

· Your program should be developed in Python.

· Your program must run correctly.

· Your program should support both word and command input on the gesture keyboard.

· Your code must be easy to read with necessary comments.

· Make sure you have read this document and all relevant documentation.

Group project

You can work in groups with your classmates. The members in a group can be between 1 – 5 people (maximum 5). Note that you MUST only team with others who are in the same instance of CSE2UI.

Please note that the marking criteria are the same regardless of the number of members. For example, no matter if you are the only person in your group or your group has 5 persons, you still need to provide least 5 solutions to get A.

All members in a group will receive the same mark unless explicitly noted.

Different groups CAN NOT work together to complete the assessment; this is a type of academic misconduct: collusion.

Task Overview

Before you start your assignment, please do the following:

1. Ensure you have completed labs in weeks 8 and 9.

2. Start this assignment on the basis of the lab in week 9.

3. Carefully read your assessment 2.

4. Carefully read this document.

Here are the main tasks you need to do for this assignment.

Step 1 – Select solutions for the problem in Assignment 2

The first step is to determine solutions you plan to implement for this assignment. You can select solutions proposed in assignment 1. If you have new solutions, you can also adopt them for implementation. Note that the solutions proposed in assignment 1 are not compulsory to be implemented in this assessment.

Step 2 – Select commands for gesture keyboard interaction

In the template.py (self.word_list), there are four command-related words: 'copy', 'redo', 'undo', 'save'. Your solution can take them as example commands.

Step 3 – Implement your solutions

You need to implement your solutions with Python on the gesture keyboard developed in the lab of week 9.

Here is an example solution. To input the word “save”, the user just need to drag the cursor over the keys “s”, “a”, “v” and “e”. To input the command “save”, the user can double click on the vicinity of the key “s” and the draw a gesture from the keys “s”, “a”, “v” and “e” on the keyboard. Such a way can be used to differentiate text input and command input on gesture keyboards.

Your application should support both text and command input. Text entry should be the same as the gesture keyboard in the lab of week 9.  For command input, the application should generate a message box showing which command is triggered (as shown below). If not a command of the four ('copy', 'redo', 'undo', 'save'), the message box should show “Not a command”.

Note that for most solutions, you just need to add and revise code in the module text_entry_window.py to implement your solutions.

You need to have your solution projects in separate zip or rar files and submit them separately to LMS.

Fig. 1. (left) text input; (middle) command input; (right) not a command.

Step 4 – Record a video

You need to record a short video walkthrough of your implemented solutions (you can do it with Zoom as assignment 1), in which you will demonstrate how your solutions work (the code, and the way to use your solution as shown in Fig. 1). 3. Please upload the video to YouTube (or similar), and put a link to the video in the text file (see the last marking criteria). In addition, you need to upload the walkthrough video to LMS.

Marking Criteria

CRITERIA

A: Excellent

(>80%)

B: Very good

(70–79%)

C: Good

(60–69%)

D: Acceptable

(50–59%)

N:Unacceptable

(<50%)

The number of solution (excluding the sample solution) (85%)

Implement at least 5 solutions

Implement 4 solutions

Implement 3 solutions

Implement 2 solutions

Implement 1 or 0 solution

Your video should have a (1) title, (2) captions for your proposed solutions, (3) less than 100 M (4) at least 480p (10%)

The video meets the 4 requirements

The video meets 3 of the 4 requirements

The video meets 2 of the 4 requirements

The video meets 1 of the 4 requirements

The video meets none of the 4 requirements

Code quality (4%)

Comments on the code for all your solutions

Comments on  the code for 4 of your solutions

Comments on  the code for 3 of your solutions

Comments on  the code for 2 of your solutions

Comments on  the code for less than 2 your solutions

A Word or notepad file including the names and student IDs of your group members as well as the link of your video (1%)

Make sure that the file includes the names and student IDs of your group members as well as the link of your video.