Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due
|
Module |
Details |
|
Module Code |
CFS2104 |
|
Module Title |
Introduction to Object oriented Programming |
|
Course Title |
MEng / BSc (Hons) Software Engineering
MComp / BSc (Hons) Computing
MSci / BSc (Hons) Computer Science
BSc (Hons) Computer Science with Games Programming
BSc (Hons) Computer Science with Cyber Security
BSc (Hons) Computer Science with the Internet of Things
BSc (Hons) Computer Science with Artificial Intelligence
BEng (Hons) Computer Systems Engineering
|
|
Assessment |
Weighting, Type and Contact Details |
|
Title |
Portfolio report + Development of a Service Based Application |
|
Weighting |
30% (report) + 70% (artifact developed) = 100% Coursework.
Remind that Coursework weight 60% of the total.
|
|
Mode of working for assessment task
|
Individual
Note: If the assessment task is to be completed on an individual basis there should be no collusion or collaboration whilst working on and subsequently submitting this assignment.
|
|
Module Leader |
Clay Palmeira ([email protected]) |
|
Module Tutor |
Yang Liu ([email protected]) |
|
Submission |
Submission and Feedback Details |
|
Hand-out date |
14/04/2025 (Week 9) |
|
How to submit your work. |
Brightspace submission point |
|
Submission date/s |
Friday 16/05/2025 by 11:59 a.m. (UK TIME) If you have any technical issues submitting your work, please contact the Module Leader as soon as possible. |
|
Submission |
Submission and Feedback Details |
|
Expected amount of independent time you should allocate to complete this assessment
|
30 hours (3hours x 10 days) |
|
Submission type and format |
• Portfolio report in PDF in the provided template, and
• A single .zip file containing the Java source code
|
|
Date by which your grade and feedback will be returned
|
Friday 06/06/2025
Note: This is a maximum of three working weeks after the submission deadline.
|
|
Additional Guidance Information |
Details |
|
Your responsibility |
It is your responsibility to read and understand the University regulations regarding conduct in assessment.
Please pay special attention to the assessment regulations (section 10) on Academic Misconduct.
In brief: ensure that you;
1. DO NOT use the work of another student - this includes students from previous years and other institutions, as well as currentstudents on the module. 2. DO NOT make your work available or leave insecure, for other students to view or use. 3. Any examples provided by the module tutor should beappropriately referenced, as should examples from external sources. Further guidance can be found in the SCEN Academic Skills Resource and UoH Academic Integrity Resource module in Brightspace. |
|
School Guidance and Support |
If you experience difficulties with this assessment or with time management, please speak to the module tutor/s, your Personal
Academic Tutor, or the Student Progress Mentors. Student Progress Mentor – useful links.
Booking an appointment - http://hud.ac/rgl |
|
Guidance on using AI |
Level 1 – Not Permitted
The use of generative AI tools is not permitted in any part of this assessment. |
|
Requesting a Late Submission |
It is expected that you complete your assessments by the published deadlines. However, it is recognised that there can be unexpected circumstances which may affect you being able to do so. In such circumstances, you may submit a request for an extension.
Extension applications must be submitted before the published assessment deadline has passed.
You are now permitted to apply for one self-certified extension per assessment (note that not all assessments are eligible for extensions, including in class tests and exams). You will apply through MyHud as per the usual way and will be requested to provide a reason for your extension request from a drop-down menu.
Evidence is no longer essential for requests to be approved, but you have the option to attach supporting information should you wish to do so. You must submit an extension request BEFORE your assessment deadline. Once you have submitted your request, you will be informed by the system of your new submission date. All extension deadlines will provide you with 5 additional working daysfrom the original deadline to submit your work. If you can’t meet this deadline once granted, you cannot then apply for another extension request for that assessment. In this case, you will need toapply for Extenuating Circumstances (EC). Accepted grounds for an extension
If you are unable to submit work within the maximum late submission period of 10 days, contact the School’s Guidance Team. ([email protected]), as you may need to submit a claim for Extenuating Circumstances (ECs). |
|
Extenuating Circumstances (ECs)
|
An EC claim is appropriate in exceptional circumstances, when an extension is not sufficient due to the nature of the request. You can access details on the procedure for claiming ECs, on the Registry website; Consideration of Personal Circumstances - University of Huddersfield, where you can also access the EC Claim Form.
You will need to submit independent, verifiable evidence for your claim to be considered. Once your EC claim has been reviewed you will get an EC outcome email from Registry. An approved EC will extend the submission date to the next assessment period (e.g July resit period). |
|
Late Submission
(No ECs approved)
|
Not allowed. |
|
Tutor Referral available
|
NO |
|
Resources |
• Please note: you can access free Office365 software, and you have 1 Tb of free storage space available on Microsoft’s OneDrive – Guidance on downloading Office 365. |
Assignment 2: Portfolio report with web applications
1. Assignment Aims
- To develop fundamental Object-Oriented programming skills and create programmatical solutions to problems.
- Understand and implement the following concepts: Inheritance and polymorphism, file I/O operations, string manipulation and formatting, advanced interface design and input validation and error handling.
2. Learning Outcomes
3. Assessment Brief
As this is the final piece of assessed work for the module, it should be of the highest standard to date.
You are required to submit a Java project that contains all the files and classes that make up your program in a single zip file (including any required libraries needed to run theproject), along with a document containing a description and screenshots that show everything working. The document should enable your marker to see how the programme behaves in a variety of test cases, with both expected and unexpected inputs.
The document should contain no more than 500 words that explain how the programme works. Comments within the code should follow the guidelines given in the module and do not contribute to the word count.
You are required to submit two items, a zip file containing the code and a PDF document.
The assessment includes the standard of the source code (layout, indentation, identifiers, comments, etc.) as well as functionality. Code should follow the usual Java conventions, OO principles and good practice; the project will also be marked on how well the solution has been designed.
4. Problem statement
a. Track vehicles (cars, motorcycles, EVs, VIPs) across 5 parking levels.b. Calculate fees:
i. Cars: £2.00/hour (min 1 hour)ii. Motorcycles: £1.00/hour (30-min increments)iii. EVs: £1.50/hour + 10% green discountiv. VIPs: Free parking
c. Save transaction logs to parking_logs.txt.d. Generate daily reports with occupancy statistics.
5. Tasks:
|
Marks |
Task |
Technical Expectations |
|
40% |
Base Vehicle class with license plate validation (UK format: AB12 CDE). |
Regex, encapsulation. |
|
50% |
Polymorphic fee calculation using ChronoUnit. |
Method overriding, NumberFormat. |
|
60% |
File I/O: Append tickets to parking_logs.txt on exit. |
BufferedWriter, try-with-resources. |
|
70%
|
Occupancy tracker with per-level capacity alerts. |
HashMap<Integer, Integer>. |
|
80% |
EV subclass with battery tracking anddiscount logic. |
Inheritance, @Override. |
|
90% |
Sort vehicles by duration (descending) + license plate (ascending). |
Comparator, lambdas. |
1. Custom Interface:
2. Interface Inheritance:
6. Code examples:
1. Inheritance and Polymorphism:
2. File I/O Operations:
3. Interface Implementation:
7. Testing Requirements:
• JUnit Test Example:
8. Submission Format
- Screenshots of program output.
- Test case results.
- Reflection on OOP principles used.
9. Marking Scheme:
|
Grade |
UK Class |
Criteria |
|
0-39% |
Referral |
No submission; no evidence or test; submitted with poor quality |
|
40-49% |
3rd |
Working Vehicle class with basic fee calculation. |
|
50-59% |
2:2 |
Polymorphism implemented. |
|
60-69% |
2:1 |
File I/O implemented |
|
70-89% |
1st |
Full inheritance hierarchy + sorting. |
|
90-95% |
Custom interfaces with default methods. |
|
|
100% |
Advanced interface patterns (inheritance, lambdas). |
b. Report (30%)
|
Grade |
UK Class |
Criteria |
|
0-39% |
Referral |
No submission; no evidence or test; submitted with poor quality |
|
40-49% |
3rd |
Minimal description; 1-2 test cases; no reflection |
|
50-59% |
2:2 |
Clear structure; screenshots; basic OOP discussion |
|
60-69% |
2:1 |
Minor errors; screenshots; elaborated OOP discussion |
|
70-89% |
1st |
Detailed testing (5+ cases); critique of design choices |
|
90-100% |
Professional layout; JUnit evidence; exemplary reflection |