Assessment Details and Submission Guidelines | |
Unit Code | MN404 – T2 2018 |
Unit Title | Fundamentals of Operating Systems and Java Programming |
Assessment Type | Group of 3 students, written |
Assessment Title | Assignment 2: To write an algorithm/ flowchart, and implement the algorithm using Java programming language for given specifications/ requirements. |
Purpose of the assessment (with ULO Mapping) | This assignment assesses the following Unit Learning Outcomes; students should be able to demonstrate their achievements in them:
c. Apply principles of abstraction and problem solving in an object-oriented programming language d. Apply knowledge of programming constructs in developing computer programs e. Create programs based on incremental development processes of designing, coding, testing and debugging. |
Weight | 20% of the total assessments |
Total Marks | 85 |
Due Date | Week 10 laboratory class – To present the algorithm.
Week 11 laboratory class – Demonstration of the assignment. Submission of final copy of the assignment. |
Submission Guidelines | · All work must be submitted on Moodle by the due date along with a title Page.
· The assignment must be in MS Word format, 1.5 spacing, 11-pt Calibri (Body) font and 2.54 cm margins on all four sides of your page with appropriate section headings. · Reference sources must be cited in the text of the report, and listed appropriately at the end in a reference list using IEEE referencing style. |
Extension | · If an extension of time to submit work is required, a Special Consideration Application must be submitted directly through AMS. You must submit this application within three working days of the assessment due date. Further information is available at:
http://www.mit.edu.au/about–mit/institute–publications/policies–procedures–and–guidelines/specialconsiderationdeferment |
Academic Misconduct
|
· Academic Misconduct is a serious offence. Depending on the seriousness of the case, penalties can vary from a written warning or zero marks to exclusion from the course or rescinding the degree. Students should make themselves familiar with the full policy and procedure available at: http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure. For further information, please refer to the Academic Integrity Section in your Unit Description. |
Academic Integrity:
For assignments, students are encouraged to consult each other, the lecturer, tutor or anyone else for that matter. However, the assistance offered or accepted should not go beyond a discussion of the problem and a sketch of a solution. But in your assignment, do not use any written material from the discussion/website/book. If you can reconstruct the discussion and complete the solution on your own, then you have learned the material (and that is the objective of this course!).
Assignment 2 Specification
Assignment description: Write a detailed algorithm and a Java program “TradeBot” to
simulate online buying and selling of books. The following activities of the TradeBot are to be implemented:
- To have a central TradeBot account for all financial transactions and display the balance of the TradeBot account when requested.
- Procedures to be incorporated as part of purchase:
- To create a database of books with title, author name, price and number of copies.
- To display the available books with cost and number of copies for the customer.
- To implement the following functionalities of a shopping cart:
- Add an item to the cart
- Remove an item from the cart
- View the items in the cart before purchasing
- Empty the cart
- Exit the cart with or without purchasing
- Calculate the amount(cost) for the books in the cart
- Verify if the amount in the shoppers account is enough to buy the books in the cart
- The following activities are to be incorporated as part of selling books by the TradeBot:
- Registration of the sellers’ details
- Provision for getting the username and password interactively and storing them with an identification number (ID).
- Authentication of the users when they log in
- Add books to central database when a registered user sells the books and credit the amount to the seller’s account
The program must perform the following:
- Open TradeBot account using a variable called “balance” (may use private and static type).
(2 marks)
- Initially create a database of 20 books with title, author of the book, price and number of copies. (Hint: may use different arrays to store the details with book id as array index).
(2 * 3 = 6 marks)
- Allow the shopper to view the available books with price and volumes, add and remove items to the shopping cart and accordingly update the number of copies in the database.
(3+2+2+3 = 10 marks)
- Options for the shopper to exit from the program anytime. (1 mark)
- Running calculator that keeps adding the cost of the book as soon as it is added to the cart
(3 marks)
- Caution the shopper if the cart cost is more than the shoppers balance in her/her account.
(2 marks)
- Clear the cart once the payment is done or if the shopper exits/quits. (1 marks)
- Option to register a shopper to sell books for the first time. (2 marks)
- Interactively set the username and password of the registered user. (4 marks)
- Authenticate the shoppers whenever they login as sellers. (4 marks)
- Add and display books that were recently sold by a shopper with the total amount that would be debited from the TradeBot account. (2 marks)
- Display the TradeBot account balance upon request. (1 mark)
- Display the balance of the shopper before and after trading. (2 marks)
Submission Guidelines:
Your assignment should be completed according to the General Guidelines for Presentation of academic work. Your submission should contain the following:
- The assignment Word file that will be submitted shall include:
- Algorithm/flow chart
- Complete Java program without syntax errors.
- Must include appropriate and sufficient comments in the source code.
- Screen shots of initial compilation results with syntax errors.
- Trouble shooting the syntax errors
- The word file name must have your student ID as part of the file name.
- Documentation should follow the standard submission guidelines as below:
- Front page – indicating your Group members’ names and student IDs, teaching staff (Lecturer’s and tutor’s name), a statement of what has been completed and acknowledgement of the names of all assisted you.
- List of references used (IEEE style) – Reference sources must be cited in the text of the report, and listed appropriately at the end in a reference list. Only IEEE referencing style is acceptable for this assignment.
- The assignment must be submitted using Moodle, one submission for your group. The page numbers of the assignment must be clear on each page. The report document must be checked for similarity through Moodle/Turnitin while submitting it. Please refer to the study skills unit staff if you need further assistance. Please note that only one member per group should submit the report.
- The group members will have to present the algorithm in Week 10 during the lab hours and demonstrate in Week 11. All the group members will have to demonstrate. If any member of the group fails to demonstrate, he/she will lose the demonstration marks.
Marking criteria:
Sections to be included in the report | Description of the sections | Marks |
Algorithm
Program |
All the minute details have to be addressed in the algorithm
Presentation of the algorithm in week 10 Error free, well commented Java program for the algorithm without any discrepancy between the program and the algorithm |
15
10 40 |
Following points must be considered:
Include appropriate import statements Include a comment at the beginning of your program with basic information and a description of the program Your code should be properly indented Give meaningful names to variables and classes in your code. Correct use of programming structures Your program compiles successfully without any errors Your program is interactive and gives correct output. Your program should follow all the rules mentioned above. Sufficient test cases considering all the requirements have to be provided with valid and invalid inputs. |
||
Demonstration and Viva | Tutor will see the outputs and also assess your understanding of work done for this assignment in the laboratory class. This will be done during Week-11 laboratory class.
Please Note: In case the student remains absent during week 10 and 11 for presentation, demonstration and viva without prior permission for special consideration through AMS , he /she may lose Demo and Viva marks. |
20 |
Total | 85 |
TASKS/ Grades | Excellent | Very Good | Good | Satisfactory | Unsatisfactory |
Algorithm and Program
/55 |
Optimal Algorithm devised (logic used) taking into considerations all possible end conditions as defined.
Flawless Code implemented for the devised algorithm without and gap between the algorithm and the program.
|
Relevant Algorithm devised (logic used) taking into considerations all possible end conditions.
Flawless Code implemented
|
Generally relevant Algorithm devised (logic used) taking into considerations most of the end conditions.
Flawless Code implemented. |
Some relevance in the algorithm and few conditions are considered. | The logic used is not relevant. |
Demonstration and Viva
/20 |
Demonstrate very well with excellent Logic, clarity and easy to follow with strong arguments and sound technical knowledge. Excellent ability to critically analyse the queries and alter the code accordingly. | Demonstrate well with sound Logic and clarity. Has ability to critically analyse the queries with good technical knowledge.
Troubleshoots easily. |
Demonstrate with good Logic. Has ability to analyse the queries technically.
Attempts to troubleshoot. |
Demonstrates the work with less technical knowledge.
Poor in troubleshooting.
|
Argument is confused and disjointed |
Algorithm Presentation
/10 |
Excellent presentation with clarity, made appropriate eye contact with audience and engaged them. confidently answered all the questions.
|
Sound
presentation with clarity, made eye contact with audience and engaged them fairly. Answered most of the questions. |
Good presentation with relative clarity, made eye contact with audience and engaged audience some times.
Answered some of the questions |
Fair presentation with less clarity, Poor audience engagement.
Had difficulty answering the questions. |
Spoke unclearly, seldom made eye contact with audience. Could not answer the questions. |