Student Records: A complete asynchronous environment in education Abstract Technological improvements enhanced our education experience and involved new terms like distance-learning. Todays education systems are need to be supported by new architectures managing course, instructor, student, and performance records. We have developed a multi-tier architecture integrating back-end tools and systems with commodity interfaces. We implemented an asynchronous open information access environment supporting curriculum management, student databases, statistic data collection and presentation, assignment submission and performance evaluations, personalized data access on the web, security issues, different user levels and access lists. The resulting environment, evolved with the needs, reached a large audience, more than 400 users, including in-campus and online distance courses, had used it. This paper presents a technical overview of the architecture and discusses its functionalities gained from the experience. 1. Introduction Recent technological innovations tremendously effected the education systems. Distance learning became a common technique in education. Both synchronous and asynchronous techniques and resources are subject to continuous improvements. All improvements in the technology based education methods bring new needs. Our education experience showed that the new face of learning has lack of online-open asynchronous information access environment both for students and teaching staff like registering, passwords assignments, atomized mail lists, students' data recording, observing students, preparation and presentation of performance records, long term reference needs for a particular student work, assessment tools, which were used to be done by human interactions in traditional systems. We developed a distributed environment where users access from different locations through a complete security mechanism and user authentication interface integrated to commodity interfaces. Distributed students can on-line register for the courses. The student records and their performance records are planned to be kept in a database continuously that provides a base for a virtual university student services. Students performance pages includes their grades, grader comments, averages, expected grades, failures and suggestions, etc. A student can access his performance page, at any time from any where having web access; and/or can include his resume for the applications, which causes more reliable evaluations. Students may also use other services like post office, file uploading, class lists, submitting surveys, and other account administration. Besides convenience at online grading and submitting the grades to the students, instructors use the environment as technical services provider at the course preparation and as an assessment tool during the semester. The graders can see various statistics about the students at any time while grading from a web browser. A categorized questionnaire database is useful for online surveys and quizzes. Preparing class surveys provides keep tracking of the student progress, understanding course quality, and increased adaptability to the student needs. Possible customizations at the grading brings more flexibilities at the grading. The environment also presents an user friendly administration interface on the web. A server administrator can tune up the performance and change the configuration from any web-browser connected to the Internet network. The main topics in the environment as the collaboration of supervisors, instructor, co-instructors, TA, students, guests , and administrators through the Web Browsers are ; Course Records Manipulations Student Records Manipulations Assignment Records Manipulations Customizing Grading Preparing surveys Grading and Statistics System User Records Manipulations System Services like backups, postoffices, and class list construction Students' Access Menu, personal information and grades 2. Basic Needs and Problems encountered leading to the project; With our experience we realized that especially the outside distributed students had lived difficulties to follow a course presented with recent web technologies. Many students thousands miles away from our teaching center had frustrated to have offerings in-campus students had. A new complete integrated environment need to be presented to the outside registered students to make them feel like living in a virtual university. Even the in-campus students having many asynchronous resources around craved such an environment. Not having the student records in a trustable, easily-securely accessible database environment is a complete disadvantage for both on and off-campus students. Specific web-based interfaces should allow users to access certain information,perform related operations, and store the results in a state-full environment. For an example, on-line grading, or submitting student performance records was not so formal, secure, and flexible with email. Though individual solutions exists for long time, for example submitting grades with pgp encrypted emails, these techniques are not practical for every student and lack the completeness of an environment and future needs of students based on the spirit of the Web Education. The team offering the courses became loaded immediately by the work of technical class preparation. Construction of class lists, email lists, making Unix accounts, listing student home pages, submitting passwords to students and keeping track with add-drop students, measuring class level with surveys for different types of courses needed many human-effort because of lacking an atomized environment. The issues like grading became problem in distributed collaborative education cases with respectful number of teaching team in charge. Furthermore, online progress tracking, having a categorized questionnaire databank, automatically evaluation reports ,and similar services became a need more than a luxury by the time. 3. Features We designed the student records specifically to offer the following functionalities through a web interface; User and Student Main Page Image URL: http://carver.npac.syr.edu:3768/users-docs/msen7/paper/userstudentmenu.gif [Image][Image] 3.1 Course Records Manipulations One can see the courses listed to make operations like browse, update, delete, on the present courses, or new courses can be added. Instructors can prepare surveys to be filled by on-line registering students. 3.2 Student Records Manipulations & Students' own account administration Staff users can see the students registered in a specific course listed. One can create new students optional to students' own online-registration, browse, update, remove a student. Students themselves has private accounts with enhanced tools for their personal use, which they get by online registering to the courses. They can always see their performance records, use post office, upload homework files, administrator their virtual directories and personal accounts. 3.3 Assignments & Grading The team offering courses to students can make new assignments through the web interfaces and specify grading information about the assignments like percentage, published URLs, etc. The on-line grading provides an asynchronous collaboration between distributed staff team members hided from the online students. Students may see their grades online, securely and privately after they are published by graders. The grader has various alternatives while grading. The grades may either be numeric grades, or customized grades like A, A-, B, B- , etc., or excellent, good fair, poor, etc., or present absent, in cases for k12 students. In either case, the average calculations can be done automatically. The grader may choose class list or individual assignments for faster grading. At any time, one can see the class averages, grade distribution, ranks, etc. The following pictures illustrates the usage of the system; The grading interface contains information depending on the security level of accessing person. For example, a student can only see his grades, assignment information, the points he lost or gained, and some comments by grader. On the other hand the grader can include some secret comments only available to the authorized people like instructors, or parents. Furthermore, an instructor or supervisor can also include top level secure comments for the individual grades or in general student performance which are only available for specific users. Grading Image URL http://carver.npac.syr.edu:3768/users-docs/msen7/paper/grading.gif [Image] 3.4 File Manager NPAC Virtual File Manager is integrated in the environment for uploading homework files into virtual directories in server side, and directory-file manipulations. Students uses the same passwords and/or transfered from their personal accounts to access their directories. File Manager Image URL : http://carver.npac.syr.edu:3768/users-docs/msen7/paper/filemanager.gif [Image] 3.5 Surveys & Quizzes Through the web interfaces, instructors can prepare surveys for students at any time the course offered. A questionnaire bank keeped in the database to select previous survey questions from the databank. Questions may be distributed into different categories, and presented in a logical way to the students independent of their preparation at different times. In a similar fashion to surveys, class quizzes can also be prepared. Beyond the regular quizzes, different aspects of quizzes from student-self evaluation quizzes to pop-quizzes in class time are currently in progress. The survey results are automatically evaluated and immediately presented to supervisors on their browsers. By using the surveys and quizzes the understanding level and expectations of the class may be measured, and the performance of the class can be leveraged. An example of a class survey results are presented in the following picture; Survey Results Image URL http://carver.npac.syr.edu:3768/users-docs/msen7/paper/surveyresult.gif [Image] 3.6 User records Additional to the student users, a different kind of the user accounts are kept in the system for instructors, supervisors, co-instructors, TAs, graders, administrators, browsers, other system administrators, etc. These records contains personal information about the users and their access privileges. The security issues about different level of users will be discussed later. 3.7 Services and legacy systems connections One of the important characteristics of the projects is that it contains many services atomized in its environment. The load of the staff offering courses in NPAC relieved considerably. Besides these atomization jobs, there are other services directly offered in the environment like its own post-office categorizing email lists. Performance tuning and configuration changes can be done from a front-end interface to an easy use by administrators. The access logs are kept for future references and assessment. 3.8 Security Issues The student records are one of the most private information in education. Because of its exposure to the public over the Internet, the whole environment is subject to attacks to capture, to alter, to destroy the private information. For the sake of completeness, complete security should be inserted into the architecture. We solved the security issues under the following categories; Security Image URL http://carver.npac.syr.edu:3768/users-docs/msen7/paper/security.gif [Image] [Image][Image] 3.8.1 Communication channel security; Currently, we have the technology to secure enough the communication channels over a public network. Using public key cryptography in the SSL protocol secures the transferring of the information over the Internet. 3.8.2 User authentication; Like many computer operating systems a user authenticates himself by entering a user login id and a secret password known solely to himself and the system. 3.8.3 User access lists; The second part of the authentication mechanism is keeping access lists for the users. All the users are restricted only to access to the allowed part of the database, HTML pages. For each user the courses, which he can access, are kept in the user tables. Access lists can be easily manipulated in the user records interface, simply by carrying present course names to the access list box. 3.8.4 User privilege levels; Since privacy issues are most important in such a system, user password authentication and access lists are not enough to keep privacy by themselves. After getting a successful password authentication, and having desired course specified in the access list, a user must have powerful enough privileges to access, delete, update some records, or to see HTML information pages. There are following 8 categories of user privileges defined; Super User, Supervisor, Instructor,Co-Instructor, TA, System, Browser, and students. 3.8.5 Presentation security; One of the challenging issues about the security is not the communication security but the keeping privacy after data transfered. It is highly possible that students may see their grades and other private records in a public cluster. Although it is not possible to provide complete security at this level, we improved different strategies to make the risk as low as possible; SSL server prevents browser caching in general, timeout clocks destroy the windows, the new unique id given by each login, with expiration time, prevents using same URL and stealing passwords, etc. 3.9 HTML Editable User Interfaces in template library All the user interfaces are presented through the WEB browsers, and they also keeped as HTML-like files in a template library separated from the implementation and the database records. One can easily edit a user interface like an HTML file without any technical knowledge of the environment. Also using different style sheets for different users is also possible. 3.10 Easy system administration A front end menu is prepared for the administrators, who are configuring the connections like, JDBC-Database connectivity, and tuning up the performance, etc. Any third party, who wants to use the project for themselves, can easily use the project just by using user friendly front-end guides without any deep knowledge of components without having highly skilled computer experts. 4. Architecture and Involved technologies The entire architecture is implemented based on the concern of portability and easy installation to any machine in anywhere. The involved technologies includes HTML, JavaScript, Java, JDBC, SQL, SSL and limited amount of Perl for specific local legacy systems. Architecture Image URL http://carver.npac.syr.edu:3768/users-docs/msen7/paper/architecture.gif [Image] The architecture is a multi-tier architecture. In general it can be seen as a three-tier architecture. The more layers in middle tier especially designed in semantics of modularity and easy integration with other related projects. The user interface completely presented as an commodity interface. All the data access, and functionality is managed through the client browsers. The communication channel is secured with SSL to complete other inside security mechanisms as previously mentioned. In the middle layer, the main intelligence of the environment is placed. The communication with the outside world is provided through dynamically produced HTML pages by the servlets. The middle tier itself contains different levels. The first level contains the high level functionalities to talk with the clients and to perform the operations in a more advanced level without considering the low level system dependencies like database connectivity. The relational database records are considered as the objects at this level. The second level mainly serves as a cache memory to database objects. The cache mechanism provided performance increases by decreasing accesses to the database for each operation. The objects in the cache are defined as the objects which are keeping single relational database table row entry and related methods to perform on them. At any time when a user login to his account, all of his personal records transfered to cache for any possible access by user, or the recent course records always kept in cache during the semester. The last level performs low level operations like connecting to the databases and performing database related operations. Each independent type of tables like, students, users, courses, etc., has an associated class. The table mapped class is responsible for accessing to database, fetching the records, turning them into objects, keeping the consistency with object modifications and database, and also related table operations like listing the whole table, sorting etc. The last layer in the architecture is database back-end. Since implementation is done with Java, any suitable database supporting basic SQL standards can be chosen and the database access can be forwarded to selected database through JDBC bridge update in the front end options. In the implementation, SQL usage is minimized so that even some Databases like mSQL with full SQL standard support can be used. The last layer also includes a template library stored as HTML-like files. The user interfaces can be easily enhanced simply by editing this HTML-like files without any knowledge of the Java codes and database issues. The parser module takes this files and embed database information into the HTML-like file and return a complete HTML file to the user dynamically. The environment supports also the legacy systems through a cgi-module. Conclusion and Future Directions NPAC's student records database environment has been used by many students, about 450, and staff up to date in two years. It is evolved with professional experience and new needs both by on and off campus course offerings. The environment keeps a rich set of online available tools useful in education. Distributed students from Missisipi, Boston, X, and Syracuse online registered for the same course offerings in the environment. The implementation is entirely written in Java in a portable fashion. Its layered and modular architecture provides easy upgrading and integrability with other environments, e.g., high level sharing database records. Other educational organizations like JSU also installed it. The environment provides easy server administration and configuration additional to its convenience for users through the Web. Currently we are developing new asssesment tools having a new horizon using data mining techniques on combination of environment logs and other synchronous and asynchronous resources logs. References K. Dincer and G. C. Fox, Using Java and JavaScript in the Virtual Programming Lab: A Web-Based Parallel Programming Environment, in Concurrency: Practice and Experience Journal, June 1997. K. Dincer and G. C. Fox, Design Issues in Building Web-based Parallel Programming Environments, in Proceedings of the Sixth IEEE International Symposium on High Performance Distributed Computing (HPDC-6), Portland, OR, August 5-8, 1997.