indianauniversityindianauniversity © 2006 the trustees of indiana university. all rights reserved....
Post on 20-Dec-2015
214 views
TRANSCRIPT
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Enterprise Calendaring at Indiana University
Nate Johnson
Principal Systems Analyst
Indiana University
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Background
My Team: The Systems Integration Team We provide development support, training,
and integration services The application we support
• OneStart: Enterprise Portal• OneStart Calendar: Enterprise Calendar• Workflow: aka KEW and OneStart Workflow• Various others
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Agenda For Today
A little history on this project Key features and screenshots The technical architecture and standards Demo? Feel free to ask questions at any time Slides
http://beatles.uits.indiana.edu/confluence/display/CCL/JA-SIG+Summer+Conference+2006
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
But first, what where we looking for in a calendar product?
An open source java calendaring solution with feature set close to that of Microsoft Outlook• Mainly for students (private calendar)• Available to everyone
Standards compliant Public and group calendaring support Resource scheduling
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
History
Began looking in early 2002• Could not find an open source product that
met all of our needs• Put the project on hold
Starting designing our homegrown system in January 2003
Rolled it out in production in May 2003
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Screenshots First!
I am going to start with the screenshots first so I don’t bore you before you even get to see what it looks like.
Technical details to come
Live demo if time permits
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Key Features
Multiple views (lists and grids) Multiple event types (single, recurring, meeting
request) Free/Busy comparison Ability to view other user’s calendars Extensive time zone support Public and private group calendars (merge-able) Meeting scheduling and auto-pick next Resource and room scheduling Group calendars are skin-able Calendars are searchable Events can be exported as iCal or RSS PDF export of any view
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Multiple views
Small channel view containing the month at a glance and the events for the currently selected day
Grid views: day, week, and month List views: day, week, and month Year at a glance
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Weekly View
We will see many of the other views in upcoming slides
Our primary focus was on the grid views• At a glance needed to be useful: Title and
location, with tooltips if needed• 5 minute increments• Conflicting events clearly recognizable
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
View a group calendar…
And merge it with your own
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
A single day
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
A weekly list view
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
A month view
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Year at a glance
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Creating your own events
Basic event information• Title, description, location, start/end times
Repeat• Recurrence options, duration
Reminders• Email or text message
Invite others• Meeting requests
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
If you are setting up a meeting with others, youshould take a look at theircalendars first (Free/Busy).
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Having trouble findinga time when everyone is free?
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Checking in / following up with the invited users.
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Search
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Exporting a search result
Produces an iCal file which can be imported into any standards compliant calendar (Outlook, Apple iCal, etc)
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Fragment from an export
BEGIN:VCALENDARPRODID:-//Indiana University//OneStart Enterprise Calendar 4.0 onestart.iu.edu/cclVERSION:2.0METHOD:REQUESTBEGIN:VEVENTDTSTART;TZID="US/East-Indiana":20060606T081500DTEND;TZID="US/East-Indiana":20060606T094500CLASS:PUBLICORGANIZER;CN="Johnson, Nathaniel A":MAILTO:[email protected];CUTYPE=INDIVIDUAL;CN="Hopf, Jeremy R";PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:[email protected];CUTYPE=INDIVIDUAL;CN="McGough, Brian J";PARTSTAT=NEEDS-ACTION;ROLE=REQ-ARTICIPANT;RSVP=TRUE:MAILTO:[email protected];CUTYPE=INDIVIDUAL;CN="Johnson, Nathaniel A";PARTSTAT=ACCEPTED;ROLE=REQ-PARTICIPANT;RSVP=TRUE:MAILTO:[email protected]:20060606T030621ZDTSTAMP:20060606T030621ZLAST-MODIFIED:20060606T030623ZLOCATION:SIT Conference RoomRRULE:FREQ=WEEKLY;COUNT=2;INTERVAL=1;BYDAY=TU,THSEQUENCE:0SUMMARY:OneStart StatusTRANSP:OPAQUEUID:[email protected]:VEVENTBEGIN:VTIMEZONETZID:US/East-IndianaBEGIN:STANDARDDTSTART:20020101T020000TZOFFSETFROM:-500TZOFFSETTO:-500END:STANDARDEND:VTIMEZONE
<snip/>
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Options
Preferences View a group calendar
• Update merged group calendars
View another user’s calendar Import an event (iCal file) Maintain group calendar (Admins)
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Preferences
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
View / Merge a group calendar
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
View another user’s calendar
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Import an iCal event
Screen with a file chooser (local file)
Convert events.ics and store them on your calendar
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Maintain Group Calendars
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Other features
Skin-able group calendars (see previous slide)
Calendar feeds• RSS, iCal, and Atom
Resource scheduling (see previous slide)
Extensive time zone support
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Technical Architecture
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Two Main Points
The physical hardware
The frameworks used to build the calendar
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Hardware - Environments
Development• Code is developed on personal
workstations (mainly Windows and OS X) and tested under Tomcat
• Connect to distributed development services (Oracle, LDAP, etc)
• Centralized CVS• Standards for university systems
development
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Cont.
Multiple test environments• Test Oracle databases• Similar setup as in production• Large RHE3 boxes with VMWare• Shared down to the JVM level• Tomcat
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Cont.
Production• Still shared RHE3 boxes with shared JVMs• Three clustered Tomcat servers shared
with other SIT applications (portal, etc)• There is an Apache layer to serve static
content• Production Oracle database (shared),
ADS, and LDAP repositories
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Software Frameworks
Struts• http://struts.apache.org/
OJB• http://db.apache.org/ojb/
Spring• http://springframework.org/
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Struts
The web tier The UIS standard Using version 1.2.9 Could be replaced with minimal effort
due to the use of Spring and other helper objects
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
OJB
Apache Object Relational Bridge OR mapping framework similar to
Hibernate Using version 1.0.4 Well separated using Spring
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Spring
IoC container Using version 1.2.8 Used mainly for:
• Injection of services• Declarative transaction management
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
Other frameworks, libraries, etc.
We use Yale CAS for SSO since 2002 (after the Dec. Destin conference)
Talk to LDAP for people and group information
DisplayTag iText Rome Various Apache (log4j, pooling, fileupload, …)
I
N
D
I
A
N
A
U
N
I
V
E
R
S
I
T
Y© 2006 The Trustees of Indiana University. All rights reserved.
See it live
Demo if time/internet allows…