Question
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:
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. To pass a course, a student has to pass at least 3 out of 5 mandatory assignments for that 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
Context to the tutor: Just write the relevant code in your answer
Step by Step Solution
3.46 Rating (146 Votes )
There are 3 Steps involved in it
Step: 1
class Assignment def initself name selfname name selfgrade None def assigngradeself grade selfgrade grade class Course def initself name selfname name selfassignments selfstudents def addassignmentsel...Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started