The project is to implement an on-line admissions, registration and graduation clearance system for (graduate) students in the Computer Science department. The current system (using Banner) allows students to apply online but the process by which the faculty reviews the applications is a paper process. Additionally, the registration hold removal and graduation clearance process is also a pure paper process. In this project you will design a system that will automate the workflow process in the admissions, registration and graduation system for our students, with the scope of this project limited to Masters degree students.
Let’s first review the current process. A graduate student applies to CS-GWU (actually, the process is the same for any department or school) using an online system linked to banner. The student fills out a form online and pays the application fee. After filling out the form, various pieces of information – GRE scores, recommendation letters, transcripts, financial statements – get attached to the application. Once all the information has been received (i.e., the application is “complete”) the application is reviewed by the CS faculty – specifically an admissions committee reviews the application. This process takes place each semester – i.e., fall and spring. Students applying for admission are denoted Graduate Applicants. Applicants can check on the status of their application by visiting a specific URL and search for their status using a student number. (Note that to protect privacy we should not use their social security number but rather a system generated unique number that is emailed to them once they apply – if you cannot implement this, then you may choose to use the student number.) More information on the data entered in the application is detailed later in this document.
The admissions decisions are made by a committee of faculty. Any member of the
committee may review any application and it is the job of the chair of the
admissions committee (henceforth referred to as CAC) to make sure that
each application is reviewed by at least one reviewer. It is important that
reviewers be able to write comments on the application; these are, of course,
not to be seen by the applicant. It is also important for the CAC (in a meeting
with the whole committee) to perform overall rankings. Each reviewer provides a
score (between 1 and 4 – where 4 is the highest) and there are various
summaries that can be useful such as applicants ranked by average score (if
there is more than one reviewer). More information on the review process and
the data to be displayed is detailed later in this document. (The final step in
the admission process is the entry into banner by the admissions staff person
–Luis Acevedo in the CS department at GWU.)
Once a student is admitted their application status must indicate this. An
admitted student may matriculate (i.e., join the department) – in this case the
student is added to the list of current graduate students and are classified as
a Graduate Student. Once they join the department, the database must keep track
of their registration and grades – i.e., what courses they have taken, the
grades, etc. (i.e., their transcript). The student can access the registration
system to register for courses, and they will be required to fill out a Form 1
(their course plan which should meet degree requirements). The final job of the
database is the verification of graduation requirements! Currently, a student
applies for graduation and the “audit” is done by the staff person. You have to
design applications that automate this process – in other words, the student
fills out a form online (by going to a URL) for graduation and the database
application must perform an “audit” based on (1) their transcript and (2) the
degree requirements. Once a student has been cleared for graduation, the staff
person clears the record and they graduate and therefore must be added to an
alumni database.
Based on the above discussion, we will partition the overall process into two (seemingly independent) applications:
Online Application and Admissions process
The graduate admissions committee reviews applications and makes a decision -- Admit, Admit with Aid, or Reject.
(B) Online Registration and Graduation Process.
The end goal of this project is to design a system that performs the above tasks (i.e., the database and the applications):
Details of the two key applications and on the type of data (and the forms used for review) will be provided in the project details page and an overview if provided below. Note that you have to visit the department website and check on the graduate program requirements to figure out more details for graduation process.
I have tried to break down the details according to the process, types of users, and the typical queries (in addition to the queries required to implement the workflow process).
Summary
of the Workflow Process:
The Graduate Student database applications process goes all the way from application being received in the department to the student’s graduation clearance.
Here is an outline of the process:
Details of each application workflow are described in the project details page. .
Administration and Project
Assignment:
The project will be done in three phases. The objectives of the project are to expose the student to building 'real' applications while working in teams and to expose the student to project integration wherein they will be exposed to integrating two systems to implement the final deliverable.
Grading: Each phase will have specified deadlines, and will have constitute a portion of the overall project grade. To pass
the project requirement, you must have a working project that meets the
specifications provided (in the project details document) and you must demo
your project. You can earn 80% of the project grade by meeting the minimum
requirements specified; you can earn more than 100% of the project grade if you
implement a large number of extra features. Failure to meet minimum
specifications will result in zero points on your project scores. In Phase 3,
each team member is assigned specific responsibility – if a particular
component is not working then the team member assigned that responsibility will
be held responsible. There are no extensions allowed on this project.