Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Concrete Classes in the Degree Hierarchy The concrete classes ( CS , SEng, and BCG ) must provide the following public methods. In some cases

Concrete Classes in the Degree Hierarchy
The concrete classes (CS, SEng, and BCG) must provide the following public methods. In some cases these methods should be overridden methods of the abstract parent classes.
String getDegreeTitle()
void setDegreeTitle(String title)
void setRequiredCourses(ArrayList listOfRequiredCourseCodes)
ArrayList getRequiredCourses()
boolean meetsRequirements(PlanOfStudy thePlan)
double numberOfCreditsRemaining(PlanOfStudy thePlan)
ArrayList remainingRequiredCourses(PlanOfStudy thePlan)
You may use static final class variables to model the different requirements for each degree. Those class variables should also be placed at the appropriate level of abstraction in the Degree hierarchy.
PlanOfStudy
The PlanOfStudy class should use the FileReader and FileWriter classes from java.io for reading and writing. The PlanOfStudy class must provide the following public methods:
void setDegreeProgram(Degree deg)
Degree getDegreeProgram()
void importData(String filename)
void saveState()
void addCourse(String courseCode, String semester)
void removeCourse(String courseCode, String semester)
void setCourseStatus(String courseCode, String semester, String courseStatus)
void setCourseGrade(String courseCode, String semester, String grade)
Course getCourse(String courseCode, String semester)
Course
The Course class must provide a copy constructor that returns a deep copy of the supplied parameter.
public Course(Course copy)
The Course class must provide the following public methods:
String getCourseCode()
void setCourseCode(String courseCode)
String getCourseTitle()
void setCourseTitle(String courseTitle)
double getCourseCredit()
void setCourseCredit(double credit)
ArrayList getPrerequisites()
void setPrerequisites (ArrayList preReqList)
void setCourseStatus(String courseStatus)
String getCourseStatus()
void setCourseGrade(String grade)
String getCourseGrade()
void setSemesterTaken(String semester)
String getSemesterTaken()
Course Catalog
The CourseCatalog class must provide the following public methods:
void initializeCatalog(String filename)
void addCourse(Course toAdd)
void removeCourse(Course toRemove)
void saveCatalog()
Course findCourse(String courseCode)
Student
The Student class must provide the following public methods:
String getFullName()
void setFirstName(String first)
void setLastName(String last)
String getFirstName()
String getLastName()
void setStudentNumber(Integer studentNum)
Integer getStudentNumber()
Details about the data file
There are three different data files that are used to bootstrap this planning system. There will not be intentional errors in these data files.
Course List
The course list data file is loaded by the Bootstrap program. A single line of this data file consists of:
CourseCode, CreditWeight, CourseName,PrerequisiteList
The prerequisite list will be a colon-delimited list of prerequisite courses. For example, the listing for CIS*2430 and CIS*2750 would look like this:
CS*2430,0.5,OO Programming,CS*2500
CS*2750,0.75,Software Systems Development and Integration,CS*2520:CS*2430
Required Courses
The required courses file should only be loaded by the Bootstrap program once the course list has been loaded. Each line on this file will represent the required courses for a single degree. The first element of the line will be the degree name. The remaining elements will be required courses. For example, the line for the BCG would look like this:
BCG, CS*1500,CS*1910,CS*2430,CS*2500,CS*2520,CS*2750,CS*2910,CS*3530
Student Transcript
The student transcript is loaded by the Planner program. It represents the courses that a student has taken the first time the planner program is run. Each line of the file gives information about a single course. The lines contain the following information
CourseCode,Status,Grade,Semester
CS*1500,Complete,84,F17
CS*2500,Complete,80,W18
CS*1910,Complete,81,W18
CS*2430,InProgress,,F18
Saving State
The application must save the current state of the Plan of Study and the Course and Degree information. You may choose to use multiple save files or a single file to accomplish saving.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Data And Databases

Authors: Jeff Mapua

1st Edition

1978502257, 978-1978502253

More Books

Students also viewed these Databases questions

Question

Refer to Exercise 6.47. Determine P(A0B).

Answered: 1 week ago