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

Assignment 1  Project

V1.1 (changes marked in red)

Objective:

Effective time management are essential for business and for study. It can be used as a tool to support software development, such as managing team meetings. In this assignment, you’re responsible for the development of a time management tool. You’ll practice engineering workflow and tool chains for software development.

In this assignment, you’ll develop a countdown timer designed for team meetings. An example of the countdown timer can be found at:

 

https://www.timeblocks.co/

The basic feature of your countdown timer should include:

1.   Allow users to specify sub-tasks and time.

2.   Allow users to export and import sub-task and time configuration as a CSV file.

3.   Allow users to pause / advance / extend the current sub-task.

4.   Every member is required to develop one feature to enhance countdown timer, which can be used to support online meetings.

The development of feature 1 should remain in the master branch. Other features should be firstly developed in a separate branch, and then merge to the master once the feature development is     complete.

Upon completing each of the three feature listed above (Note: you can proceed with any order), you should create tags v1.0, v2.0, and v3.0 for each completed feature.

In this assignment, you can discuss with your group can choose to program in either java, javascript, or python. As this course focuses on tools for software development, please select the programming language that you’re already familiar with. For simple countdown timer in these programming languages, you can take a look at the following links to get start with (note: these samples are not the solution, just to give you some ideas to start with):

Python

https://www.youtube.com/watch?v=KZkQFab3NnA

Java

https://examples.javacodegeeks.com/desktop-java/awt/event/a- simple-timer-example/

Javascript

https://www.w3schools.com/howto/howto_js_countdown.asp

a reminder, this course focuses on tools for software development, and programming skills are the    pre-requisite of this course. You should choose a programming language that you’re familiar with, or you are confidence that you can be self-taught or learn with your group to complete the assignment.

Deliverables

(unless otherwise specified, the deadline is by the end of the week (Sunday 11:59pm)

Group formation (week 2)

•   Students are given an opportunity to self-nominate groups with 3 members before the   end of week 2. Note, this is optional, and you can leave for random allocation in week 3. If you opt for forming your self-nominated group, the self-nomination process is through a wiki page on the course website. You should closely follow the instruction on the wiki   page which will be open in week 2. Fail to follow the instruction will result in losing the    5% checkpoint mark.

•   Students without self-nomination after the deadline will be randomly put in groups or    allocated to existing groups. If your self-nominated group has 2 members, you might get an additional member assigned.

•   Group members are required to be in the same practical session (note: all external students are considered under the external-practical session.)

•   If your group member drops out from the course, for example do not respond to your emails, please keep your email log and proceed without the missing member.

•   Note: the group formation is part of the assessment. If you fail any of the above requirement, you will lose the checkpoint mark.

•   Note: the group arrangement should be followed throughout assignment 1. Failed to      follow the group setup without prior approval will result in -30 of the overall assessment of assignment 1. It should be noted that we use version control and we can identify who did what at when; also, majority of the assessments are individual.

Checkpoint (Week 4)

by the end of week 4. You’re required to:

•   Create a private team repository on https://gitlab.com/

•   Each team members should create one account to access the project repository (you will lose mark if you have more than one account). Your account name should be the same    as your UniSA network username.

•   Add the tutor inft2063tutor as a developer.

•   In the README.md file and put your name, user ID, and student ID, and git repository URL. Commit the change into the repository. (i.e. every member needs to make a commit operation.)

•   Use git clone to download the entire code repository. ZIP the repository and submit to

the checkpoint submission link on the course website. Every member needs to submit. Code repository submission (mid study period break, 23 Apr 2023)

•   Your code should be completed by mid-SP break for submission.

•   You should prepare a user manual written in markdown, with filename manual.md, saved under the doc/ sub-directory in your code repository.

•   You should commit your changes and push to your work to your group repository on gitlab on a regular basis. At mid-SP break, you should clone the entire repository and save it as a ZIP file and submit to the course website. (Note: no mark will be given for other compression formats, such as RAR or 7z)

•   Every member is required to submit the ZIP file (and they should be the same for the group). No mark if you do not submit the ZIP file.

Final report submission (mid study period break, 23 Apr 2023) No mark will be given for a joint report. A report up-to 20 pages in length, including the following sections:

1.   Project overview

Give a brief summary of your project.

2.   Timeblock for online meeting

Describe how your software is designed to support online meetings

3.   Individual contribution

Provide details of your contribution in Features 1, 2, and 3 in this project. Provide details of the new feature you’re responsible for.

Describe how you collaborate with other group members.

4.   Software workflow process and software development environment

Describe the workflow process you’ve practiced in this assignment (e.g. did you use agile, Kanban, scrum meeting, etc?)

Provide details of the tools you used in this project: for instance, addons that has been configured if you use an IDE, or scripts used if you use command line interface. Explain the benefit of your development environment.

Other guidelines

•   Penalties apply for reports exceeding the maximum page limit.

•   There is no minimum length. Lengthy report may not necessarily better.

•   You can optionally include appendix which does not count towards the page limits.

•   Please get in touch with your group members early and start your project early. The report will be submitted through the course website.

Individual presentation (Week 10)

•   Everyone is required to present their individual task. Up to 3 minutes per person.

•   Internal students are required to attend the practical class for individual presentation.

•   External Students are required to submit voice-record slide presentation in an mp4 video file. You can use Microsoft PowerPoint to record voice and export -> create a video. You can also use software other than Microsoft PowerPoint.

•   This is an Individual Presentation. You should include the common introduction of your group project in your 3 minutes, to demonstrate your understanding of the overall project, instead of only one group member deliver a project overview. (i.e. you can repeat the project introduction slides among the group members.)

•   The presentation should be individual (i.e. multiple 3-minute presentations). No mark will be given for a joint presentation.

Extension Policy

All students seeking extensions are required to:

•   Extension request needs to be submitted online at least 3 days before the deadline.

•   Provide supporting evidence for the extension (e.g. medical certificate, access plan, etc.)

•   Submit your most up-to-date report as a supporting document

•   Late submission penalty: 20% per day (including the weekend)

Marking Scheme

Assessment Components

Weight

Checkpoint

5%

Software design and implementation

20%

Version control

20%

Bug tracking

10%

User manual

10%

Individual presentation

10%

Individual report

25%

Appendix – marking rubric

(Note: This screenshot is to remind you that the marking rubric is also available on the assignment 1 submission link. You can read the marking rubric with a larger font size on your browser.)