170 likes | 291 Views
“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. Aim of Talk. Describe efforts to develop web-based front-end to student databases Discuss problems
E N D
“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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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