Loading data........
Tin nhanh :
Xem Tivi Online

Tổng hợp các kênh giải trí (Đang cập nhật chức năng..)

New Update

Truyền hình SCTV






Vietnam Channels







VTC Online







VTC Online







Truyền hình tp HCM







Radio Channels







Home » » RMIT Assignment 2011 - Java SE 5.0

RMIT Assignment 2011 - Java SE 5.0

You are required to implement a basic Java program using Java SE 5.0 and above. This assignment is designed to: 1. Practise your knowledge of design classes in Java; 2. Practise the implementation of various kinds of classes in Java; 3. Practise the use of polymorphism; 4. Practise error handling in Java. This is an individual assignment and worth 20% towards your final grade. Academic Integrity The submitted assignment must be your own work. No marks will be awarded for any parts which are not created by you. 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 even if you have very similar ideas. Plagiarism-detection tools will be used for all submissions. Penalties may be applied in cases of plagiarism. General Implementation Details • All input data should be read from the standard input and all output data should be printed to the standard output. No need to use files at all. • If the input is formatted incorrectly the execution should stop immediately and an appropriate error message should be displayed. • Although you are not required to use more than one class per task, you are required to modularise classes properly. In general no method should be longer than 50 lines. • Your coding style should be consistent with (http://java.sun.com/docs/codeconv/CodeConventions.pdf) • You should include comments to explain your code following the recommended style http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html • Your programs will be marked on yallara with Java SE 5.0. Make sure you test your programs on yallara before you make the submission. Task: Simple Student Record System The scenario is extended from that of Assignment 1. The basic requirement is to implement a simple Java system to maintain the student records of a training center. Student Every student has a unique student ID as “S123”. His/her name such as “Ralph Derby”, and year of birth, such as 1987, are recorded. To receive the training certificate students are required to complete a certain number of courses. For normal students these courses are Java Programming, Object-Oriented Design and Software Testing. To receive the advanced certificate they have to complete three additional courses: J2EE, Software Architecture and Design Patterns after completing the three basic courses. It is possible that some of the students may have one or two courses exempted because of their experience. For example an experienced Java programmer may only need Software Testing to obtain the training certificate as the other two courses are exempted. The exemption is processed and assigned by your system. Students who are above 50 years old are eligible for 30% discount on their tuition fee. Course This training center only runs the aforementioned six courses. The tuition fee for each course is $500 at the moment. Admin staff can update the tuition fee of each individual course at any time. For every single course enrolment, the training center needs to pay 30% of the tuition fee as government tax. This rate is always the same for all courses, but it is subject to change. Each course may run multiple times and the fee may be different for each run. You can assume no course runs more than 5 times a year. It is possible that a course only runs once or twice a year. Admin staff is responsible for starting a new run of these courses. Your system is only required to handle this information for this year 2011 and next year 2012. A student can register for any course at his/her level if he/she has not taken this course or failed that course before (below 50). Normal students can not take advanced courses before completing the three basic courses. Repeating student needs to pay for that course again at the current tuition fee. Each run of a course requires one instructor. There may be a prescribed textbook for that run. Staff This training center has a manager and several admin staff. Some of these staff members are qualified to teach, meaning to be an instructor for any offered courses. Staff may have different level of salary, assuming they do not change. That for the manager John Bobson is 90000 a year, for Mark Leigh is 50k a year, 60k for Avis Gerardi and 70k for Katy Kirkbride. Both John and Katy can teach. Additionally this center also employs casual staff as instructors who must be able to teach any courses. Casual staff uses hourly rate which varies based on the teaching experience. That is $60 per hour for Nelson Cesare, $50 for Linda Fripp and $30 for Jessie Pinnix. Instructing each course requires 20 hours per run from the instructor. This amount does not change at all. A current student may be employed as an instructor as well. However this student must complete that course with a mark no less than 80. Otherwise he/she will not be assigned to the task. Students exempted from a course are not eligible for teaching that course. The pay rate is $400 for each run of a course. Implement the above scenario using OO-design. The suggested menu is: a) Student Admin b) Course Admin c) Staff Admin d) Exit The first option “Student Admin” would be responsible for at least the following: - list all enrolled student - add a new student - enrol a student into a available course - assign exemptions to a student - process payment from one student (E.g Henry Wines who owes $300, is now paying $240) - generate a financial report (total amount of tuition fees, tax and unpaid fees) The second option “Course Admin” would be responsible for at least the following: - create a new run of course - assign an instructor for that course - assign a textbook for that course - adjust tuition fee for that course - generate results for all students enrolled in that course (you may use a random number generator to automatically give scores in between 0 – 100) - disable a course for enrolment (course completed) The third option “Staff Admin” would be responsible for at least the following: - employ new causal staff ( assume admin staff are all permanent ) - add a student into the instructor list - list all instructors You are expected to use Exceptions to handle potential errors. You may need to define your exception for situations like, enrolling a student into a course he/she has done or has been exempted; enrolling into an unavailable or ineligible course; assigning a student instructor to a course which he/she has not studied before or did not learn very well. For testing and marking purposes, you are required to hardcode some data in your system, including the staff members and causal instructors mentioned in the above specification. The system should start with the following student info and course info. ID Name Year Birth Java OO Design Software Testing J2EE Software Architecture Design Patterns Fee Paid S110 Ralph Derby 1987 90 75 Exp 85 Run 1 - $900 S123 June Forster 1974 Exp Exp 60 Run 1 - Run 2 $1500 S134 Susie Karl 1960 85 90 70 Exp 40 - $400 S220 Phillip Gregg 1958 - Run 2 Run 2 - - - $800 S240 Henry Wine 1984 40 60 90 - - - $1200 In the above table, “Exp” means that course is exempted, “-” means the student is not currently enrolled in that course, the numbers are marks achieved in their previous studies. Run Java OO Design Software Testing J2EE Software Architecture Design Patterns 1 Katy Susie Nelson Linda Jessie Nelson 2 Ralph Susie Katy John - Katy 3 Susie - Henry - - - 4 - - - - - - The above table shows the instructors for each run of the six courses. A symbol “-” means no such run at the moment. General Requirements • You must submit your design of the objects with a brief discussion of such as design. • You programs should validate user inputs. Your programs should not crash or display unexpected data upon invalid input. • All programs should compile and run on Yallara. • Marks will be deducted if you do not follow good coding styles in comments, consistent indentations, etc (See http://java.sun.com/docs/codeconv/CodeConventions.pdf). Submission Assignment submission should be made via Weblearn by Sunday 11:59PM May 8 th , 2011. You can submit your assignment as many times as you want before the due date. Each submission will overwrite any previous submissions. 1. You need to submit a class diagram (in pdf, gif or jpeg format). 2. You are required to submit weekly to Weblearn. Your progress will be taken into consideration in the marking. More details will be available later. 3. There will also be a demo for this assignment. You would be asked to demonstrate the work in progress and/or explain your design. The details of the demo would be announced on the Blackboard. 4. For the coding part, you must include only the source files in your submission (do not submit any *.class files!) (Your submission must be one zip file, not rar file and not zipx files – wrong submission format will be penalized) 5. Late submissions will incur a penalty of 10% per day. Submissions made 5 days after the due date will receive no marks. Any further inquiries regarding this assignment should be raised in appropriate discussion forum in BlackBoard.
Like và chia sẻ với bạn bè :

0 nhận xét:

Speak up your mind

Tell us what you're thinking... !

Proudly powered by Blogger
Copyright © 2009-. The Color Of Life - All Rights Reserved