关键词 > COMP603/ENSE600

COMP603/ENSE600 Program Design & Construction / Software Construction – Assessment Project 2 2022 Semester 1

发布时间:2022-05-24

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

COMP603/ENSE600

Program Design & Construction / Software Construction  Assessment

Project 2

2022 Semester 1

Introduction

In Assignment 2, you/your group will work on the same topic. You can either extend the project (re- use the code from Assignment 1) or develop a project from scratch.

Important dates

•    You need to register your group by the end of Week 3 by joining a group from Canvas.

•    Project 1 source code submission: Week 7, by Friday 11:59 pm

•    Project 2 source code submission: Week 12, by Friday 11:59 pm

Requirements of Assignment 2

•    Object-Oriented (OO) Programming concept must be applied to the project. Important OO concepts, i.e., encapsulation, abstraction, inheritance and polymorphism, must be reflected.

•    There are two assessments. The first and second take 40% and 60%, respectively. Each            assessment is comprised of lab exercises and a software development project. Refer to the table below:

 

Where complete means you will need attempt to complete the task and upload it to the Canvas.

•    In Software Development Project 2, you will upgrade the software to / newly develop a Graphical User Interface (GUI) version of the product. Meanwhile, you will include a database component to the product, implement Design Patterns, use Git for version    control, eliminate code smells, and include necessary Unit Tests.

•    The source code of Project 2 will be submitted in by the end of Week 12.

•    Refer to the important dates for the due date of both project assignments.

•    The program needs to be bug-free and has robust error handling.

    You need to develop the projects by using NetBeans 8.2/12 and JDK 8.

•    You need to use Apache Derby DB (also called JavaDB:http://db.apache.org/derby/) as the database management system .

•    You need to develop unit tests (using Junit Framework) for testing some important functionalities of the program.

•    The program should be easy to build and run without any configuration. The DB should be set

up automatically without any manual configurations, including manually launching a DB service.

•    You need to have an open mind about the functionality of your software project and try your best to make your program robust, interesting, and easy to use.

•    You will be expected to develop your own Java code for the projects. You may use the Java standard library and other external libraries.

•    You are encouraged to learn more beyond the lectures and apply what you have learnt to the projects. However, the project requirements stated in this document should be satisfied.

•    IF you work in a group, you also need to include a one-page contribution for each project. If any       team member gives less than 40% contribution/no contribution in terms of coding, the student will be given a penalty or even fail the paper.

•    Read Marking Guideline carefully for the details.

Project Code Submission

•    The project must be submitted via Canvas.

•    You need to submit a compressed ZIP file which contains:

o The project folder which contains all the source codes and related files, e.g., image files, text files, unit tests, etc.

o IF you work in a group, you also need to include a one-page contribution for each project. If any team member gives less than 40% contribution/no contribution in terms of coding,  the student will be given a penalty or even fail the paper.

For Project 2, you need to include the databasefolder, which contains all the database files in the compressed ZIPfile. You can set the DB directory inside your project          folder.

For Project 2, you need to include .git (hiddenfolder), having all the historical commits and branches.

•    Submission Guideline

o Find your group ID. You can find the group information under Assessment and Project” . If you find any issue with joining a group, please contact the TA.

o When you submit your project, please compress the whole project as a .zip (not  .rar, .7z or any other types), and rename the zipped file with your group ID and the student ID of members.

o For example, if the group ID is 9, and the student ID is 1234567, then the name of the submitted file should be P09_ 1234567.zip” . If you have a partner in your       group whose student ID is 7654321, then the name should be                                    “P09_1234567_7654321.zip “ .

o Please submit a complete NetBeans project (Ant or Maven). Any improper    submission (e.g., not a NetBeans project, several Java files or compiled classes, lack of essential files, improper name of the submitted file) will affect the          assessment of your project.

Important Notes

•    To pass the course, the student needs to obtain at least a minimum pass (40%) in each assessment (includes software development project and lab exercise). And receive at least 50% overall.

•    Plagiarism and self-plagiarism will result in zero marks in the assignment and be reported to the faculty. We detect Plagiarism by using commercial softwarehttps://codequiry.com/.

Plagiarism means:

o Download open-source projects from online sources, e.g., GitHub, and modify the codes

o Re-use past students’ assignments with modifications

o Re-use the assignment of other papers, e.g., ADA, DSA , etc.

o Purchase assignments from any sources

However, you can:

o Re-use the sample codes and lab solutions given to you.

o Download a utility class/algorithm for your project.

o Download any existing models (e.g., machine learning model, language model)

•    Late submission penalty will be applied (5% penalty per day up to a maximum of 5 days. Late assessments after 5 days will not be accepted) .

•    You have the responsibility to keep and back up different versions of your programs. You may also consider using cloud tools, e.g., one drive, dropbox, Google drive, for backup. Losing of  data (code) will not be considered as a valid reason for special consideration.