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 typeTimes New Roman

b)  Font size: 12

c)  Line spacing: 1.5

d)  AlignmentJustify Text

e)  Document typeMS Word or PDF

f)   Number of pages6 — 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.