Java代写 | COSC1295 Assignment Part Console Implementation


School of Science

COSC1295 Advanced Programming, sem 1 2021

Assignment Part 1: Console Implementation

Due date: Multiple milestone submissions. Final submission due 9am Monday May 31, 2021. No late submissions accepted unless Special Consideration is granted in advance.

Weighting: 50% of your final grade.
In addition, multiple milestones through the semester to a total of 15 marks.

1. Outline

NOTE: Carefully read this document. In addition, regularly follow the Canvas assignment discussion board for assignment related clarifications and discussion.

In this assignment you are required to work individually to develop a Resident Care System using Java. Using Java as a vehicle, you are required to demonstrate your understanding of object-oriented design principles, design patterns, generics, graphical user interfaces, unit testing and object relational mapping building on the foundations laid by the Programming Fundamentals course and further developed in COSC1295. The system you develop should be maintainable and extensible as well as produce substantial value for the stakeholders by improving the level of patient care. The marks will therefore be awarded both for your functionality as well as justifying the design decisions and code quality. During the final face to face assessment you will also be required to justify your design decisions as well as explain how your program can be extended to meet other related requirements.

This assignment is structured to let you incrementally build your product throughout the semester by incorporating the OO design principles, Java constructs and technologies introduced in the notes and videos on Canvas, and developed in the lecturorial and prac sessions. You are required to ensure you make steady progress and marks will be awarded in the prac classes for completing specific milestones. The main purpose of this assignment is to develop and demonstrate your problem-solving skills by applying the concepts taught for a reasonably complex open-ended problem (and to create a complete working system based on agile specifications). You should not be overly concerned about every minute detail and are free to make reasonable assumptions (you may check with your lab-tutor if in doubt, who will also mark your final assignment).

Disclaimer: the specification in this assignment is intended to represent a simplified version of a system in real life and thus is not meant to be an accurate simulation of any real system or service that is being used commercially.

Assessment Type: Individual assignment; no group work permitted. Submit online via Canvas. Marks are awarded for meeting requirements as closely as possible according to assignment specifications and the supplied rubric. Clarifications/updates will be made via announcements/relevant discussion forums.

Page 1 of 5

improved by researching and identifying other technologies and tools in a separate one-page report. specifications and assessment criteria will follow throughout the semester.

RMIT Classification: Trusted

2. Assessment Criteria

This assessment will determine your ability to implement Object-Oriented Java code according to the specifications shown below. In addition to functional correctness (i.e. getting your code to work) you will also be assessed on code quality. Specifically:

3. Learning Outcomes

This assessment is relevant to the following Learning Outcomes:

CL01: use the Java programming language in the implementation of small to medium sized application programs that illustrate professionally acceptable coding and performance standards.

CL02: demonstrate knowledge of the basic principles of the object-oriented development process and apply this understanding to the analysis and design of solutions for small to medium scale problems.

CLO3: describe and apply basic algorithms and data structures, in particular simple searching and sorting of data stored in data structures and manipulating data.

CLO4: implement basic event-driven programming and graphical user interfaces in Java.

Page 2 of 5

RMIT Classification: Trusted

4. Product Description

You are required to develop a system to manage the high care patients for the Able Care Home. The management wants a visual interface that maps the patients to their respective beds to help nurses easily check the prescription details and administer the medications in an effective manner. Moreover, it may be necessary to change the bed assigned to an existing resident when a new resident is admitted reflecting their gender and medical condition (need for isolation). In order to comply with recent regulations, the management wants to archive all the patient related details including medicine prescription and administration details to a database that can be accessed and audited by external parties. In this assignment you are only required to deal with two wards with 6 rooms, each with the number of beds per room varying from 1 to 4 as shown below.

Functional Requirements to be Carried out through a Graphical User Interface

administered at specific doses at specified times

day+time and id of the staff member performing the action and these are recorded with the action. An Exception (different ones) should be raised if the staff member is not authorized to perform the action, or is not rostered for that day+time.

Other Functional Requirements

Page 3 of 5

RMIT Classification: Trusted

Process, Quality, Security, Testing, Personal-Reflection and Technology Related Requirements

fail with appropriate diagnostic messages.

username/password can add username/password for doctors and nurses.

Progress Milestones

You will be required to demo your progress in the lab regularly to demonstrate progress. The specific milestone requirements and associated dates will be communicated via Canvas.

5. Project Phase 1

Phase 1 (Focusing on Class and Interface Design, Use of Collections, JUnit Test cases, Serialization and Exceptions) Due: Start of Week 7
Implement the staff and location related functionality incorporating collections, generics and exception handling. As well as the rules for allocating patients to beds and recording medication, etc, requirements, you must account for the following rules/compliance on care staff managing patients:

method of the CareHome class should throw an exception if these business rules are not enforced.

are maintained in separate lists.

should include both positive and negative tests (where exceptions are expected to be thrown).

functionality you build at this stage. NOTE: that the text-based menu will be replaced by a GUI so you do not need to build both, unless you need to demo functionality BEFORE you build a GUI. (Any text-based menu build will be temporary and therefore does not need to be robust UNLESS you don’t build a GUI interface.)

Page 4 of 5

RMIT Classification: Trusted

6. Use of Github

You are required to use Github repository management to manage your code.

modification (this may be several times per day, or even per hour).

7. Submission format for final submission

8. Academic integrity and plagiarism (standard warning)

Academic integrity is about honest presentation of your academic work. It means acknowledging the work of others while developing your own insights, knowledge and ideas. You should take extreme care that you have:

If you do not acknowledge the sources of your material, you may be accused of plagiarism because you have passed off the work and ideas of another person without appropriate referencing, as if they were your own. RMIT University treats plagiarism as a very serious offence constituting misconduct. Plagiarism covers a variety of inappropriate behaviors, including:

For further information on our policies and procedures, please refer to the University website. 9. Referencing guidelines

You are free to refer to textbooks or notes and discuss the design issues (and associated general solutions) with your fellow students or on Canvas; however, the assignment should be your OWN WORK.

The submitted assignment must be your own work. For more information, please visit
Plagiarism is treated very seriously at RMIT. Plagiarism includes copying code directly from other students, internet or other resources without proper reference. Sometimes, students’ study and work on assignments together and submit similar files which may be regarded as plagiarism. Please note that you should always create your own assignment work even if you have very similar ideas.

Plagiarism-detection tools will be used for all submissions. Penalties may be applied in cases of plagiarism.

Page 5 of 5