ITS 70104 Principal of Programming
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
FINAL EXAMINATION
AUGUST 2022 SEMESTER (BLOCK 2)
Principal of Programming
ITS 70104
Assessment Criteria
Assessment Task |
Weightage |
MLO Assessed |
Formative/ Summative |
Assessment Instrument |
Topics |
Week |
MCQ2.0 |
Section A |
15% |
MLO 2 |
Summative |
Individual Assessment |
1-7 |
8 |
C1, C2, C3 |
Section B |
25% |
MLO 2: Design and generate solution to problem using knowledge of the Scientific,
Numeric and Visualization concepts.
C1 = Knowledge & Understanding; C2 = Cognitive Skills; C3A = Practical Skills; C3B = Interpersonal Skills; C3C = Communication Skills; C3D = Digital Skills; C3E = Numeracy Skills; C3F = Leadership, Autonomy & Responsibility; C4A = Personal Skills; C4B = Entrepreneurial Skills; C5 = Ethics & Professionalism.
PROJECT SCENARIO
You have been hired as a Python programmer by Taylor’s University. Your first project is to develop a library management system that can improve the book borrowing and management process. There are two types of membership; staff and student. Books can be borrowed by staff and student. Staff may borrow a maximum of 10 books at any one time, while student can borrow a maximum of 5 books. Staff can borrow book for a maximum duration of 90 days, while student can borrow book for a maximum duration of 30 days. Book can be renewed if it not overdue or reserved by someone. Librarian can access the program to check user borrowing record and display popular book. Overdue book will be charged at a rate of RM1 for each day and can only be returned by librarian.
Section A: Answering Questions (15%)
Based on the scenario given, provide your answer for below questions.
1. Develop the process flowchart for the above scenario. (5 marks)
2. Design the objects, its attributes and required methods for the given system. You need to provide justification for your design. (5 marks)
3. Describe where and how you can use polymorphism to simplify and make your code work more efficiently. You need to justify your answer. (2 marks)
4. Suggest two new features that are unique and important in this system. Elaborate these features in detail. (3 marks)
Section B: Python Programming (25%)
Develop appropriate console program according to the project scenario. This program must be able to perform below task.
1. The program can be login by librarian and member (student and staff).
2. Common functionality for both types of user are;
a. Search and view for book by author, title, and category
b. View book status (available, borrowed, and reserved)
c. View book synopsis
3. Functionality specific for librarian are;
a. Manage member’s details.
b. Manage book inventory.
c. View total for each book status.
d. View popular book based on number of time it has been borrowed.
e. Search and view member borrowing status and late charges
f. Return overdue book and collect overdue charges.
g. View member borrowing history
h. View total overdue charges received
4. Functionality specific for member are;
a. View personal detail.
b. View personal book status, remaining days to due for borrowed books, and how many more book(s) can still borrow.
i. Perform borrow, if book status is available.
ii. Perform return or renew, if borrowed by the user and not due.
iii. Reserve book, if borrowed by others.
5. Logout system to allow another user to login.
6. Exit system will close the program.
You must submit your source code with appropriate comment as a PDF document via
MyTiMES.
Submission Requirements
a) Font type: Times New Roman
b) Font size: 12
c) Line spacing: 1.5
d) Alignment: Justify Text
e) Document type: MS Word or PDF
f) Number of pages: 6 — 12 pages (do not exceed the page limit)
g) Your full report should consist of the following:
a. Cover page (Name, ID, Score)
b. Marking Rubric (attach as second page in the report)
c. Report of your answer script.
h) Start each chapter on a separate page.
i) All figures and tables are labelled properly.
j) File naming conventions: StudentName_FE.pdf
Notes:
. Student is not allowed to transcribe directly (cut and paste) any material from another
source into their submission.
. Include in-text citation to support your answers and add the list of references at the
end of your report (APA format). The list of references is to be alphabetized by the first author's last name, or (if no author is listed) the organization or title.
. The Turnitin similarity for this module is 20% overall and lesser than 1% from a
single source excluding program source code.
Rubric for Section A (Total 20%)
Criteria |
Excellent (4-5) |
Good (3) |
Average (2) |
Poor (0-1) |
Your Score |
Answer provided |
Comprehensive and complete in all aspect |
Good and cover most aspect |
Average and cover some aspect |
Poor and incomplete |
|
Marking Rubric for Section B
Criteria |
Excellent (8 - 10) |
Good (6 - 7) |
Average (4-5) |
Poor (0-3) |
Your Score |
User Interface |
Very appealing and user- friendly |
Moderate appealing and user-friendly |
Average appealing and user-friendly |
Not appealing nor user- friendly |
|
Logical |
Very logical and rational flow |
Logical and rational flow |
Average logical and rational flow |
Poor logic and rational flow |
|
Usability |
Run smoothly and bug free |
Less smoothly and some bugs |
Lagging and same bug |
Lagging and very buggy |
|
Source code |
Very logical and well organized |
Moderate logical |
Average logical |
Not logical |
|
Overall |
Comprehensive description and complete in all aspect |
Good description and cover most aspect |
Average description and cover some aspect |
Poor description and incomplete |
|
NOTE: Total marks will be adjusted to a maximum of 25% allocated for this section.
2023-02-03