Python final assignment
Python final assignment
1) Academic admin
Login – Admin should be able to login using username and password. Only three
attempts are allowed otherwise the user will be terminated from the apps.
Assign new lecturer and test/exam unit personnel with username and password
Add lecturer profile (Name, address, contact number etc)
Modify/update/edit lecturer profile (dob, address, email address, age, citizenship, ID,
contact number etc)
Add subjects and topics. (Minimum 3 subjects with 3 topics needed)
Delete existing lecturer and test/exam unit personnel
2) Registered lecturer
Login - Lecturer should be able to login using username and password. Only three
attempts are allowed.
Change username and password
Add new questions and answers based on the subject and topic.
Modify/update/edit questions and answers
View questions and answers based on subject and topic.
Doctor
Login
Search patient by ID / passport number
View patients’ visit and medication history
View previous drugs prescription
Add new medical result (blood pressure, sickness, drug prescription, temperature,
additional information etc)
Add and view new medical certification (MC)
Pharmacy / dispensary
Pharmacist login – Key in username and password only. Three attempts are allowed.
Register new drug categories (general drug, vaccine, poisonous, psychotropic, others)
Register drug information (date, quantity, supplier name, cost per unit, total cost,
expiry dates)
Update / edit / modify drugs information, cost price & selling price, default minimum,
maximum and reorder level upon receiving from suppliers
Delete drugs no longer being supplied
Expires warning
View stock balance based on drug categories
View reports for drug which fall into reorder level
Cashier
Cashier login – Key in username and password only. Three attempts are allowed.
Add comprehensive data entry and cash collection
Accept cash, cheque, credit card, debit card and payment mode from patient
On demand receipt printing
End of the day cash collection
IMPORTANT INSTRUCTIONS:
This is a group assignment. Upon submission of your assignment, you are required to present
your assignment at a date and time specified by your module lecturer.
Each team member is required to contribute towards some features in the system &
documentation, present and explain his or her work accordingly. Each team member should be
able to answer questions during presentation with regards to the overall systems project or
specific question(s) related to the codes used in the development.
2.0 Requirements
i. You are required to carry out research relevant to the existing program similar to your
program going to be developed and document any logical assumptions in terms of
functionalities can be embedded to your program.
ii. Your program should use constants where appropriate. Validations need to be included to
ensure the accuracy of the program. State any assumptions that you make under each
function.
iii. You are required to store all data in text files. There is no limit on the number of text files
that can be used but they should be kept minimum.
iv. You are expected to use list and functions in your program. Your program must embrace
modular programming technique and should be menu driven. Your program also should
provide a termination function.
v. You may include any extra features which you may feel relevant and that add value to the
system.
vi. There should be no need for graphics in your program, as what is being assessed, is your
programming skill not the interface design. The marking scheme for the assignment has
been provided so that you clearly know how the assessment for this assignment would be
done.
vii. You should include the good programming practice such as comments, variable naming
conventions and indentation.
ix. You are required to use Python programming language to implement the solution. Use of
any other language like C/C++/Java is not allowed.
3.0 Deliverables
You are required to submit a softcopy of:
Credit (65%-74%)
This grade will be assigned to work which is considered to be a good standard and meets most of
the requirements stated in the question. The program runs smoothly when executed. There is
clear evidence and application of Python concepts up to at least intermediate level. The program
solution is unique with good coding styles and validation. The program implemented maps well
against the design (pseudocode and flowchart) as seen in the documentation. The design of the
solution varies in styles and has unique logic with minor errors / omissions. The documentation
does not have any missing components. Sample inputs/outputs documented with some
explanation. Student must be able to provide good explanation of the codes and work done,
answer most questions posed with mostly accurate / logical answers / explanation.
The overall a good assignment submitted.
Pass (50%-64%)
This grade will be assigned to work which meets at least half of the basic requirements
(approximately 50%) stated in the questions. The program runs smoothly when executed. There
is clear evidence and application of Python concepts at basic level. The program solution is
common with basic coding styles and validation. The program implemented somewhat maps
with the design (pseudocode and flowchart) as seen in the documentation. The design of the
solution is average in terms of logic and style with some errors / omissions. The documentation
has some missing components. Sample inputs/outputs documented but without any explanation.
Student must be able to explain some codes and work done and able to answer some questions
posed with some accurate / logical answers / explanation. The overall an average piece of work
submitted.