Student Information Management System

Design Document

Spring Quarter, 2001

April 16, 2001 SIMS Team:

Diahann Witter, Team Leader

Document author: Altaf Ahmad, Programmer

Altaf Ahmad Richard Connelly, Programmer

Richard Connelly Amy Rathay, Programmer

Amy Rathay

Diahann Witter

Project Sponsor:

English Language Center at Rochester Institute of Technology

Contents

Proposed System Description

High-Level Architecture Design

Design Specification – Class Diagrams

User Interface

The Proposed Student Information Management System

Physical System

The proposed physical system will be the same as the current system.

Logical System

The proposed logical system will keep the information centralized on a single machine while allowing users to access that information from their own workstations. There will be an optimized database on the server and an improved user interface on each client machine.

Functional Specifications

The system will allow multiple users to view English Language Center data from their own PC through an intuitive user interface. Selected users will also be able to add and update information in the system.

The system will be used to keep information the following types of information:

· Students

· Instructors

· Classes

· Test scores

· Grades

· Recommendations

· Billing

· Course registration

· Quarterly information

The system will also generate printable reports for use by ELC staff.

· Class List

· Class Counts

· Maximum test scores by quarter and level

· Final grade report

· Bar Graphs indicating attendance by quarter, year, full or part time status

· Tracking report of a potential student’s first inquiry to actual registration, inclusive of any information required.

The system must also implement a secure log in system with the following categories of user access level:

1) Admin – can perform administration duties like assigning new log-ins

2) Data Entry – can enter data into the database

3) View – can only view reports

Data Dictionary

Table: CLASS

Properties

Date Created: 8/28/00 9:47:29 AM Def. Updatable: True

Description: ELC courses Last Updated: 3/23/01 10:17:42 AM

OrderByOn: False RecordCount: 70

Columns

Name Type Size

ClassID Text 3

Descrip Text 50

Hours Number (Integer) 2

ChrgAmt Currency 8

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: ClassID, Ascending

Table: GRADE

Properties

Date Created: 8/28/00 10:01:08 AM Def. Updatable: True

Description: Grades for courses Last Updated: 3/23/01 9:49:19 AM

OrderByOn: False RecordCount: 5

Columns

Name Type Size

Grade Text 1

QualityPts Number (Long) 4

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: Grade, Ascending

Table: INSTRUCTOR

Properties

Date Created: 8/28/00 9:48:11 AM Def. Updatable: True

Description: All teaching instructors. Last Updated: 3/23/01 9:24:37 AM

OrderByOn: False RecordCount: 10

Columns

Name Type Size

InstructNum Number (Long) 4

InstructorName Text 50

FirstName Text 50

Table Indexes

Name Number of Fields

InstructNum 1

Fields: InstructNum, Ascending

PrimaryKey 1

Fields: InstructNum, Ascending

Table: LEVEL

Properties

Date Created: 8/31/00 9:21:23 AM Def. Updatable: True

Description: Possible student levels Last Updated: 3/22/01 4:32:02 PM

OrderByOn: False RecordCount: 10

Columns

Name Type Size

LevelAbbreviation Text 5

FullText Text 50

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: LevelAbbreviation, Ascending

Table: MOP

Properties

Date Created: 3/22/01 5:20:03 PM Def. Updatable: True

Last Updated: 3/23/01 9:25:23 AM OrderByOn: False

RecordCount: 6

Columns

Name Type Size

MOP Text 2

Descrip Text 20

MOPNum Number (Long) 4

Table Indexes

Name Number of Fields

MOPNum 1

Fields: MOPNum, Ascending

PrimaryKey 1

Fields: MOP, Ascending

Table: PAYMENT

Properties

Date Created: 3/22/01 5:19:14 PM Def. Updatable: True

Last Updated: 3/23/01 10:17:22 AM OrderByOn: False

RecordCount: 2

Columns

Name Type Size

PayNum Number (Long) 4

PayDate Date/Time 8

PayAmt Currency 8

MOP Text 50

StudentNum Number (Long) 4

Table Indexes

Name Number of Fields

MOPPayment 1

Fields: MOP, Ascending

PayNum 1

Fields: PayNum, Ascending

PrimaryKey 1

Fields: PayNum, Ascending

StudentNum 1

Fields: StudentNum, Ascending

STUDENTPayment 1

Fields: StudentNum, Ascending

Table: QUARTER

Properties

Date Created: 8/28/00 9:58:10 AM Def. Updatable: True

Description: RIT quarter & code Last Updated: 3/23/01 10:37:01 AM

OrderByOn: False RecordCount: 13

Columns

Name Type Size

QtrCode Text 5

FullText Text 30

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: QtrCode, Ascending

QtrCode 1

Fields: QtrCode, Ascending

Table: QUARTERLY_COURSE_INFO

Properties

Date Created: 8/28/00 9:51:39 AM Def. Updatable: True

Description: Courses and their instructors Last Updated: 3/23/01 10:36:33 AM

OrderByOn: False RecordCount: 3

Columns

Name Type Size

QCINum Number (Long) 4

QtrCode Text 3

ClassID Text 3

Section Text 2

InstructNum Number (Long) 4

Table Indexes

Name Number of Fields

InstructNum 1

Fields: InstructNum, Ascending

INSTRUCTORQUARTERLY_COURSE_I 1

Fields: InstructNum, Ascending

ItemNum 1

Fields: ClassID, Ascending

PrimaryKey 1

Fields: QCINum, Ascending

QCINum 1

Fields: QCINum, Ascending

QtrCode 1

Fields: QtrCode, Ascending

Table: QUARTERLY_STUDENT_INFO

Properties

Date Created: 8/28/00 9:44:53 AM Def. Updatable: True

Description: Student's rec., advisor, level, RIT Last Updated: 3/23/01 10:36:28 AM

dept by quarter

OrderByOn: False RecordCount: 9

Columns

Name Type Size

QSINum Number (Long) 4

StudentNum Number (Long) 4

QtrCode Text 3

Department Text 4

Advisor Text 50

Level Text 5

Recommendation Text 1

Comments Text 255

FurtherStudy Text 175

Table Indexes

Name Number of Fields

LEVELQUARTERLY_STUDENT_INFO 1

Fields: Level, Ascending

PrimaryKey 1

Fields: QSINum, Ascending

QtrCode 1

Fields: QtrCode, Ascending

RECOMMENDATIONQUARTERLY_STU 1

Fields: Recommendation, Ascending

StudentNum 1

Fields: StudentNum, Ascending

STUDENTQUARTERLY_STUDENT_INF 1

Fields: StudentNum, Ascending

Table: RECOMMENDATION

Properties

Date Created: 8/28/00 10:56:09 AM Def. Updatable: True

Description: Possible recommendations Last Updated: 3/22/01 4:31:48 PM

OrderByOn: False RecordCount: 6

Columns

Name Type Size

RecCode Text 1

Sentence Text 225

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: RecCode, Ascending

RecCode 1

Fields: RecCode, Ascending

Table: REGISTRATION

Properties

Date Created: 8/28/00 9:54:30 AM Def. Updatable: True

Description: Students and their courses by Last Updated: 3/23/01 10:36:26 AM

quarter

OrderByOn: True RecordCount: 7

Columns

Name Type Size

RegNum Number (Long) 4

StudentNum Number (Long) 4

RegDate Date/Time 8

QtrCode Text 3

ClassID Text 3

Section Text 2

MidtermHomework Text 2

MidtermTest Text 2

MidtermAttendance Text 2

MidtermParticipation Text 2

MidtermGrade Text 2

FinalGrade Text 1

Table Indexes

Name Number of Fields

ClassID 1

Fields: ClassID, Ascending

CLASSREGISTRATION 1

Fields: ClassID, Ascending

GRADEREGISTRATION 1

Fields: FinalGrade, Ascending

PrimaryKey 1

Fields: RegNum, Ascending

QtrCode 1

Fields: QtrCode, Ascending

STUDENTREGISTRATION 1

Fields: StudentNum, Ascending

Table: STUDENT

Properties

Date Created: 8/28/00 9:35:51 AM Def. Updatable: True

Description: Student personal information Last Updated: 3/23/01 9:32:52 AM

OrderByOn: False RecordCount: 79

Columns

Name Type Size

StudentNum Number (Long) 4

StudentID Text 11

FirstName Text 20

LastName Text 20

Country Text 15

NativeLanguage Text 15

LocalAddr Text 40

LocalCity Text 10

LocalState Text 2

LocalZip Text 5

LocalPhone Text 12

HomeAddr1 Text 50

HomeAddr2 Text 50

HomeAddr3 Text 25

HomePhone Text 15

Email Text 25

Picture OLE Object -

BirthDate Date/Time 8

Sex Text 1

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: StudentNum, Ascending

StudentID 1

Fields: StudentID, Ascending

StudentNum 1

Fields: StudentNum, Ascending

Table: TEST_SCORE

Properties

Date Created: 8/28/00 9:39:21 AM Def. Updatable: True

Description: Students test scores by quarter Last Updated: 3/23/01 9:44:32 AM

(pre & post)

OrderByOn: False RecordCount: 33

Columns

Name Type Size

TestNum Number (Long) 4

StudentNum Number (Long) 4

QtrCode Text 3

PreOrPost Text 4

Michigan Number (Long) 4

Ilyin Number (Long) 4

Writing Number (Single) 4

LA Number (Long) 4

Table Indexes

Name Number of Fields

PrimaryKey 1

Fields: TestNum, Ascending

QtrCode 1

Fields: QtrCode, Ascending

StudentNum 1

Fields: StudentNum, Ascending

STUDENTTEST_SCORE 1

Fields: StudentNum, Ascending

TextNum 1

Fields: TestNum, Ascending

File Structure

Clients

Two files: executable user interface and active X .dll for user interface business logic

Server

The Access database will reside on the server with an active X .dll that the client side .dll will access the database through.

Non-functional Requirements

Because there is data still being used in the current database, the existing data will have to be imported into the new database when the system is completed.

System Evolution

Although it’s not possible to anticipate all the possible changes and problems that will effect the system in the future, there are a few foreseeable improvements that can be made.

The billing included in the proposed system is simplified because of time constraints. The proposed system will provide the ELC with what they need to track billing in the system. However, it’s foreseeable that billing methods may change or become more complex in the future. Therefore billing is an area that may need remodeled or added to later on.

ELC administrators and employees may find that they would like additional reports or graphs available to them. Once the groundwork is laid for providing the reports proposed for the system, it will be simple to add addition reports or graphs that are requested. On a similar note, the proposed system will track the number of students who register with the ELC, but never sign up for instruction. It may become necessary in the future to track students in other ways as well. The complexity of adding the new tracking methods will vary according to each method.

This proposed system does not include a web interface. The world is becoming very web oriented and it’s highly likely that there will be need for a web interface in the future. Because of the design of the proposed system, a web interface can be added later. The proposed system is designed in such a way that the user interface is separate from all the business logic and data processing parts of the program and can easily be replaced. Therefore the only foreseeable difficulty in adding web capabilities is that additional hardware and software configuration will be required for the web server.


The Student Information Management System uses the Component-based Scalable Logical Architecture to modularize the information allowing easy maintenance and a high degree of scalability. A set of clients are connected to a server that provides a gateway to the information stored in a Database that contains information about students, the classes they are taking, test scores, etc.

The SIMSManager provides a User Interface that allows an ELC employee to request data about a particular student. That request is sent to the appropriate object in the SIMSObjects component, and the object’s state is serialized by a Buffer and sent across the network. Another Buffer in the SIMSServer component de-serializes the object’s state and updates the appropriate object’s Persist object by querying the ELC Database. Once the data is populated in the object’s Persist object, the SIMSServer Buffer serializes the data and sends it back over to the SIMSObjects Buffer. That Buffer de-serializes the data and populates the appropriate object, which is then sent back to the SIMSManager and displayed to the user.

The user may request a report to be generated that requires information about many different objects, so a collection is used to hold all the information of a particular object. For example, an ELC employee may request a report that includes a list of all students enrolled in a particular class. The request is sent through as above, however instead of being displayed to the user at the end, for each record returned from the database a student object gets added to the Students collection. That collection, in turn, is used to generate the report.

Design Specification – Class Diagrams

The user interacts with student object almost exclusively. All other objects are valued and measured by their relationship with the student object.

The class object can be updated and utilized without reference to a student or students, but it is only significant to the user when the class object is related to the student(s) through the Registrations.

All tables (and objects) are updateable. Some tables are static with most actions. However, the most often cases are described here.


The User Interface


The Student Information Management System (SIMS) will be implemented in a Multiple Document Interface (MDI) style. The picture below is illustrative of the type of content screen

that the users will see. There will be added enhancements on the welcome screen.

The start-up screen of the SIMS will display a logon form for signing into the system. Upon authorization, a form showing the high-level system functions will be shown.

All of the functions in the GUI will be available through a set of menu items on the main menu bar of the application.


Most of the functions in the SIMS application will be available through a series of child forms.


Users will be able to look up individual student records by going through a prompt for the ID number. The record will be displayed in a pop-up child form with the information categorized according to topic in a tabbed-panel fashion.