indianauniversityindianauniversity © 2006 the trustees of indiana university. all rights reserved....

67
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

Post on 20-Dec-2015

214 views

Category:

Documents


0 download

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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…

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.

Questions?

For information on the open source OneStart calendar, please go to:

http://beatles.uits.indiana.edu/confluence/display/CCL/JA-SIG+Summer+Conference+2006