research administration kuali rice: enterprise middleware solutions geoff mcgregor terry durkin

38
research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Upload: santino-lapole

Post on 15-Dec-2015

221 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

research administration

Kuali Rice: Enterprise Middleware Solutions

Geoff McGregorTerry Durkin

Page 2: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Quick Review

Kuali Rice – middleware suite of integrated products Kuali Nervous System (KNS) – application development

framework Kuali Enterprise Workflow (KEW) – document routing engine Kuali Identity Management (KIM) – identity and access

management services Kuali Service Bus (KSB) – common registry of remote

services Kuali Enterprise Notifications (KEN) – broker for university-

related communications

Page 3: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Bundled Rice

Bundled Mode When you download KC, you

are downloading Rice By default, Rice is Bundled

with KC Behaves as one monolithic

application All services in local Spring

context Web content in the same war Single DB schema

Page 4: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Standalone Rice

Rice can be downloaded separately and run as an independent service

Standalone client integration options Embedded Remote Hybrid – different modes by module

Page 5: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Changing Integration Modes

KC was designed to make switching deployment modes relatively simple

kc-config.xml: Modify <module>.runmode parameters If using embedded, specify the Rice datasource info Ensure dev.mode param = false If using KSB security, fill in keystore params Modify rice.app.url to point to the Rice webapp url

Page 6: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Embedded Mode Rice services run in the client application and access the Rice DB directly Independent Rice web app and database

Page 7: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Embedded Mode

Fast – embedded client talks directly to the database Scalable – processing load is distributed No need for application plugins on the Rice server to

handle application-specific logic

Page 8: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Remote Mode Client applications interact with Rice standalone via KSB service calls or

straight web service calls

Page 9: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Remote Mode

Loosest coupling Easy to connect May require multiple deployment artifacts

(app + plug-in) Reduced performance due to transport

overhead

Page 10: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Modular Design Each module composed of a set of service interfaces and API

components Each module also has a reference implementation of those

services Each module publishes services on the service bus that are

available externally Services are located and invoked – they may be deployed

locally or remotely and the caller does not need to know Client applications code to the module APIs – don’t care about

the underlying deployment mode

DocumentService documentService = ServiceLocator.getDocumentService();documentService.routeDocument(myDocument);

Page 11: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Resource Loaders

Modularity powered by the resource loader stack A component in Rice which locates and loads references

to service endpoints All services identified by a qualified name Can also load objects from classloaders

Page 12: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Resource Loader Stack

Page 13: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Kuali Service Bus

Sits at the bottom of the Resource Loader Stack Simple service bus Exporters Connectors Synchronous service invocation Asynchronous reliable messaging Service registry

Page 14: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Kuali Service Bus

Page 15: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

KSB Service Registry

Page 16: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Kuali Service Bus

Provides the ability to scale applications horizontally Can publish more than one service with the same name

from multiple instances KSB will round-robin requests, as well as fail over if an

instance is down KSB can identify which application cluster a service

belongs to based on app’s Service Namespace

Page 17: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

eDocLite

Part of KEW Build simple forms quickly Ideal for quickly turning paper-based forms into electronic

forms back by workflow and its features: Document search Action list Email notifications Route log Routing rules

Page 18: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

eDocLite

Created with XML and optionally javascript No java, no relational tables – data stored in a table by key-value Data can be transformed and inserted into relational tables via

postprocessor hooks, if necessary Even ‘lighter’ (but more limited) than KNS Maintenance

Documents

Page 19: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

eDocLite

Page 20: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Putting It All Together

Page 21: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Putting It All Together

As an enterprise middleware solution, Rice provides: Common development framework for programmers and

experience for users Generic workflow engine can be leveraged by any application Consolidated action list, doc search for all KEW-enabled eDocs eDocLite for quickly building lightweight routable eDocs Centralized, comprehensive identity management solution KEW and KIM synergy for group and role-based routing Communication broker for system-to-system integrations (e.g.,

KC-KFS)

Page 22: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Enterprise Rice – IU Case Study

Why? How long? How many applications? How many documents? How many users? How does it work? Which Modules? How many developers?

Page 23: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU – Why?

Core infrastructure Supporting Enterprise Apps Supporting a shared development

methodology for the institution Supporting our Service Deployment and

Deployment Strategy through KSB Supporting our evolving IDM process through

KIM Supporting departmental processes through

eDoc Lite

Page 24: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU – Enterprise ApplicationsDate Application

May 2003 Electronic Research Administration

October 2003 Human Resource eDocs

June 2005 EPIC (Electronic Procurement and Invoicing Center)

October 2006 Timekeeping

September 2007 Add/Drop Course

November 2007 Indiana University Foundation

December 2007 Grade Change

November 2008 Intelligent Infrastructure Billing

February 2009 Schedule of Classes

July 2009 Electronic Paid Time Off (EPTO)

October 2009 Travel

May 2010 Kuali Financial System - General Ledger

August 2010 Course Remonstrance

August 2010 Graduate Admissions Application

Page 25: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU – eDoc LiteDate Application

February 2007 Office of Affirmative Action

July 2007 Student Special Credit Request

August 2007 Safeword Card Administration

September 2007 University Graduate School – Course Remonstrance

July 2008 Office of VP for Research – Internal Funding Request

August 2008 Office of VP for Research Administration – Conflict of Interest

August 2008 Health Center Appointment Request

January 2009 Registrar – Staff Orientation Information Request

May 2009 Payroll Request

September 2009 Security Office – Web Vulnerability Scanning Request

December 2009 Registrar – Course Bulletin

January 2010 Optometry Appointment Request

March 2010 Motor Pool Vehicle Request

March 2010 Purchasing Contract

May 2010 Oncourse Adminstration Request

August 2010 Business Intelligence Project Submission

Page 26: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU – Document Metrics

2003 2004 2005 2006 2007 2008 20090

1000000

2000000

3000000

4000000

5000000

6000000

7000000

8000000

9000000

10000000

11000000

Documents RoutedRequests GeneratedActions Taken

Page 27: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU - Users

2003 2004 2005 2006 2007 2008 20090

10000

20000

30000

40000

50000

60000

70000

Number of Unique Users

# of Unique Users

Page 28: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice at IU - Architecture

Load balancer with four clustered Kuali Rice standalone server instances

Use Tomcat as the servlet container Shared file system mount for attachments Oracle database Many client applications use an

embedded workflow engine This is our recommended integration model

There are a few “thin client” applications remaining which utilize plug-ins

Page 29: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

IU Kuali Rice Architecture

Page 30: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Scalability

Designed for horizontal scalability Load balancer helps to distribute

requests Could add additional application servers

to suit needs Over the years have moved from two

application servers to four to handle increased usage

Using embedded workflow engines also helps to distribute the load

Page 31: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

KIM Integration

Identity management at IU is handled by a separate team

Use a tool from Microsoft called “Identity Lifecycle Manager” Provisions identity data into KIM database tables Does so in as near real-time as possible

Implemented a custom SOAP service and published on the KSB to receive CRUD operations

Also integrates with Active Directory for groups

Page 33: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Enterprise Portal

Our Enterprise Portal is currently using a “closed-loop” version of the service bus to handle communication between different instances in their application cluster

Action List portlet Notifications Channel Future projects:

Bringing portal onto the enterprise bus Loading student calendars via web services KIM Integration

Page 35: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Problem Solved!

Created a multi-page form to collect all disclosures

Faculty with nothing to disclose can simply submit the form after filling in some info

For those with disclosures, cut the processing time from up to two months, to within a week

No more data entry costs – staff can work on other things

Reporting: Send reports to departments Run reports to determine who still needs to disclose Metrics

Page 36: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Research Administration – Conflict of Interests

Page 37: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Research Administration – Conflict of Interests

For those faculty with no disclosures, they can select all “No” and they are finished

If “Yes” is answered to any question, it takes them to a screen where they can enter disclosures

Page 38: Research administration Kuali Rice: Enterprise Middleware Solutions Geoff McGregor Terry Durkin

Rice - Future

Top level Kuali Project Investors, Project Board Application Roadmap Committee –

Features/Functionality Technical Roadmap Committee – Tools, Libraries

Rice 2.0 Summer 2011 Workflow GUI/Rules processing Version Compatibility (upgrade server/clients

separately) KRAD – Next-gen KNS, AJAX, updated tools