| 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
|