Online Student Advisement System

Project Report


1. Project Description

This project is about creating an online student advisement system. It has been decided that in order to keep things simple and to produce at least one useful end-result we will concentrate on the process known as degree audit. This project will provide students, faculty, advisors and other users with a simple and flexible system that tracks student progress toward a degree or award completion. The basic idea is simple: we take the requirements for a degree (major, minor, core, liberal arts etc.) and match them with the student transcripts (the classes that a student has already passed) in order to output a list of classes that the student still needs to take. The system will be web-based and user id and password (the same as banner) will be required for access. Security and privacy will be topmost priority during and after system design and implementation.

1. Rules and requirements for a degree in one or more programs will be stored in the system.
2. The system will access the transcripts of the student that is requesting advisement by asking for his/her student id and password and accessing the student transcripts, getting and parsing the HTML. In the future direct integration with the Banner database may be implemented.
3. Based on 1 and 2 the system will output a list of classes along with possible electives and different choices that the students needs to complete.
4. The system should have a simple and flexible way of inputting and modifying the program and degree requirements.
5. It should work for both freshman and transfer students.


2. Project Progress

2.1 Preliminary Design
We started by working on a preliminary design for the advisement system. We all met with different people at the college - degree-audit, registrar's, advisors, faculty members, students, IT department etc. to find out what kind of advisement system is necessary. After all these meetings and discussions the project description was created as summarized above. We also did a feasibility study to see what is possible to be done and started planning the different parts of the system. At first we put down all possible users of the system, all entities involved, all possible functions and requirements. As mentioned above we concentrated on degree audit but additional features and extensions can be added at any time. We also outlined the several modules that the system will consist of - Database, Input (user, HTML parsing, data), Calculation Module (or the Processor), Output, Add/Modify Module.


2.2 Output Module
We started our work by focusing on the output. We all researched about what output will be the best for the system and agreed that it would be almost identical to the current student worksheet that advisors already use. Basically outputting the list of classes required for the particular student, identifying the ones that he/she has already taken and presenting the ones yet to be taken. Different choices that a student can make and number of electives will also be outputted. The output will be divided into categories: College Wide, Core, Major, Minor, Electives, General requirements.

2.3 Database Design
The next thing that we did was the database design. First, all of us read the latest catalog very carefully and even met with academic advisors to sort out most of the degree requirements and issues that may arise. From that, we came out with two preliminary database designs that we discussed and combined into an agreed database design. We will see how successful the design will turn out to be as the project progresses. It is good to keep in mind that it is the first effort in this institution to come up with sort of a database version of the college catalog and even this effort alone, if successful is already quite an accomplishment.

2.4 Database Set Up
After we agreed on the database design the actual tables and table fields were created using MySQL and 6 copies of the database were put up on arcib.dowling.edu for every team member to experiment. Also database accounts for the team members were set up and a general purpose account to be used by the application itself.

2.5 Environment Set Up
We decided that most of our code will be Java, Java Servlets and some HTML web pages along with possible JSP pages. We set up Tomcat to be our servlet engine and even though we are still working on getting some things set up and improved with the environment like waiting for the IT people to fix port 8080, we now have a stable development environment. Five separate student advisement system (SAS) applications were set up under Tomcat. Each one of them ha s copy of the MySQL JDBC driver in the WEB-INF/lib directory.

2.6 Web Page
We all started working on a project web page where all project related materials are posted. The web page will grow as the project progresses and there are links to the individual web pages of the team members.


2.7 Design
We met on several occasions and came out with the agreed object oriented design for the project. W listed all classes that we will need and even added more details about the particular classes. We also subdivided tasks and prepared a timeline. We even started writing the first pieces of code - HTML get and parse, Database Connection and Retriever, Administration Login etc.

2.8. Project Plan
The project plan is based on the agreed timeline, which we all will attempt to abide by for the rest of the semester. The Output module should be done by November 5th, the Add/Modify module should be completed, tested and used to input sample data by November 12th, the processor module should be done by November 26th. The rest of the semester will be for testing and improvements. Documentation will be done as the project progresses and completed and published by December 3rd.


3. Individual Tasks

1. Talk with Register
2. Talk with Degree Audit
3. Talk with IT Department and Ron Black
4. Keep in touch with Banner People
5. Prepare Database Design
6. Set Up Database
7. Provide detailed database description and example input queries
8. Contribute to OOD design
9. Described the details about the Administration Module
10. Set up Servlet Environment
11. Contribute to project web page
12. Contribute to timeline preparation
13. Write the code for Database Connection and Retriever
14. Started Writing code for Administration Login