Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Assignment 1 Object Oriented Thinking, and a little Java Date Due: 20 September 2021, 11:59pm Total Marks: 37 General Instructions • Read these instructions carefully, especially the first assignment

CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Assignment 1 Object Oriented Thinking, and a little Java Date Due: 20 September 2021, 11:59pm Total Marks: 37 General Instructions • Read these instructions carefully, especially the first assignment

Computer Science

CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Assignment 1 Object Oriented Thinking, and a little Java Date Due: 20 September 2021, 11:59pm Total Marks: 37 General Instructions • Read these instructions carefully, especially the first assignment. You are responsible for all the instructions here. They will not change in arbitrary and punitive ways over the semester; any changes will be highlighted. • This assignment is individual work. You may discuss questions and problems with anyone, but the work you hand in for this assignment must be your own work. • Assignments are being checked for plagiarism. We are using state-of-the-art software to compare every pair of student submissions. • Make sure your name and student number appear at the top of every document you hand in. These conventions assist the markers in their work. Failure to follow these conventions will result in needless effort by the markers, and a deduction of grades for you. • Assignments must be submitted to Canvas. Click on the link for the assignment, drag your files to the Upload box, and remember to click on Save. It is your responsibility to ensure that your upload worked correctly. • The assignment is due at the time stated above. It is advisable to hand in each answer that you are happy with as you go. You can always revise and resubmit as many times as you like before the deadline; only your most recent submission will be graded. There will be a one-hour grace period after that for you to ensure that your files are uploaded correctly, and to make last minute preparations. Moodle will make a note of any submissions after the due date, but in the one-hour grace period, the assignment is not considered late, and no marks will be deducted. • Canvas has a built-in late penalty mechanism, which will automatically apply to any files submitted after the one-hour grace period. After the grace-period, your assignment is considered late, and will incur a late penalty of 15%, and an additional 15% every 24 hours after that. If for any reason, you cannot submit your work to Canvas, do not send assignments to your instructor. Instead, email your instructor asking for assistance to submit the assignment using Canvas, and your instructor will help you. Do not expect email responses outside of business hours, especially close to the deadline. It could happen, but probably won’t. • Programming questions must be written in Java. Do not submit IntelliJ projects (unless the assignment says so directly). If you submit an IntelliJ project when it was not required, you will get zero for that question! • Non-programming questions must be submitted as plain text files only .txt. No PDF, no DOCX, no RTF. If other file types are used, you will receive a grade of zero for that question. Version History • 14/09/2021: Corrected the description of the output for Q3, which was incomplete. • 13/09/2021: released to students CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Question 1 (12 points): Purpose: Practicing Object-Oriented Thinking. Degree of Difficulty: Moderate. None of this is hard work, but do not leave it to the last minute. It will take time! Restrictions: This question is homework assigned to students and will be graded. This question shall not be distributed to any person except by the instructors of CMPT 270. Solutions will be made available to students registered in CMPT 270 after the due date. There is no educational or pedagogical reason for tutors or experts outside the CMPT 270 instructional team to provide solutions to this question to a student registered in the course. Students who solicit such solutions are committing an act of Academic Misconduct, according to the University of Saskatchewan Policy on Academic Misconduct. The objective of this question is to get familiar with objects, and modelling with object types (classes). You will not write any code for this question, rather you will analyze a hypothetical application to determine what object types and containers are needed, what fields are needed for each object, and what item access is needed for each container. You are to provide: • The object types/classes involved, with the main fields/attributes for each class. • The containers needed, with the type of the items stored in the container, and how the items are accessed from the container, e.g., in order first to last, by index, by field value, by insertion order, etc. You do not need to include how the items are stored (array, linked list, stack, tree, etc). • Any important methods, including accessors and mutators when necessary. Make sure method names are descriptive. For this question, since you are not writing any code, submitted files must be plain text .txt files. If other file types are used, you will receive a grade of zero for this question. In your file, list the name of a class, followed by its attributes (and then its methods). Something like this: Application : Kennel Management System Class Kennel -----------Attributes : name address phone number Container of Pens accessed by penNumber -----------Methods : getPen addPen removePen end of class Kennel etc This is not programming, so you do not need to use precise syntax. Note that it is often the case that an object of class A contains another object of some type B. In this situation, your description of class A will use the name of class B (sometimes a container of them!), and class B will be listed and described separately. Do not mix the descriptions for A and for B. If the purpose of an attribute is not obvious from Page 2 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 CMPT 270 Fall 2021 Developing Object Oriented Systems its name, include a brief English description of it. You may include type information, like String, Int, etc, but this is not absolutely necessary. You are not building the application yet. You are simply designing the kinds of objects your application will need. And this is our first attempt at this. Your objective should be to shift your thinking from “Got to code!” to “Need a plan.” Application 1: An Emergency Room Consider an emergency room ward in a hospital with a fixed number of beds. The application needs to keep track of patients, doctors, and beds. Patients need to be admitted when care begins, and discharged when the crisis is over, and the patient will either go home, or be admitted admitted to some other ward for more long-term care. Each bed could be empty, or there could be a patient assigned to a bed. New patients can only be admitted if there is an empty bed, and a patient can only be assigned to an empty bed. Each patient may have zero or more doctors (initially, when the patient is first admitted, there might not be a doctor assigned to a patient); we need to be able to assign doctors to patients, and find out which doctors have been assigned to each patient. Each doctor might have zero or more patients in the ward; we need a way to assign doctors to patients, and find out which patients have been assigned to each doctor. Doctors will begin their shift, care for some number of patients while on duty, and end their shift after some number of hours. What to Hand In • A text file named a1q1.txt containing your description of classes including attributes and methods, described above. Reminder: Submitted files must be .txt only. If other file types are used, you will receive a grade of zero for this question. Be sure to include your name, NSID, student number and course number at the top of all documents. Page 3 CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Evaluation • 3 marks: Classes. – 3/3 marks: You identified all key classes appropriate to the application. – 2/3 marks: You missed a few key classes, but are on the right track. – 1/3 marks: You did not identify the classes appropriately. – 0/3 marks: You submitted nothing at all. • 3 marks: Attributes. – 3/3 marks: You identified appropriate attributes for your classes. – 2/3 marks: You missed a few important attributes, but are on the right track. – 1/3 marks: Your attributes did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • 3 marks: Methods. – 3/3 marks: You identified appropriate methods for your classes. – 2/3 marks: You missed a few important methods, but are on the right track. – 1/3 marks: Your methods did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • 3 marks: Containers. – 3/3 marks: You identified appropriate containers for your classes. – 2/3 marks: You missed a few important containers, but are on the right track. – 1/3 marks: Your containers did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • Deductions: – -12 marks: you submitted a file, but it was not a text file. Page 4 CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Question 2 (12 points): Purpose: Practicing Object-Oriented Thinking. Degree of Difficulty: Moderate. None of this is hard work, but do not leave it to the last minute. It will take time! Restrictions: This question is homework assigned to students and will be graded. This question shall not be distributed to any person except by the instructors of CMPT 270. Solutions will be made available to students registered in CMPT 270 after the due date. There is no educational or pedagogical reason for tutors or experts outside the CMPT 270 instructional team to provide solutions to this question to a student registered in the course. Students who solicit such solutions are committing an act of Academic Misconduct, according to the University of Saskatchewan Policy on Academic Misconduct. For practice, we will repeat the exercise from the previous question using a different application. The wording of the question is identical, except for the application description. The objective of this question is to get familiar with objects, and modelling with object types (classes). You will not write any code for this question, rather you will analyze a hypothetical application to determine what object types and containers are needed, what fields are needed for each object, and what item access is needed for each container. You are to provide: • The object types/classes involved, with the main fields/attributes for each class. • The containers needed, with the type of the items stored in the container, and how the items are accessed from the container, e.g., in order first to last, by index, by field value, by insertion order, etc. You do not need to include how the items are stored (array, linked list, stack, tree, etc). • Any important methods, including accessors and mutators when necessary. Make sure method names are descriptive. For this question, since you are not writing any code, submitted files must be plain text .txt files. If other file types are used, you will receive a grade of zero for this question. In your file, list the name of a class, followed by its attributes (and then its methods). Something like this: Application : Kennel Management System Class Kennel -----------Attributes : name address phone number Container of Pens accessed by penNumber -----------Methods : getPen addPen removePen end of class Kennel etc This is not programming, so you do not need to use precise syntax. Note that it is often the case that an object of class A contains another object of some type B. In this situation, your description of class A will use the name of class B (sometimes a container of them!), and class B will be listed and described Page 5 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 CMPT 270 Fall 2021 Developing Object Oriented Systems separately. Do not mix the descriptions for A and for B. If the purpose of an attribute is not obvious from its name, include a brief English description of it. You may include type information, like String, Int, etc, but this is not absolutely necessary. You are not building the application yet. You are simply designing the kinds of objects your application will need. And this is our first attempt at this. Your objective should be to shift your thinking from “Got to code!” to “Need a plan.” Application 2: Learning Management System A Learning Management System is an application like BlackBoard, Moodle, or Canvas, which helps instructors organize course material for viewing and interaction by students, mediated through the WWW. There are teachers, teaching assistants, and students who use the system. There are many courses; each course has a number of teachers, teaching assistants, and students. Students may be taking several courses, and teachers may be teaching several courses. Teaching Assistants may be assistants in several courses. Each course organizes learning material in the form of files. Some files, like lecture slides, and assignment descriptions, are to be uploaded by the teacher, and downloaded by teachers, assistants, and students. Other files are to be uploaded to student accounts by students, like assignment submissions. Students also have a grade for each uploaded file; student’s grade can be uploaded by a teaching assistant. What to Hand In • A text file named a1q2.txt containing your description of classes including attributes and methods, described above. Reminder: Submitted files must be .txt only. If other file types are used, you will receive a grade of zero for this question. Be sure to include your name, NSID, student number and course number at the top of all documents. Page 6 CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Fall 2021 Developing Object Oriented Systems Evaluation • 3 marks: Classes. – 3/3 marks: You identified all key classes appropriate to the application. – 2/3 marks: You missed a few key classes, but are on the right track. – 1/3 marks: You did not identify the classes appropriately. – 0/3 marks: You submitted nothing at all. • 3 marks: Attributes. – 3/3 marks: You identified appropriate attributes for your classes. – 2/3 marks: You missed a few important attributes, but are on the right track. – 1/3 marks: Your attributes did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • 3 marks: Methods. – 3/3 marks: You identified appropriate methods for your classes. – 2/3 marks: You missed a few important methods, but are on the right track. – 1/3 marks: Your methods did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • 3 marks: Containers. – 3/3 marks: You identified appropriate containers for your classes. – 2/3 marks: You missed a few important containers, but are on the right track. – 1/3 marks: Your containers did not reflect the application’s purpose. – 0/3 marks: You submitted nothing at all. • Deductions: – -12 marks: you submitted a file, but it was not a text file. Page 7 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 CMPT 270 Fall 2021 Developing Object Oriented Systems Question 3 (13 points): Purpose: Basic Java Numeric Types and Expressions Degree of Difficulty: Easy. Restrictions: This question is homework assigned to students and will be graded. This question shall not be distributed to any person except by the instructors of CMPT 270. Solutions will be made available to students registered in CMPT 270 after the due date. There is no educational or pedagogical reason for tutors or experts outside the CMPT 270 instructional team to provide solutions to this question to a student registered in the course. Students who solicit such solutions are committing an act of Academic Misconduct, according to the University of Saskatchewan Policy on Academic Misconduct. Task Write a Java program (by defining a class, and adding code the the main() method) that calculates a grade in CMPT 270, according to the current grading scheme. As a reminder: • There are 10 Exercises, worth 2% each (total: 20%). • There are 7 Assignments worth 5% each (total: 35%). • There will be a midterm, worth 20%. • There will be a final exam, worth 25%. The purpose of this program is to get started in Java, and so you will write a program that does not make use of any of Java’s advanced features. No lists or arrays, or anything like that. Just variables and values and expressions. Representing the data We’re going to calculate a course grade from fictitious grades earned by a fictitious student. During the course, you can replace the fictitious grades with your own grades, and keep track of your standing! • Declare and initialize 10 variables to represent the 10 exercise grades. Each exercise grade is an integer in the range 0, · · · , 25. All exercises are out of 25. • Declare and initialize a variable to represent the midterm grade, as a percentage, that is, a floating point number in the range 0, · · · , 100, including fractions. • Declare and initialize a variable for the final grade, as a percentage, that is, a floating point number in the range 0, · · · , 100, including fractions. • Declare and initialize 7 integer variables to represent the assignment grades. Each assignment will be worth 5% of the final grade, but may have a different total number of marks. For example, A1 might be out of 44, and A2 might be out of 65. For each assignment, there should be an integer to represent the score, and a second integer to represent the maximum score. You can make up any score and maximum you want, but you should not assume they will all have the same maximum! Calculating a course grade Your program should calculate a course grade using the numeric data encoded in your variables, according to the grading scheme described above. Page 8 CMPT 270 Department of Computer Science 176 Thorvaldson Building 110 Science Place, Saskatoon, SK, S7N 5C9, Canada Telephine: (306) 966-4886, Facimile: (306) 966-4884 Output Fall 2021 Developing Object Oriented Systems Your program should display the following information to the console: • The fictitious student’s name. • The entire record for the student, including: – Exercise grades on a single line. – Assignment grades on a single line; the score and maximum grade should be reported for each assignment. – Midterm grade (percentage) on a single line. – Final exam grade (percentage) on a single line. – The total course grade, as an integer in the range 0-100, on a single line. You can choose to round to the nearest integer, or truncate (round down). For example: Student : Paradox , Zeno Exercises : 21 , 19 , 17 , 18 , 19 , 16 , 17 , 19 , 18 , 18 Assignments : 42/49 , 42/45 , 42/42 , 21/22 , 27/38 , 22/38 , 67/73 Midterm : 87.2 Final : 92.1 Grade : 82 Note: the above display may or may not be correct. Comments A program like this might not deserve a...
 

Option 1

Low Cost Option
Download this past answer in few clicks

9.86 USD

PURCHASE SOLUTION

Already member?


Option 2

Custom new solution created by our subject matter experts

GET A QUOTE