I've been at Edge Hill for four years, ninemonths and twenty days – scary!
I started as web applications developer, then I played at being a project manager and now I'm the rather grandly titled "Head of Web Services"
corporate website
portal
But I’m not a DBA and my team isn’t responsible for corporate business systems so the student record system isn’t within my direct remit.
Let’s wind back a few years to 2007…
This was the exact time that XCRI-CAP came along so we took the schema and created our database structure to match it as closely as possible.
So we have tables for courses, presentations, qualifications, venues and so on.
To get a little bit technical, we use a web framework called Symfony.
From these models an "admin generator" can automagically create an interface to create and manage records in the database.
Let’s talk briefly about our implementation of XCRI feeds.
Propel is an ORM written in PHP – it maps database results into objects that we can play with.
We wrote a set of mapper classes which convert propel objects into instances of our own ehXcri classes which more closely match the XCRI schema. We can model different versions of XCRI by changing these classes. The mapped versions of courses are then serialised to an XML string and served up.
Ideally, we’ll have an XCRI feed for any page served up from our online prospectus, just by adding /xcri to the end of the address.
With a developer's hat on, XCRI has enabled us to build a solid online prospectus without spending time getting the model wrong. It’s provide to be sufficiently extensible for all of our needs and while we’re not using XCRI directly, it’s there if we need it.
With my managers hat on I can see how basing our systems around a standard makes an enormous amount of sense. The process we went through to get course details into the new system ensured we had all the information required to publish decent online course catalogues.
We generally had few problems with the majority of the information in the system – Department of Corporate Communications and Student Recruitment have responsibility for monitoring minutes of validation committees and triggering updates to the database but modules have proved much more difficult to integrate as they change more frequently and no one has clear ownership of the data.
We’ve also struggled to make use of actual XCRI data. While having the database structured that way has allowed us to do all sorts of interesting things with our data from printed course leaflets to search as you type since we have no actual users of the XCRI feeds we’ve had no requirement to develop and maintain them.