Assessment Brief – Assessment 2
Unit Code/Description |
ICT103 Programming |
---|---|
Course/Subject |
Bachelor of Information Technology |
Semester |
Semester 1, 2024 |
Unit Learning Outcomes Addressed |
ULO 1. Explain the fundamental programming concepts. ULO 2. Apply proper design strategies to develop a software program. ULO 3. Use programs to implement a solution for a small problem using object oriented programming. ULO 4. Create documentation for code that conforms to industry standards. |
Assessment Objective |
To analyse the problem, demonstrate their ability to design and implement a solution for the real-world problem using object-oriented concepts. |
Assessment Title/Type |
Assessment 2 – Mini Project (Group) |
Due Date |
Week 11: Demonstration during class Week 12: Report Submission: Sunday, 02 June 2024, before 11:59 PM. |
Weighting |
40% – 40 marks 15 marks: Demonstration 25 marks: Report submission |
Instructions to Students |
Check the section Assessment Description |
Format/Structure |
Check the section Submission Details |
Word/Page limit |
Maximum 8 pages (including screenshots and references) of MS Word document. |
Referencing Style |
American Psychological Association (APA) Referencing Style |
Submission Guidelines |
Only one member of the group will submit the Group submissions. The individual Reflective Report should be submitted by each student individually. Check section Submission Details for additional details. |
Plagiarism and Academic Integrity |
At CIHE, we take academic integrity seriously and expect all students to maintain the highest standards of honesty and ethical behaviour in their academic work. As a student, it is your responsibility to ensure that all your academic endeavours are conducted with integrity and in accordance with the principles of honesty, fairness, and respect for intellectual property. Please refer to “CIHE Student Academic Integrity and Honesty Policy” in Moodle for details. |
Late Submission Policy |
An assessment item submitted after the assessment due date without an approved extension or mitigating circumstances will be penalised. The standard penalty is the reduction of the mark allocated to the assessment item by 10% of the total mark applicable for the assessment item for each day or part day that the item is late. |
Page 1 of 9
Assessment items submitted more than ten days after the assessment due date is awarded zero marks. |
---|
ASSESSMENT DESCRIPTION
• In the group project, you will work in teams of 3-4 students.
• The assessment is divided into two components: Group report submission and mini-project demonstration. • The details about the report structure are given below.
• The demonstration will include group demonstration of the implemented mini-project and followed by individual Q&A. • The assessment must include object-oriented (OO) concepts like Class and Object, Encapsulation, Constructor, Inheritance, Getter and Setter methods, Method Overloading, and Association (multiple classes). • Failing to use OO concepts will result in marks deduction as per the rubrics.
• The projects should be menu-based.
SUBMISSION DETAILS
• Only ONE student from each group will submit the group report. Every submission should have the following report structure.
• ALL the group members should be present during the project demonstration. Failing to do so, the individual will lose 15 marks.
Report Structure:
The report should include the following sections:
1. Cover Page (provided by your lecturer): includes group member names, student ID and contribution. 2. Introduction: Brief description of the project and your assumptions about the project. 3. Flowchart and Class Diagram: Flow chart for the project logic and Class diagram for the identification
of different classes, attributes and methods and any other OOP concepts implemented. 4. Implementation details: Mention the OOP concepts used. List the classes and methods and a short description of the purpose of the classes and methods.
5. Evaluation: Output screenshots for every menu item. The screenshots should show the system time and date.
6. Testing and Error Handling: Screenshots with incorrect input and the strategies you have applied to handle the errors or incorrect input scenarios. Validation of input can be a part of testing. 7. Contribution and Reflection: The section should include each team member’s contribution to the project development and their reflection on their learning experiences and project outcomes. It should mention individual’s roles, responsibilities, challenges faced, and insights gained throughout the project, emphasizing self-awareness and continuous improvement.
8. If you have implemented a Bonus feature, please mention that explicitly in the report and also emphasize that during the demonstration.
Develop a mini project using Java programming language with Java concepts.
1 |
Project Title |
Library Management System |
---|---|---|
Project Description |
Develop a university Library Management System incorporating account authorisation functionality to ensure secure access control within university’s library system. This system aims to streamline the management of library resources while providing authorised users with functionalities for managing books, borrowers (students, faculty), and borrowing |
Page 2 of 9
activities. The program should allow users to add, delete, update, and search for books, as well as manage borrower records and borrowing transactions. Additionally, it should include account authorisation mechanisms to restrict access to authorised personnel only, enhancing the security of the system. |
||
---|---|---|
Features |
Book record: Add, delete and update book records by t5he authorised users. Search Book Record: Implement a search feature to allow authorised users to search for book records based on specific criteria such as title, author, or genre. Manage Borrowers (Students, Faculty): Allow authorised users to manage borrower records, including adding, deleting, and updating borrower information such as name, ID, and contact details. Borrowing Transactions: Implement functionalities for borrowing and returning books, allowing authorised users to record borrowing transactions, track due dates, and manage overdue books. ** Bonus (1 mark): Fine Management: Fine management system to trace the overdue books and calculate fines for late returns. Account Authorisation: Incorporate account authorisation mechanisms to restrict access to the library system. Users should be required to log in with valid credentials (e.g. username and password) to access the system. Ensure unauthorised users are denied access to sensitive data within the system. ** Bonus (1 mark): Create user roles (e.g., librarian, faculty, student, student assistant) and assign appropriate permissions to each role. Only user with librarian privileges should be able to manage books, borrowers, and borrowing activities. Account Verification: Implement a login system where students must provide credentials (e.g., username and password) before accessing their accounts to borrow/return the books. User Interface: Create a user-friendly console-based interface for interacting with the Library Management System. Implement clear menu options and prompts for various functionalities, guiding users through the system’s operations. Input Validation and Error handling: Implement input validation to ensure the correctness of user-provided data when adding or updating the records. Validate inputs such as book IDs, borrower IDs, and other relevant fields to prevent errors. Include error handling mechanisms to gracefully handle unexpected inputs or errors. Provide informative error messages to guide users in case of input errors or system failures. |
|
2 |
Project Title |
Hotel Management System |
Project Description |
The “Hotel Management System” is a console-based application that automates essential activities and operations of a hotel. It enables hotel staff to sufficiently manage reservations, check-ins, check-outs, and room assignments, while focusing on simplicity and ease of use. |
|
Features |
Check-In/Check-Out: Implement functionalities to allow verified admin staff to check guests in and out of rooms. **Bonus (1 mark): Ensure that the system can handle multiple check-ins and check-outs simultaneously without conflicts. Room Management: Develop features for managing room availability, including marking rooms as occupied or vacant, and updating room statuses in real-time. Admin staff should be able to view and modify room details securely. Reservation System: Create a reservation system where admin staff can make reservations based on guest’s preferences (e.g. room type, dates) to prevent double booking. |
Page 3 of 9
**Bonus (1 mark): Search functionality to enable staff to find available rooms quickly, ensuring efficient booking management. Account Management: Implement account management features to allow verified admin staff to create new admin accounts or delete the accounts for staff who left. Admin staff should be able to specify account details such as username, password and permissions. User Interface: Create a user-friendly console-based interface for interacting with the Hotel Management System. Implement clear menu options and prompts for actions. Account Database: Store account information in memory (using arrays or parallel arrays) for admin staff to check the list of all the existing accounts with username and permissions. Account Verification: Implement a login system where users must provide credentials (e.g., username and password) before accessing their accounts. Exception Handling: Include robust error handling and exception handling mechanisms to ensure the system can gracefully handle unexpected inputs or errors without crashing. |
||
---|---|---|
3 |
Project Title |
Employee Management System |
Project Description |
The “Employee Management System” is a console-based application that aims to streamline the management of employee records within an organisation. It should provide functionalities for adding, deleting, and updating employee records, including their names, IDs, positions, and salaries. The system should also incorporate the techniques to ensure that employee records are accessed by the authorised person only. |
|
Features |
Add Employee Record: implement a feature for authorized users to add new employee records by providing details such as name, ID, position and salary. Delete Employee Record: Develop functionality to enable authorised users to delete existing employee records based on the employee’s ID. Update Record: Provide an option for authorised users to update employee records, allowing modifications to information such as name, position, and salary. Search Employee Record: Implement a search feature to allow authorised users to search for employee records based on specific criteria such as name, ID or position. Account Authorisation: Users should be required o log in with valid credentials (e.g. username and password) to access the system. Ensure unauthorised users are denied access to data within the system. ** Bonus (1 mark): Create user roles (e.g. admin, manager, employee) and assign appropriate permissions to each role. Only users with admin privileges should be able to add, delete, and update employee records. User Interface: Design a user-friendly console-based interface for interacting with the Employee Management System. Display clear menu options and prompts for various functionalities, gliding users through the system’s operations. Input Validation and Error Handling: Implement input validation to ensure correctness of user-provided data when adding or updating employee records. Include error handling mechanisms to gracefully handle unexpected inputs or errors. Provide informative error messages to guide users in case of input errors or system failures. ** Bonus (1 mark): Security Features: Implement additional security measures, such as locking the account after multiple incorrect login attempts. |
|
Page 4 of 9
4 |
Project Title |
Student Management System |
---|---|---|
Project Description |
The “Student Management System” is a console-based application that integrates account authorisation functionality to ensure secure access control within the university’s academic environment. This system is designed to streamline the management of student records and academic information, catering specifically to the needs of university administrators, faculty members and students. The program should provide authorised users with functionalities for managing student records, course enrolments, grades, and academic progress. Additionally, it should incorporate account authorisation mechanisms to restrict access to authorised personnel only, ensuring the confidentiality and integrity of student data. |
|
Features |
Add Student Record: Allow administrators to add new students to the system by providing details such as name, ID, department, contact information. ** Bonus (1 mark): Automatic Student ID generation: Generate a 5-digit unique Student ID for each student. Delete Student Record: Develop functionality to enable authorised users to delete existing student records based on the student’s ID or other criteria. Update Student Records: Enable administrators to update a student’s information such as name, department, and contact details. Search Student: Implement a search feature that allows administrators to find specific students by name or student ID. Manage Course Enrolments: Allow authorised users (faculty members, academic advisors) to manage course enrolments for students, including adding, dropping, and modifying course registrations. Grading System: Implement functionalities for recording and managing students grades, including entering grades for assignments, quizzes, exams, and calculating final course grades. ** Bonus (1 mark): Academic Progress Tracking: Develop features for tracking student academic progress, including monitoring course completion, GPA and academic standing (e.g., good standing, probation). Account Authorisation: Incorporate account authorisation mechanisms to restrict access to the student management system. Users should be required to log in with valid credentials (e.g. username and password) to access the system. Ensure that unauthorised users are denied access to sensitive data within the system. Create user roles (e.g. admin, faculty, student advisor) and assign appropriate permissions to each role. Only users with admin privileges should be able to manage students records and system settings. User Interface: Design user-friendly console-based interface for interface for interacting with the student management system. Display clear menu options and prompts for various functionalities, guiding users through the system’s operations. Input Validation and Error Handling: Implement input validation to ensure the correctness of user-provided data when adding or updating records. Validate input such as student IDs, grades, and other relevant fields to prevent errors. Include error handling mechanisms to gracefully handle unexpected inputs or errors. Provide informative error messages to guide users in case of input errors or system failures. |
Page 5 of 9
Marking Rubric
Report Submission: 25 marks
Criteria |
Excellent |
Good |
Satisfactory |
Marginal |
Unsatisfactory |
---|---|---|---|---|---|
Introduction (3 marks) |
The introduction provides a comprehensive overview of the Java mini project, clearly articulating its objectives, scope, and relevance. The problem statement is precisely defined, setting the stage for the reader to understand the project’s purpose and significance. (3 marks) |
The introduction offers a clear overview of the Java mini project, including its objectives and scope. However, there may be minor inconsistencies or omissions in articulating the problem statement. (2.5 marks) |
The introduction provides a basic overview of the Java mini project, outlining its objectives and scope. The problem statement is defined but may lack clarity or specificity. (2 marks) |
The introduction briefly outlines the Java mini-project’s objectives and scope but lacks sufficient detail. The problem statement is vaguely defined, making it difficult for the reader to grasp the project’s purpose. (1 mark) |
The introduction lacks clarity and coherence, failing to provide a clear overview of the Java mini-project and its objectives. The problem statement is unclear or missing entirely. (0 mark) |
Project Design: Flowchart and Class Diagram (3 marks) |
Presents a detailed, well-designed flowchart and class diagram that accurately represents the project’s logic and functionality. It demonstrates a deep understanding of the system’s architecture and control flow. (3 marks) |
Provides a clear and well-constructed flowchart and class diagram that effectively represents the project’s logic and functionality. It demonstrates a good understanding of the system’s architecture and control flow. (2.5 marks) |
Offers a flowchart and class diagram that adequately represents the project’s logic and functionality. It demonstrates a basic understanding of the system’s architecture and control flow, but clarity of organisation can be improved. (2 marks) |
Presents a basic flowchart and class diagram that outlines the project’s logic and functionality but lacks clarity and detail or may contain some inaccuracies. (1 mark) |
Fails to effectively introduce the project, lacking clarity, conciseness, and relevance. (0 mark) |
Implementation Details + Java code (2 + 6 = 8 marks) |
The implementation details and Java code are well structured, efficient, and adhere to best practices. They demonstrate a deep understanding of object-oriented programming concepts and design patterns, with clear documentation and comments. The implementation effectively implements the required functionalities with no or minimal room for improvement. (8 marks) |
The implementation details and Java code are well written and functional, with minor room for improvement in terms of structure or efficiency. They effectively implement the required functionalities and demonstrate proficiency in object-oriented programming. (6 marks) |
The implementation details and Java code are functional but may lack consistency or clarity in structure. They successfully implement the required functionalities, but with some room for improvement in terms of design or documentation. (4 marks) |
The implementation details and Java code are incomplete, incorrect, or poorly structured. They fail to fully implement the required functionalities and lack adherence to object-oriented programming principles. (2 marks) |
The implementation details and Java code are missing or inadequate, demonstrating a lack of understanding of object-oriented programming concepts and design patterns. (0 mark) |
Page 6 of 9
Testing, Evaluation and Results (screenshots needed) (6 marks) |
The testing, evaluation, and results section presents comprehensive outcomes and insights from the implementation. Screenshots of testing processes and results are provided, demonstrating the thoroughness of the evaluation. (6 marks) |
The testing, evaluation, and results section provides detailed outcomes and insights from the implementation. Screenshots of key testing processes or results may be included, enhancing the clarity of the evaluation. (5 marks) |
The testing, evaluation, and results section outlines basic outcomes and insights from the implementation. Screenshots of testing processes or results may be mentioned but are not provided. (4 marks) |
The testing, evaluation, and results section offers limited insights into the outcomes of the implementation. Screenshots of testing processes or results are not provided. (2 marks) |
The testing, evaluation, and results section lacks clarity and coherence, failing to provide meaningful insights into the outcomes of the implementation. Screenshots of testing processes or results are missing entirely. (0 mark) |
---|---|---|---|---|---|
Documentation and Reflection (of each group member) (2+2=4 marks) |
The documentation is thorough, well organized, and effectively supports the Java mini project. It includes detailed explanations of design choices, implementation details, and testing methodologies. Additionally, the reflection component provides insightful analysis of the project’s successes, challenges, and lessons learned, demonstrating a high level of self awareness and critical thinking. (4 marks) |
The documentation is comprehensive and largely supports the Java mini project but may lack depth or detail in some areas. It includes explanations of design choices, implementation details, and testing methodologies, albeit with some gaps or omissions. The reflection component offers thoughtful analysis of the project experience, but may lack specificity or depth in certain aspects. (3 marks) |
The documentation provides basic support for the Java mini project, covering key aspects such as design choices, implementation details, and testing methodologies. However, it may lack thoroughness or clarity in some areas, leaving room for improvement. The reflection component offers some analysis of the project experience but may be cursory or lack critical insight. (2 marks) |
The documentation is somewhat limited in its support of the Java mini project, with notable gaps or deficiencies in coverage. It may lack clarity or organization, making it difficult to follow or understand certain aspects of the project. The reflection component offers limited analysis of the project experience, with minimal insight or depth. (1 mark) |
The documentation provides minimal support for the Java mini project, with significant gaps or deficiencies in coverage. It may be disorganized or poorly structured, hindering comprehension of key project aspects. The reflection component is superficial or absent, offering little to no analysis of the project experience. (0 mark) |
Language (1 mark) |
The language used in the report is clear, concise, and professional, enhancing the overall readability and coherence of the document. Sentences are well structured, and terminology is accurately used to convey ideas effectively. There are no grammatical |
The language used in the report is mostly clear and professional, contributing to the overall readability of the document. While there may be occasional minor grammatical or spelling errors, they do not detract significantly from the clarity of the content. The writing |
The language used in the report is adequate, though there may be some instances of grammatical or spelling errors that affect readability. Sentences may lack variety or precision, and terminology may be inconsistently applied. Overall, the writing style is |
The language used in the report is inconsistent or unclear, detracting from the overall readability and coherence of the document. There are numerous grammatical or spelling errors that impede comprehension, and sentences may be poorly |
The language used in the report is highly problematic, with pervasive grammatical or spelling errors that hinder comprehension. Sentences are poorly constructed or nonsensical, and the writing style lacks clarity and coherence. The document may be |
Page 7 of 9
or spelling errors, and the writing style demonstrates a high level of proficiency and attention to detail. (1 mark) |
style is generally effective, with sentences that are well-constructed and coherent. (0.75 mark) |
functional but may lack sophistication or refinement. (0.5 mark) |
constructed or awkwardly phrased. The writing style may lack coherence or flow, making it difficult for the reader to follow the content. (0.25 mark) |
virtually unreadable due to the extent of the language issues present. (0 mark) |
|
---|---|---|---|---|---|
Total: 25 marks |
Demonstration: 15 marks
Criteria |
Excellent |
Good |
Satisfactory |
Marginal |
Unsatisfactory |
---|---|---|---|---|---|
Execution of code (5 marks) |
The group flawlessly executes the code, showcasing a deep understanding of the project’s functionalities. The code runs smoothly without errors or glitches, and all features are successfully demonstrated. (5 marks) |
The group executes the code effectively, demonstrating a solid understanding of the project’s functionalities. Minor issues or errors may arise during execution, but they are quickly identified and resolved collaboratively. (4 marks) |
The group executes the code adequately, demonstrating a basic understanding of the project’s functionalities. Some errors or glitches may occur during execution, but they are manageable and do not significantly impact the demonstration. (3 marks) |
The group encounters noticeable issues or errors while executing the code, indicating gaps in understanding or preparation. However, they make an effort to address these issues and continue with the demonstration as a team. (1.5 marks) |
The group struggles to execute the code effectively, encountering significant errors or glitches that disrupt the demonstration. They may require assistance to resolve these issues or may be unable to complete the demonstration as a team. (0 mark) |
Explanation of Project Functionality (5 marks) |
The group provides a comprehensive and articulate explanation of the project’s functionalities, demonstrating a deep understanding of the underlying concepts and implementation details. They effectively communicate how each feature works and how it contributes to the overall project, with each member contributing to the explanation. (5 marks) |
The group offers a clear and concise explanation of the project’s functionalities, highlighting key features and their significance. While some aspects may be briefly glossed over, the overall explanation is informative and coherent, with contributions from each member. (4 marks) |
The group provides a basic explanation of the project’s functionalities, covering essential features but lacking depth or detail. Some concepts may be unclear or vaguely explained, requiring further clarification from the team. (3 marks) |
The group struggles to explain the project’s functionalities clearly, resulting in a fragmented or disjointed explanation. They may provide incomplete or inaccurate information, indicating gaps in understanding among team members. (1.5 marks) |
The group fails to effectively explain the project’s functionalities, demonstrating a lack of understanding or preparation. Their explanation is unclear or confusing, leaving the audience with little insight into the project, with minimal contribution from team members. (0 mark) |
Individual Questions and Answer (5 marks) |
Each team member responds confidently and |
Each team member responds confidently and |
Each team member responds adequately to |
Each team member’s responses to questions are limited |
Each team member struggles to respond effectively to |
Page 8 of 9
accurately to questions posed by the audience, demonstrating a comprehensive understanding of the Java code and its implementation. They provide insightful explanations and address all queries effectively, showcasing their individual contributions to the project. (5 marks) |
accurately to questions posed by the audience, demonstrating a comprehensive understanding of the Java code and its implementation. They provide insightful explanations and address all queries effectively, showcasing their individual contributions to the project. (4 marks) |
questions, demonstrating a basic understanding of the Java code. They may struggle with more complex queries or provide somewhat incomplete answers, requiring additional clarification from the team. (3 marks) |
or unclear, indicating gaps in understanding or preparation. They may provide incorrect or irrelevant answers, requiring significant assistance or clarification from the audience, with minimal contribution from team members. (1.5 marks) |
questions, demonstrating a lack of understanding or preparation. Their answers are often incorrect or nonsensical, indicating a fundamental misunderstanding of the Java code, with minimal contribution from team members. (0 mark) |
|
---|---|---|---|---|---|
Total: 15 marks |
==*==*==*==*==*== End of Assessment ==*==*==*==*==*==
Page 9 of 9
I checked out your website and have a few questions. Is this the correct way to get in touch?
I recently checked out your website and have a few inquiries. Is this the right way to reach you?
I recently went through your website and have a couple of questions. Is this the best contact method?
I just saw your website and have some inquiries. Is this the correct way to reach you?
I recently saw your website and had a couple of questions. Is this the best way to reach you?
I just visited your website and had a couple of questions. Is this the best way to contact you?
I checked out your site and have some questions. Is this the best way to contact you?
I recently took a look at your website and have a few questions. Is this the best way to contact you?
I just went through your site and have a couple of questions. Is this the best way to reach you?
I recently explored your website and have a few questions. Is this the best way to reach you?
Dear Sir/Maam,
http://www.assignmentnepal.com
Your business deserves a website that’s just as impressive. Struggling with lagging conversion or poor engagement? Using the latest technology to generate additional revenue and beat your opponents.
My team and I specialize in crafting websites that not just look good but perform even better.
Wanna take that leap from ‘just another website’ to a revenue machine?
I would be happy to send you “Proposal” Past work Details, “Our Packages”!
Warm regards,
Jay Paul (Web Solution Manager)
If you don’t want me to contact you again about this, reply with “Opt-Out”
Hey assignmentnepal.com,
While exploring your website, I devised an innovative plan to revamp it with cutting-edge technology, aiming to increase revenue and gain a competitive edge.
I am a skilled web developer able to tackle nearly any challenge you present, offering services at prices accessible to most.
I am pleased to provide you with “Quotes,” “Proposals,” details of past work, “Our Packages,” and “Offers”!
Thanks in advance,
Sam Morris (Business Development Executive)
Was just browsing the site and was impressed the layout. Nicely design and great user experience. Just had to drop a message, have a great day! 8dfds87a
Hey,
As I can see you have a newly launched website (assignmentnepal.com)!
“Want to get your website SEO setup/ Search engine friendly, all for a one-time setup cost”
If interested, just hit “Reply”.
Regards,
Amit Sharma | Sr Business Developer
Webpageoptimized.com
WhatsApp – +1 213 262 0124
This web site is really a walk-through for all of the info you wanted about this and didn’t know who to ask. Glimpse here, and you’ll definitely discover it.