210 likes | 355 Views
Introduction to Kuali Rice ITANA Screen2Screen: Kuali on Campus May 2009. Eric Westfall – Kuali Rice Project Manager. Kuali Rice Vision. Kuali Rice is a middleware framework Support the needs of the Kuali Application Projects Foundational middleware components and services
E N D
Introduction to Kuali Rice ITANA Screen2Screen: Kuali on Campus May 2009 Eric Westfall – Kuali Rice Project Manager
Kuali Rice Vision • Kuali Rice is a middleware framework • Support the needs of the Kuali Application Projects • Foundational middleware components and services • Enhanced software development framework • Leverage the middleware and development frameworks for building custom applications • Achieve sustainability through community source development and adoption • Iterate Rice architecture towards a Service Oriented Architecture
Kuali Rice Objectives • To create standard APIs to Rice components • To design components which are modular • To provide a reference implementation based on industry standards • To ensure intellectual property and open source license compliance is maintained • To promote adoption by a wide variety of institutions, primarily in higher education • To build a large community of interest with strong sustainability
Kuali Rice Components – Version 1.0 • KNS Kuali Nervous System • KEN Kuali Enterprise Notification • KSB Kuali Service Bus • KEW Kuali Enterprise Workflow • KIM Kuali Identity Management • We will now explore each of the components in more detail
KNS Overview • Provides reusable code, shared services, integration layer, and a development strategy • Provides a common look and feel through screen drawing framework • A document (business process) centric model with workflow as a core concept
KNS Development Paradigm CHART_T Chart(POJO) Data Dictionary ORMMap Lookups and Inquiries MaintenanceDocuments TransactionalDocuments Workflow(KEW)
Transactional Documents • These are data-entry centric documents or “transactions” that model the business processes • Examples include: Proposal Development, Journal Entry, Payment Reimbursement • Built on a case by case basis using the Kuali Rice tag libraries (encompass snippets of UI behavior): • Notes and attachments • Workflow route log (audit log) • Integrated with workflow
Maintenance Documents • No GUI programming required, user interface is rendered by framework • These are used for maintaining data • An easy way to maintain support tables in a database • Supports creation of new records and editing of existing records • Examples include: • Budget rates • Project codes
Other KNS Features • Data Dictionary • Question component • Notes and attachments • Pluggable business rules • KIM Integration for Authorization • System parameters
Ken Overview • Works with the action list to provide a single place for all university related communications • Workflow items come from KEW • Non-workflow items from KEN • Non-workflow example items • Overdue library book • A concert on campus • Graduation checklists for seniors
KEN Overview - Continued • Provides a secure and controlled environment for notifying the masses • Eliminate sifting through email • Communication broker which provides any combination of action list, email, or custom notifiers • Controlled by user preferences • Audit trail for all messages just as in KEW
KSB Overview • A common registry of services • Lists all services on the bus and how they can be connected • Through simple Spring configuration, Java based services can be “exported” from a rice enabled application as SOAP or Java Serialization over HTTP services • Common service locator paradigm - access services remotely or locally • Other “Rice Clients” can consume services published on the KSB
KSB Communication Models • Synchronous = P2P : waits for a response • Asynchronous = messaging : fire and forget : possible callback • Queues = single service retrieved from redundant set of services; only one invoked • Topics = all services retrieved from redundant set of services; all invoked
KSB Security • Bus level : option to digitally sign, WS-Security used for SOAP services • Service level security through Acegi • Service level, method level • User proxying through standard security models (i.e. CAS, Kerberos) • Security context passed along (user, authn token, roles) • Services can call authn/authz authority to validate context
KEW Overview • Provides a content-based routing engine. • Documents created from process definitions (Document Types) and submitted to the workflow engine for routing • Routing decisions made based on the XML content of the Document • Traditionally used for business transactions in the form of electronic documents that require approval from multiple parties. For example: • Transfer of Funds • Hire/Terminate Employee • Timesheet • Drop Course • Composed of a set of services, APIs, and GUIs
KEW – Core Features • Action List (User’s Work List) • Document Searching • Document Audit Trail (Route Log) • Flexible process definition (Document Type) • Splits, Joins, Parallel branches, Sub processes, Dynamic process generation • Rules Engine • Email Notification
KEW – Core Features • Notes and attachments • Wide array of pluggable components to customize routing and other pieces of the system • eDocLite • Framework for creating simple documents quickly • Plug-in Architecture • Packaging and deployment of routing components to the Rice Standalone Server at runtime
KIM - Overview • The Kuali Identity Management module will be includedinversion 1.0 of Rice • Provides identity and access management services to Rice and other applications • Includes a service layer as well as a set of maintenance screens • Supported Concepts include: • Entities and Principals • Groups • Roles and Permissions • Authentication
KIM – Overview • Shared identity and access management services that all Kuali projects can use • Generic enough to be used by non-Kuali projects • Provide a rich and customizable permission-based authorization system • All services available on the service bus with both SOAP and Java serialization endpoints • Provide a set of GUIs that can be used to maintain the data
KIM – Overview • Provide a reference implementation of the services but allow for customization/replacement to facilitate integration with institutional services or other 3rd party IDM solutions • Allow for the core KIM services to be overridden piecemeal • For example: override the Identity Service but not the Role Service
Further Information about Kuali Rice • The main Rice web site • http://rice.kuali.org • Sign up for our public mailing list • Access to our wiki