“He left the course 3 months ago?” - Web front

Download Report

Transcript “He left the course 3 months ago?” - Web front

“He left the course 3 months ago?” Web front-ends to student databases
Nick Gould
Faculty of Economic and Social Studies
University of Manchester
[email protected]
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?
Nick Gould, University of
Manchester
2
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”
Nick Gould, University of
Manchester
3
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
Nick Gould, University of
Manchester
4
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
Nick Gould, University of
Manchester
5
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
Nick Gould, University of
Manchester
6
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
Nick Gould, University of
Manchester
7
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
Nick Gould, University of
Manchester
8
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
Nick Gould, University of
Manchester
9
Example Active Server Page
<HTML>
<BODY>
<% For i = 3 To 7 %>
<FONT SIZE="<% = i %>">Hello World!<BR>
<% Next %>
</BODY>
</HTML>
Nick Gould, University of
Manchester
10
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
Nick Gould, University of
Manchester
11
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”
Nick Gould, University of
Manchester
12
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.
Nick Gould, University of
Manchester
13
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!
Nick Gould, University of
Manchester
14
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
Nick Gould, University of
Manchester
15
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)
Nick Gould, University of
Manchester
16
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
Nick Gould, University of
Manchester
17