This document discusses the development of a web-based front-end to student databases at the University of Manchester. It describes problems with large class sizes requiring significant administration. A solution was developed using an Access database with a web interface for students and Visual Basic interface for staff. Active Server Pages were used to dynamically generate pages connecting to the Access database. Future plans include expanding use across the university and upgrading the backend database.
Web front-ends to student databases - SEO optimized title
1. “He left the course 3 months ago?” -
Web front-ends to student databases
Nick Gould
Faculty of Economic and Social Studies
University of Manchester
N.Gould@man.ac.uk
2. Nick Gould, University of Manchester2
Aim of Talk
• Describe efforts to develop web-based front-end to
student databases
• Discuss problems
• Describe solutions used
• Are we going the right way about it?
3. Nick Gould, University of Manchester3
Problem
• Large student numbers on modules
– 400 plus on some first year modules
• Requires a lot of administration
– tutorial attendance
– work done - essays, projects, exams
– end of semester reports for each student on each
module
• Hard to keep track of students
• Time spent on “paper-chasing”
4. Nick Gould, University of Manchester4
Solution?
• Computer based system for storing/retrieving
student information
• Information to be stored:
– student details
– staff details
– module details
– which student is on which module
– which staff member does what on which module
– tutorial attendance
– work done
5. Nick Gould, University of Manchester5
System Requirements
• Teaching staff
– recording tutorial attendance and work done
– Generating reports
• Administrative staff
– monitor attendance across modules
– Generate warning letters
• Students
– get information on staff, modules and tutorials
• bulletins, dates, times, staff office hours, email addresses
– join tutorial groups
6. Nick Gould, University of Manchester6
System Chosen
• Access database
– use student registration number/staff payroll number as
unique ID
• Web front-end (limited functions)
– for student use
– off-campus staff (tutors)
• Visual Basic front-end (all functions)
– for module administrators
– departmental administrative staff and Faculty Office
7. Nick Gould, University of Manchester7
Why this system?
• Access - previous experience
• Interface - why not all Web?
– Visual Basic - quicker/easier to develop front-end
– Developing Search/browse Web interface is easy
– updating/inserting - not so
• validation
• Student access mostly read-only
– apart from selecting tutorial groups
8. Nick Gould, University of Manchester8
Web interface Overview
• Start with login form
• one for students, one for staff
• Enter ID number and password
• password self-selected via registration form
• Student provided with a list of their modules
• click on module name for tutorial information
• if not booked on a tutorial given option to do so
• Staff can
• mark tutorial attendance
• get student information
• Web interface uses Active Server Pages
9. Nick Gould, University of Manchester9
What is Active Server Pages?
• Used for interactive pages - dynamically generated
• Provides server-side scripting.
– Built-in to IIS 3+
• page consists of HTML and scripting language
code
• Browser calls .asp file instead of .htm or .html
• Server processes script then returns HTML to
browser
10. Nick Gould, University of Manchester10
Example Active Server Page
<HTML>
<BODY>
<% For i = 3 To 7 %>
<FONT SIZE="<% = i %>">Hello World!<BR>
<% Next %>
</BODY>
</HTML>
11. Nick Gould, University of Manchester11
Active Server Pages and Databases
• Assign ODBC data source name to database.
• In the ASP
– generate SQL query string
– connect to ODBC data source
– execute query
– results stored in recordset
– to return results loop through recordset generating
HTML table, say.
• See http://nt2.ec.man.ac.uk/aspcourse
12. Nick Gould, University of Manchester12
Advantages of Active Server Pages
• Flexible, powerful
– compared with FrontPage, dbWeb
• In-built database interfacing elements, no extra
modules required.
• Choice of scripting languages
– VBScript, Jscript, Perl
• “Free”
13. Nick Gould, University of Manchester13
It’s worked before!
• Web-based multiple-choice system
– recording of marks, submission date etc.
– administration interface
• get scores for student X.
• e.g. list all students who have not completed exercise X.
– 470+ students in system. Each doing an exercise every
two weeks.
14. Nick Gould, University of Manchester14
Disadvantages of ASP
• Microsoft only
– use Perl/CGI for portability
• Programming required
• Debugging - trial and error
– but scripts short
• Need to investigate other tools
– takes time!
15. Nick Gould, University of Manchester15
Maintaining State
• User logs into system with unique ID
– ID used to generate personalized pages
• Problem - statelessness of the Web
– series of one-off transactions.
• Need to pass variables from page to page.
• Can store in HTML hidden fields - not very
secure.
– listmarks.asp?ID=97633&module=EQ1040
• appears in browser
16. Nick Gould, University of Manchester16
Using the Session Object
• Feature of ASP
• allows you to maintain state between pages
• Can store values from forms as Session variables
• More secure
– listmarks.asp?module=EQ1040
• Easier to program
• Session closed after 20 minutes of inactivity
(default)
17. Nick Gould, University of Manchester17
Future Developments
• Initially used on a few modules in one department
– go faculty-wide
• Investigate Development tools
• Upgrade to SQL Server from Access
– Access not-really multi-user
– transaction logging required
– won’t need to recode ASP
• Interfacing with central databases?
– Needs to be university-wide