360 likes | 375 Views
Explore the evolution of Waterloo's OFIS from its inception to Version 2, incorporating automated data sources, reports, and involvement from the Computer Science department. Learn about the modular, uniform, and extensible code that powers this faculty-centric database system.
E N D
Waterloo's Online Faculty Information System (OFIS) Where Are We in 2010? Daniel Allen, Computer Science Computing Facility
OFIS is an Online Faculty Information System • It is a faculty-member centric database that brings together information from disparate campus sources • Its purpose is to gather data that is common to many reports faculty members are asked to regularly produce • Making these reports easier to generate, and easier to update
Project Team • Started in Engineering 4 years ago • Peter Douglas (past assoc dean computing) • Beth Jewkes (past assoc dean computing) • Olga Vechtomova (current assoc dean computing) • Paul McKone (original web dev and db) • Vu Huynh (current web dev) • Marlon Griffith (current db) • … numerous others
Project Reach • Used in: • Most departments of Engineering • Computer Science on experimental basis • Office of Research for ‘Find an Expert’ pages • Initial discussions with other faculties
In the Beginning • Undergraduate Course Critiques Database • Engineering faculty-wide • Quick, dirty, cheap • Sortable, searchable • Well received
And there was also • Engineering Merit Report • Yearly, requires 3 years activity • Lots of repeated data: • Publications • Awards • Research Activities • Student Supervision • Courses Taught and evaluations averaged
Combined to form OFIS (v.1) • Filling Merit Report with data from Course Critiques Database • And a lot of manual text-entry • The project grew: • additional reports, data sources
Version 2 • Many automated Data Sources • WatIAM, HR • Office of Research • Quest • Engineering Dean’s Office • Still manual entry by faculty members: • Publications, bibliography, research interests…
Version 2 • Reports produced: • Engineering Merit Report • Ontario Council on Grad Studies (OCGS) • Canadian Engineering Accreditation Board (CEAB) • Faculty member CV • “Find an Expert” web systems • Both Engineering and Office of Research
CS Involvement • CS involvement begin in Spring of 2009 • 1/3 of a full-time staff person’s time in CS • consultations with faculty (through Director for Infrastructure) on approach • CS Research Book: Fall 2010 • and automatically, CS will be ready for: • OCGS and CEAB (Software Engineering)
CS Research Book • Good overlap with existing OFIS data fields • Printed book for visitors published every few years • Website profiles • OFIS integration allows faculty to edit for themselves, whenever they like
Producing CS Research Book • Minor OFIS database additions • Importing existing Research Book data • CS Research Book homepage • ‘Preview’ or ‘Publish’ generates markup file • Markup file generates: • Faculty profile webpage • LaTeX file → PDF → printed book
OFIS Internals • FreeBSD • Apache 2 • MySQL • PHP
Database • 120 MySQL tables • Using constraints where possible • Fairly automatic process for imports • WatIAM, HR, Office of Research, Quest, Engineering Dean’s Office
Code • Organically grown framework • Design goal • Modular • Uniform • Supportable • Extensible
Modular Code • V2 is heavily refactored • Modules to avoid repeated code • (DRY is work-in-progress) • php scripts, html templates, css files and javascript code
Uniform Code • Naming conventions across database, php, javascript and css • Standards for returns from functions
Supportable Code • Graceful degradation ensured that if javascript fails, the php would still work • Uses AJAX if JS is turned on • degrades to page-reload if JS disabled • “Hijax” approach by Jeremy Keith • domscripting.com
Extensible Code • Easy to add new functionality if basing on modular, uniform code • Adding new sections is quick • Display layer for the CS research book only took a few days
Security • Redirect always from http to https • Validation: form data cleaned to handle sql injection attacks
Version 2 Inputs • Office of Research • Records of funding • applications and decisions • Grad Studies Office • Grad student supervision • Human Resources • Basic contact information • Appointments • Quest /Faculty • Teaching history • Teaching evaluations • Faculty Members • research, teaching interests • biography • affiliations • research contributions Outputs • CS Research Directory • “Find an Expert” Systems • One used by Office of Research • One in Engineering Research Office • Canadian Engineering Accred. Board • Required every 6 years • Engineering accreditation (+1 CS unit) • Ontario Council on Grad Studies Report • Required every 7 years • Produces CV in standard format • Engineering Merit Report • CV Report Automated OFIS DB
Version 2 Successes • Producing wide variety of reports useful for teaching and admin • Understanding business rules • UI improvements: • Batch entry by spreadsheet • Batch entry by BibTeX Outputs • CS Research Directory • “Find an Expert” Systems • One used by Office of Research • One in Engineering Research Office • Canadian Engineering Accred. Board • Required every 6 years • Engineering accreditation (+1 CS unit) • Ontario Council on Grad Studies Report • Required every 7 years • Produces CV in standard format • Engineering Merit Report • CV Report
Version 2 Challenges Inputs • Office of Research • Records of funding • applications and decisions • Grad Studies Office • Grad student supervision • Human Resources • Basic contact information • Appointments • Quest /Faculty • Teaching history • Teaching evaluations • Faculty Members • research, teaching interests • biography • affiliations • research contributions • Importing data challenges • Transient data errors • User Interface • Bibliography is manual process Automated
Import Challenges • Understanding campus business rules • Much detective work by Prof. Jewkes and Prof. Douglas • Grateful for ongoing help from staff in IST, Office of Research, Institutional Analysis & Planning, Registrar's Office
Transient Data Errors • Is 8-month old missing data an error? • Yes and no • Yes, if you need it for a report • No, if our data source updates once a year • Requires feedback loops we don’t have yet • Who is the authoritative source?
Authoritative Sources • Faculty users unhappy about data errors • Data that isn’t under OFIS control • Observation: central sources are aggregators not originators of most data • Originators are often Faculty or Department • Our challenge: integrating with faculties • Opportunity: fixing errors immediately • Faculty members- OFIS becomes authoritative
Feedback Loops • Errors identified by staff or faculty • Central sources want corrections from Faculty/Department, not OFIS • We need to involve Faculty/Department • Opportunity: how many places repeat same data? • Beth Jewkes’ Progress Through Ranks project • With Engineering Dean’s Office
User Interface • Work in progress • Bibliography is a manual process • There are many publication databases • Can we get two-way transfers with any of them? • RefBase • Google Scholar via bibTeX • Community of Science, others
User Interface • Overall goal is usefulness • Without requiring unnecessary extra administrative work • For faculty members • For staff members
Wrapup • OFIS project through 4 years • Has benefitted from great intercampus collaboration • Facing the challenges for the next version • Importing cleanly • Resolving transient data questions • Improving User Interface by reducing amounts of manual entry and correction
Questions? Daniel Allen drallen@uwaterloo.ca Computer Science Computing Facility Olga Vechtomovaovechtom@uwaterloo.ca Associate Dean, Engineering Computing