Python

110 views 6:57 am 0 Comments September 10, 2023

1. The Python code for answering the questions can be either submitted as one single jupyter notebook or multiple jupyter notebooks.

2. Prepare a short report/note on explaining your assumptions/your design choices/functionality, etc. to understand your code in a better manner. It is also a good practice to use comments extensively in your cod to be easy for other people to understand.  

Python Programming Question:

As part of this question, you will need to develop a program using object-oriented features of Python language for the following program specification. Program Specification Let’s imagine a hypothetical situation that our college has now planned to introduce a new Diploma programme for Data Science with the following four courses:

1. Python Programming Course

2. Data Mining and Machine Learning Course

3. Visual Analytics Course

4. Text Analytics Course

Imagine that you are hired as a lead developer to develop a system for managing the Diploma Programme for Data Science. You are asked to develop the system (a program) in the Python language by duly incorporating object-oriented programming features so that the system will be easy to maintain, debug and also to extend the functionality later on if necessary.

The following are the key requirements of diploma programme for Data Science.

a) In order to ensure the quality of the students graduating from this programme, the course management has introduced 5 mandatory assignments in each course. The mandatory assignments from each course are graded as either Pass or Fail. A student has to pass at least 3 out of 5 mandatory assignments for that course to pass a  course.

b) In order to pass the whole diploma programme in Data Science successfully, a student needs to pass all the courses individually, by meeting up the requirements of passing 3 out of 5 mandatory assignments, in each course of the diploma programme.

c) Additionally, a student can also get a diploma certificate with distinction, if the student passes at least 17 mandatory assignments (out of a total of 20 assignments) from all the courses. Please note that this design choice chosen by course coordinators will make sure that a student, who wants a distinction, will have to pass all the 5 mandatory assignments from at least one single course (and 4 out of 5 assignments for the remaining 3 courses) to qualify for the distinction. Finally, if some of the requirements are not clear from the above requirements specification, please make suitable assumptions and describe/specify your assumptions about the functionality in the report. ÂÂ

Your Program ÂÂ

You MUST develop a program using Python language that will satisfy the functionality specified above. Based on your understanding and interpretation, there are many ways to develop such a program to satisfy above requirement specification. Therefore, please use your creativity to come up with a suitable design, that is which class will contain which functionality, which methods and so on. Please also keep your main focus to use various good programming techniques and practices that you have learnt in this course. For example, you should use proper exception handling with appropriate error messages at suitable places where you can expect exceptions and errors in your programme. The final output of your implementation should be a bunch of Python classes with some example code for testing the use cases/ scenarios such as ÂÂ

1. Adding/deleting a new course

2. Creating and adding students to a course,

3. Grading of the mandatory assignments i.e., a pass/fail for a student etc. 4. To get an overview at the diploma programme/course level to see how many students passed the programme and similarly

5. Test code to show the lists of students:

a) who passed with distinction,

b) passed and

c) failed. ÂÂ

Program should have the following classes with the functionality/methods (but not limited to) as outlined briefly: ÂÂ

DiplomaProgramme

– add course

– remove course

– list students who passed

– list students who passed with distinction ÂÂ

Course

– add student

– remove student

– pass a student’s mandatory assignment

– fail a student’s mandatory assignment ÂÂ

Student

– student information such as name, unique ID – abc123

– information of signed up courses

– information mandatory assignments passed/fail

– print method to print student’s infoÂÂ

If possible add/modify it suitably to handle the given specification

Tags: , , , , , , , , , ,

Leave a Reply

Your email address will not be published. Required fields are marked *