The Proposed Student Information Management System

advertisement
Student Information Management System
Design Document
Spring Quarter, 2001
April 16, 2001
Document author:
Altaf Ahmad
Richard Connelly
Amy Rathay
Diahann Witter
SIMS Team:
Diahann Witter, Team Leader
Altaf Ahmad, Programmer
Richard Connelly, Programmer
Amy Rathay, Programmer
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:
Description:
OrderByOn:
8/28/00 9:47:29 AM
ELC courses
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 10:17:42 AM
70
Columns
Name
ClassID
Descrip
Hours
ChrgAmt
Type
Text
Text
Number (Integer)
Currency
Size
3
50
2
8
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
1
ClassID, Ascending
Table: GRADE
Properties
Date Created:
Description:
OrderByOn:
8/28/00 10:01:08 AM
Grades for courses
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 9:49:19 AM
5
Columns
Name
Type
Size
Grade
QualityPts
Text
Number (Long)
1
4
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
1
Grade, Ascending
Table: INSTRUCTOR
Properties
Date Created:
Description:
OrderByOn:
8/28/00 9:48:11 AM
All teaching instructors.
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 9:24:37 AM
10
Columns
Name
Type
InstructNum
InstructorName
FirstName
Number (Long)
Text
Text
Table Indexes
Name
InstructNum
Fields:
PrimaryKey
Fields:
Table: LEVEL
Number of Fields
1
InstructNum, Ascending
1
InstructNum, Ascending
Size
4
50
50
Properties
Date Created:
Description:
OrderByOn:
8/31/00 9:21:23 AM
Possible student levels
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/22/01 4:32:02 PM
10
Columns
Name
Type
LevelAbbreviation
FullText
Text
Text
Size
5
50
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
1
LevelAbbreviation, Ascending
Table: MOP
Properties
Date Created:
Last Updated:
RecordCount:
3/22/01 5:20:03 PM
3/23/01 9:25:23 AM
6
Def. Updatable:
OrderByOn:
True
False
Columns
Name
Type
MOP
Descrip
MOPNum
Text
Text
Number (Long)
Size
2
20
4
Table Indexes
Name
Number of Fields
MOPNum
Fields:
PrimaryKey
Fields:
1
MOPNum, Ascending
1
MOP, Ascending
Table: PAYMENT
Properties
Date Created:
Last Updated:
RecordCount:
3/22/01 5:19:14 PM
3/23/01 10:17:22 AM
2
Def. Updatable:
OrderByOn:
True
False
Columns
Name
Type
PayNum
PayDate
PayAmt
MOP
StudentNum
Number (Long)
Date/Time
Currency
Text
Number (Long)
Table Indexes
Name
MOPPayment
Fields:
PayNum
Fields:
PrimaryKey
Fields:
StudentNum
Fields:
STUDENTPayment
Fields:
Number of Fields
1
MOP, Ascending
1
PayNum, Ascending
1
PayNum, Ascending
1
StudentNum, Ascending
1
StudentNum, Ascending
Size
4
8
8
50
4
Table: QUARTER
Properties
Date Created:
Description:
OrderByOn:
8/28/00 9:58:10 AM
RIT quarter & code
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 10:37:01 AM
13
Name
Type
Size
QtrCode
FullText
Text
Text
Columns
5
30
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
QtrCode
Fields:
1
QtrCode, Ascending
1
QtrCode, Ascending
Table: QUARTERLY_COURSE_INFO
Properties
Date Created:
Description:
OrderByOn:
Columns
8/28/00 9:51:39 AM
Courses and their instructors
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 10:36:33 AM
3
Name
Type
QCINum
QtrCode
ClassID
Section
InstructNum
Number (Long)
Text
Text
Text
Number (Long)
Size
4
3
3
2
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:
Description:
OrderByOn:
8/28/00 9:44:53 AM
Student's rec., advisor, level, RIT
dept by quarter
False
Def. Updatable:
Last Updated:
True
3/23/01 10:36:28 AM
RecordCount:
9
Columns
Name
Type
QSINum
StudentNum
Number (Long)
Number (Long)
Size
4
4
QtrCode
Department
Advisor
Level
Recommendation
Comments
FurtherStudy
Text
Text
Text
Text
Text
Text
Text
3
4
50
5
1
255
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:
Description:
OrderByOn:
8/28/00 10:56:09 AM
Possible recommendations
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/22/01 4:31:48 PM
6
Columns
Name
Type
RecCode
Sentence
Text
Text
Size
1
225
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
RecCode
Fields:
1
RecCode, Ascending
1
RecCode, Ascending
Table: REGISTRATION
Properties
Date Created:
Description:
OrderByOn:
8/28/00 9:54:30 AM
Students and their courses by
quarter
True
Def. Updatable:
Last Updated:
True
3/23/01 10:36:26 AM
RecordCount:
7
Columns
Name
Type
RegNum
StudentNum
RegDate
QtrCode
ClassID
Section
MidtermHomework
MidtermTest
MidtermAttendance
MidtermParticipation
MidtermGrade
FinalGrade
Number (Long)
Number (Long)
Date/Time
Text
Text
Text
Text
Text
Text
Text
Text
Text
Table Indexes
Name
ClassID
Fields:
CLASSREGISTRATION
Number of Fields
1
ClassID, Ascending
1
Size
4
4
8
3
3
2
2
2
2
2
2
1
Fields:
GRADEREGISTRATION
Fields:
PrimaryKey
Fields:
QtrCode
Fields:
STUDENTREGISTRATION
Fields:
ClassID, Ascending
1
FinalGrade, Ascending
1
RegNum, Ascending
1
QtrCode, Ascending
1
StudentNum, Ascending
Table: STUDENT
Properties
Date Created:
Description:
OrderByOn:
8/28/00 9:35:51 AM
Student personal information
False
Def. Updatable:
Last Updated:
RecordCount:
True
3/23/01 9:32:52 AM
79
Columns
Name
StudentNum
StudentID
FirstName
LastName
Country
NativeLanguage
LocalAddr
LocalCity
LocalState
LocalZip
LocalPhone
HomeAddr1
HomeAddr2
HomeAddr3
HomePhone
Email
Type
Number (Long)
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Size
4
11
20
20
15
15
40
10
2
5
12
50
50
25
15
25
Picture
BirthDate
Sex
OLE Object
Date/Time
Text
8
1
Table Indexes
Name
Number of Fields
PrimaryKey
Fields:
StudentID
Fields:
StudentNum
Fields:
1
StudentNum, Ascending
1
StudentID, Ascending
1
StudentNum, Ascending
Table: TEST_SCORE
Properties
Date Created:
Description:
OrderByOn:
8/28/00 9:39:21 AM
Students test scores by quarter
(pre & post)
False
Def. Updatable:
Last Updated:
True
3/23/01 9:44:32 AM
RecordCount:
33
Columns
Name
Type
TestNum
StudentNum
QtrCode
PreOrPost
Michigan
Ilyin
Writing
LA
Number (Long)
Number (Long)
Text
Text
Number (Long)
Number (Long)
Number (Single)
Number (Long)
Table Indexes
Size
4
4
3
4
4
4
4
4
Name
PrimaryKey
Fields:
QtrCode
Fields:
StudentNum
Fields:
STUDENTTEST_SCORE
Fields:
TextNum
Fields:
Number of Fields
1
TestNum, Ascending
1
QtrCode, Ascending
1
StudentNum, Ascending
1
StudentNum, Ascending
1
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 highlevel 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.
Client
Server
SIMSObjects
SIMSServer
Student
Ethernet Connection
Buffer
Students
Buffer
QSI
StudentPersist
QSIs
TestScore
QSIPersist
TestScores
RegistrationPersist
Registration
Registrations
TestScorePersist
SIMSManager
ELC Database
VB GUI
Download