Prospectus Editing Tool (PET)

Mike Jones (mike.a.jones@bristol.ac.uk)
IT Services R&D / ILRT

Using emerging learning and...
Overview
• The drivers and opportunities of the Prospectus project
• The rationale for developing PET
• How we use the TER...
What is PET?
A workflow-driven web application for collating, editing and
approving content for the undergraduate and post...
Content for Web …

IT Services R&D / ILRT
… and Print …

IT Services R&D / ILRT
… all stored in Site Manager

IT Services R&D / ILRT
We needed to replace old software

http://www.flickr.com/photos/bogdansuditu/2377842887

IT Services R&D / ILRT
Opportunity to review processes

http://www.flickr.com/photos/videolux/2389320345/

IT Services R&D / ILRT
Why develop PET?
• Reluctance to train ~100 academics and faculty staff in
using Site Manager for just prospectus content
...
Architecture

Site Manager
PET

Custom tag brokers
Workflow
DB

PET DB

CMS DB

Data
Warehouse

IT Services R&D / ILRT
Core Technology for PET
• Spring Framework (http://spring.io)
• Spring MVC
• Spring Security

• Activiti BPM Platform (htt...
Content is abstracted to Domain Objects
• Web application passes around domain model
objects that represent people, progra...
Mapping Content

@SectionID
private Integer id;

@ContentField (“
UCAS code”
)
private String ucasCode ;

@ ContentID
p ri...
Support for the web view
• Validators check with
the CMS for mandatory
fields
• Get list values
• Show field names and
des...
Workflow
• Activiti BPM Platform

• Support BMN 2.0
• Design the workflow
with an Eclipse plugin

• Java and a REST API
• ...
Progress
• Still a work in progress

• Currently being used by Undergraduate Recruitment
• Soon to be released to Postgrad...
Pros and cons of our approach
• Flexible system that can adapt to the needs of Student
Recruitment
• Benefit from the adva...
Experiences of using the Site Manager
API
• We have used the API for:
• The development of PET
• The migration of Plone co...
Documentation

http://www.flickr.com/photos/53326337@N00/3820645253

IT Services R&D / ILRT
Should you avoid parts of the API?

http://www.flickr.com/photos/robwatling/5059689668/

IT Services R&D / ILRT
Pass a Connection or a Statement?
• Initially surprised that you deal with JDBC objects directly
but we embraced it 
• De...
Bits and bobs
• More examples needed
• No notes on API changes in the release notes
• Not trivial to setup a development e...
Questions? 

IT Services R&D / ILRT
Upcoming SlideShare
Loading in...5
×

Prospectus editing at the University of Bristol- an overview:TERMINALFOUR t44u 2013

545

Published on

Prospectus Editing Tool at the University of Bristol. Mike Jones from the University of Bristol outlines how the University is improving the process of collating and editing content for the production of the 2015 undergraduate and postgraduate prospectuses. This session outlines the rationale, the approach, the technologies involved and it's experiences with the TERMINALFOUR Site Manager API.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
545
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Prospectus editing at the University of Bristol- an overview:TERMINALFOUR t44u 2013

  1. 1. Prospectus Editing Tool (PET) Mike Jones (mike.a.jones@bristol.ac.uk) IT Services R&D / ILRT Using emerging learning and research technologies to enable excellence
  2. 2. Overview • The drivers and opportunities of the Prospectus project • The rationale for developing PET • How we use the TERMINALFOUR Site Manager API in PET • The pros and cons of our approach • Experiences of using the TERMINALFOUR Site Manager API IT Services R&D / ILRT
  3. 3. What is PET? A workflow-driven web application for collating, editing and approving content for the undergraduate and postgraduate prospectuses. IT Services R&D / ILRT
  4. 4. Content for Web … IT Services R&D / ILRT
  5. 5. … and Print … IT Services R&D / ILRT
  6. 6. … all stored in Site Manager IT Services R&D / ILRT
  7. 7. We needed to replace old software http://www.flickr.com/photos/bogdansuditu/2377842887 IT Services R&D / ILRT
  8. 8. Opportunity to review processes http://www.flickr.com/photos/videolux/2389320345/ IT Services R&D / ILRT
  9. 9. Why develop PET? • Reluctance to train ~100 academics and faculty staff in using Site Manager for just prospectus content • Needed to control access to content via roles (Editor, Faculty Reviewer, Print Reviewer and Prospectus Administrator) that didn’t fit with Site Manager roles • Wanted a robust standards-based workflow engine • A request for ‘simplified editing screens’ IT Services R&D / ILRT
  10. 10. Architecture Site Manager PET Custom tag brokers Workflow DB PET DB CMS DB Data Warehouse IT Services R&D / ILRT
  11. 11. Core Technology for PET • Spring Framework (http://spring.io) • Spring MVC • Spring Security • Activiti BPM Platform (http://www.activiti.org) • MyBatis (http://github.com/mybatis) • Ehcache (http://ehcache.org) • TERMINALFOUR Site Manager API IT Services R&D / ILRT
  12. 12. Content is abstracted to Domain Objects • Web application passes around domain model objects that represent people, programmes, faculties, subjects etc • For Site Manager content an object is made of a Section + Metadata + Content • Implemented mappings from variables in the Java objects to Site Manager content via custom annotations • Support a subset of types – plain text, numbers, list (not sub-lists), content links … IT Services R&D / ILRT
  13. 13. Mapping Content @SectionID private Integer id; @ContentField (“ UCAS code” ) private String ucasCode ; @ ContentID p rivate Integer contentId ; @ ContentField (“ Award” ) p rivate String award; @ VersionField private String version; @ MetadataField (“ keywords“ ) private String keywords; IT Services R&D / ILRT
  14. 14. Support for the web view • Validators check with the CMS for mandatory fields • Get list values • Show field names and descriptions (can be overridden) IT Services R&D / ILRT
  15. 15. Workflow • Activiti BPM Platform • Support BMN 2.0 • Design the workflow with an Eclipse plugin • Java and a REST API • Supports different tasks – Email, Script, Business Rule etc IT Services R&D / ILRT
  16. 16. Progress • Still a work in progress • Currently being used by Undergraduate Recruitment • Soon to be released to Postgraduate Recruitment • Undergraduate prospectus will be published in February 2014 (I still need to write some Custom Brokers) • Positive feedback from academics. Student Recruitment positive but have lots of suggestions for improvement. IT Services R&D / ILRT
  17. 17. Pros and cons of our approach • Flexible system that can adapt to the needs of Student Recruitment • Benefit from the advantages of Site Manager while providing an easy-to-use interface for the academics • Powerful workflow that can be adapted to changing business processes • BUT … the heavy use of the Site Manager API means we cannot update our CMS until PET is fully tested against new versions of Site Manager IT Services R&D / ILRT
  18. 18. Experiences of using the Site Manager API • We have used the API for: • The development of PET • The migration of Plone content to Site Manager • Populating users and groups in Site Manager from LDAP It is very powerful! IT Services R&D / ILRT
  19. 19. Documentation http://www.flickr.com/photos/53326337@N00/3820645253 IT Services R&D / ILRT
  20. 20. Should you avoid parts of the API? http://www.flickr.com/photos/robwatling/5059689668/ IT Services R&D / ILRT
  21. 21. Pass a Connection or a Statement? • Initially surprised that you deal with JDBC objects directly but we embraced it  • Decided to pass in a Statement rather than a Connection so we can ensure the Statement was closed • You can’t always pass in a Statement; some API calls query the database but don’t even require a Connection ... • … which ties you to the SM Connection pool implementation IT Services R&D / ILRT
  22. 22. Bits and bobs • More examples needed • No notes on API changes in the release notes • Not trivial to setup a development environment – I use maven overlays to make my life easier • Support for transactions? • Cache – not able to notify the Site Manager cache that a remote application has added or modified content. • No support for repository standards – JSR-170 / JSR-283 or CMIS IT Services R&D / ILRT
  23. 23. Questions?  IT Services R&D / ILRT

×