Demystifying Kuali Rice – Presenters: Jessica Coltrin, Eric Westfall, Bill Yock Panelists: Dave...
-
Upload
jeffry-norris -
Category
Documents
-
view
213 -
download
0
Transcript of Demystifying Kuali Rice – Presenters: Jessica Coltrin, Eric Westfall, Bill Yock Panelists: Dave...
Demystifying Kuali Rice –
Presenters: Jessica Coltrin, Eric Westfall, Bill YockPanelists: Dave Keiffer, Michael Oatley, Tony Potts, Hampton Sublett
Date: Wednesday, Nov. 16th, 2011Time: 10:00am – 12:15pm
Executive Overview, Introduction to Rice,and Panel Discussion
Executive Overview of Kuali Rice
• What is Kuali Rice• The Value of Kuali Rice• Who is Using Kuali Rice• How is Kuali Rice Used• Governance of Kuali Rice• Strategic Directions for Kuali Rice
Agenda
What is Kuali Rice?
Kuali Rice – Serving the Other Projects
Kuali Rice Components
eDocLite Applications
KIM/KEW/KEN/KRMS Connectors
Kuali Service Bus (KSB)
KNS Enabled Applications(KFS, KC, Custom Rice Apps, Etc.)
Service 1 Service 2 Service 3
KIM/KEW/KEN/KRMS Connectors
KRAD Enabled Applications(KS, OLE, Custom Rice Apps, etc.)
Service 1 Service 2 Service 3
KIM/KEW/KEN/KRMS Connectors
Legacy Application Integrations
KSB Connector
KNS KRAD
Kuali EnterpriseWorkflow (KEW)
Kuali EnterpriseNotification (KEN)
Kuali IdentityManagement (KIM)
Kuali Rules Management (KRMS) Enterprise Portal
Middleware Services
Application Development Frameworks
Why Rice?
Kuali Rice is the only application development framework and middleware suite developed by a higher education community. The advantages include no vendor lock-in, a robust, innovative and active co-creation development model focused on the needs of higher education, and the potential for a significantly lower total cost of ownership.
TCO of Kuali Rice?
Source: http://www.netc.org/openoptions/pros_cons/tco.html
The Kuali community has dramatically rallied to reduce implementation and support costs!
Who is Using Kuali Rice?
• Over 32 Higher Education Institutions! kuali.org/rice/implementations
• 1 City Municipality• All institutions implementing KFS, KC, KS, OLE• Several institutions implementing custom Rice
Applications
How is Kuali Rice Being Used?
Extending ERP Systems:• Timekeeping system• HR hire, terminate • HR pay raise, additional pay• HR Leave requests• Travel authorizations• Travel reimbursements, etc.• Add/Drop courses • Faculty annual reporting• Schedule of classes • Grade changes • Access card requests• Health center appt requests • Data access requests
Custom-built systems:• Merit and Promotions• Inventory control workflow• Motor pool request • College request for absence• Supplier registration forms• Tuition change requests
Flexible IntegrationsInnovative SolutionsRapid DevelopmentEnterprise Scope
Kuali Rice is on FIRE
The Kuali Rice Charter Includes
• Vision, Objectives, Key Success Factors• Implementation Considerations (Licensing,
documentation, QA approaches, etc.)• Project Delivery Approaches (major / minor
releases, etc.)• Project Management Practices (planning,
communications, change requests, etc.)• External Marketing and Communication• Project Organization and Governance
Kuali Rice Values and Principals
Development Ease of Use - quick references and lookups, templates and scaffolds, auto code generation
Ease of Implementation – standard configuration files, global parameters, parsers and ingesters, wrappers and API integrations
Modularity – loosely coupled components, reusability, swappability
Industry Standards – leverage Java standards, tools and conventions
Project Standardization – standard naming conventions, documentation, messaging and error handling
Version Compatibility – backward compatibility, cross product compatibility with other Kuali software
Service Orientation – technology neutral APIs, standard service operations, standard message protocols
Kuali Rice Project Governance
Kuali Foundation Board
Kuali Rice Board Technical Roadmap CommitteeApplication Roadmap Committee
Kuali Application Integration Working Group
Rice Project Manager
Kuali Technical Integration Working Group
Configuration ManagementKuali Infrastructure
Rice Software Development
Kuali Rice Investing Partners Kuali Rice Investing Partners Kuali Rice Investing Partners
Kuali Application Project Partners Kuali Application Project Partners Kuali Application Project Partners
Infrastructure Director
Support Specialist
Lead Configuration Manager
Configuration Managers
Rice Lead Architect
Business Analyst/QA Lead
UX Architect
Development Managers
Developers
Kuali Rice Strategic Directions
• Continue to serve strategic needs of Projects• Improve Integrate-ability of Rice• Leverage Existing Open Source Communities• Embrace Industry Standards• Remove Barriers to Entry and Adoption• Improve Marketing to Interested Parties• Leverage Expertise from other Projects and
Communities• Encourage Contributions and New Partnership Models
Proposed Partnership Models
• Investing Partners – Project Dues plus 1 FTE for 2 yrs (voting rights on board, ARC, TRC)
• Contributing Partners – Project Dues plus .5 FTE for 1 yr (Allow staff to get in depth knowledge of Rice to support implementations)
• Joint Venture Partners – Dues and contributions as agreed upon (Allows targeted development of major components or functionalities)
Current Partnerships
• Investing Partners– Clemson University– Cornell University– Iowa State University– Indiana University– UC – Davis– UC – San Diego– University of Maryland– University of Washington– Kuali Financial System– Kuali Student– Kuali Coeus– Kuali OLE
• Contributing Partners– Naval Post Graduate School– Kuali Foundation
• Joint Venture Partners– Kuali Student
Introduction to Kuali Rice
• Rice Software Overview– Middleware Services– Application Development
Frameworks
• Project Development Methodology
• Technical Services for Kuali Community
Agenda
• Middleware Services– Kuali Service Bus (KSB)– Kuali Identity Management (KIM)– Kuali Enterprise Workflow (KEW)– Kuali Enterprise Notification (KEN)– Kuali Rule Management System (KRMS)
• Application Development Frameworks– Kuali Nervous System (KNS)– Kuali Rapid ApplicationDevelopment (KRAD)– eDocLite (EDL)
Digging into Rice – The Alphabet Soup
Middleware Services
• Kuali Rice is a service-oriented platform• What’s a “Service”?
OASIS defines a service as…
“A mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description.”
Point to Point Service Calls
Service Service Service Service
Consumer Consumer
Kuali Service Bus
Service Service Service Service
Consumer Consumer
Service Bus ServiceRegistry
Kuali Service Bus
• Service Registry• Service Location and Discovery• Synchronous Service Invocation• Asynchronous Reliable Messaging
– Message “Queues” and “Topics”• Failover and Load Balancing• Security• SOAP, REST, Java Serialization
Kuali Identity Management
• Identity and Access Management Services• Identity Registry, Groups, Roles, Permissions• IAM service integration “platform”• Reference implementations of services• Services shared across all Kuali applications• General enough to be used outside of Kuali
Authorization as a Service
GroupsPerms
Application Code
Perms
Application CodeWho has access to what?
Authorization as a Service
GroupsPerms
Application Code
Application CodeWho has access to what?
Kuali Identity Management
Kuali Enterprise Workflow
• Content-based routing and approval engine• Action List• Route Log• Document Search• Notification• Pluggable Frameworks for Building Workflow
Components
Kuali Enterprise Notification
• Processes and dispatches notifications• Works in conjunction with the Action List
– Unified notification channel
• Examples:– Overdue library book– A concert on campus– Graduation checklists for seniors
• Has ability to build and plug in other “delivery” types– Email– SMS– IM
Kuali Rule Management System
• Implements a Business Rule Management System (BRMS) for Kuali
• BRMS - a system used to define, deploy, execute, monitor and maintain business rules
• Business Rules – decision logic that is used by operational systems within an organization or enterprise
• Consists of a rule repository and a rules execution engine• Can be integrated and used with other modules of Rice
– KEW for defining routing rules– KRAD for validation rules
Application Development Frameworks
• KNS, KRAD, and eDocLite• Utilize the Rice middleware services• KNS is the legacy development framework
– Used to develop KFS and KC• KRAD is the eventual replacement
– First phase released with Rice 2.0• eDocLite is for form-based application
development
Kuali Rapid Application Development
• An effort to “modernize” the Kuali development platform• Why KRAD? What’s wrong with the KNS?
– Struts 1.x based, KRAD is Spring MVC-based– Very little built-in rich user interface support– User experience is targeted to administrative users– Only has built-in support for a small set of screen types
• However, most of the core architectural concepts and frameworks from KNS are still relevant in KRAD
• Powered by the “Data Dictionary”• Phase 2 of KRAD to be delivered with Rice 2.1
eDocLite
• Quickly take paper-based forms online• Backed by the power of KEW• Small amount of development effort• eDocLite applications are “hosted” within the
Rice server• Great for projects in departments who don’t
have development resources• Uses XML Stylesheet technology
Project Release Cycles
• Road Map for major/minor releases prioritized by ARC, consists of Kuali project and institution partners– Major releases every 2-3 years– Minor releases approximately every 6 months
• Milestone releases every 2-4 weeks
Kuali Rice Road Map
View full Roadmap at https://wiki.kuali.org/x/KXxyEgRice Road Map Session at 1:15 in Room 209
Project Development Methodology
• Agile-like development methodology with automation wherever possible• Frequent, time-based, usable release iterations of 2-4 weeks• High level roadmap items broken down into chunks that fit a milestone timeframe• Design occurs in iterations with constant re-evaluation of priorities• Daily standups for development teams• Continuous integration environment runs nightly, over 3000 unit, integration, and
functional tests using jUnit and Selenium• Manual acceptance testing run before a milestone is complete
Rice 2.0 Development Timeline
Technical Services & Standards
• In addition to the Rice software, the Rice project manages some cross-project technical services
• Some are more developed, i.e. Infrastructure and Configuration Management
• UX: Kuali Student has developed a strong set of User Experience (UX)standards and Rice UX is working with them to share these standards
• QA and Documentation standards are possible future areas for expansion of services
Kuali Infrastructure• Team of 2 supports common infrastructure for all 8 Kuali applications and Kuali
Foundation administrative team• Includes:
– administration and support of development & collaboration tools, i.e. Jira, Confluence, Google Docs, kuali.org website, svn source control, fisheye, etc.
– development of Kuali Information System (KIS) directory of community members and group/account management
– development of standards around use of tools like Amazon EC2 cloud infrastructure for test servers and svn directory structure and training projects on using them
– manages IP practices via access for contributors and software licenses for purchased software
– manages accounts for mobile app stores, inCommon membership, Amazon billing, SSL certificates, domain registration, etc.
– provides backup for Kuali Ready SaaS service• Always more work than available resources, but the necessary things are always
addressed
Configuration Management Service• Goal: Pool CM resources to form a
service that provides dedicated technical management, effective processes and tools to build, package, and deploy code for all Kuali projects.
• Currently contains Rice and Kuali Student, but will soon include Mobility and OLE
• Other projects will join as they can afford & fit into their project schedules
• Achieve economies of scale by using the same resources to implement common CM processes
Community Involvement & Support
• Collaboration list for support questions and other discussion: [email protected]
• Bi-monthly collaboration/user’s group meeting • Contribution Process
– Bug fixes handled through project JIRA queue– Contribution JIRA queue to manage larger
contributions, cross-project contributions, others
Panel Discussion
• Dave Keiffer – Ohio State University
• Michael Oatley – University of Connecticut
• Tony Potts – rSmart• Hampton Sublett – UC
Davis• Eric Westfall – Indiana
University
More Information
• Kuali Rice website: http://kuali.org/rice• Kuali Rice wiki page:
https://wiki.kuali.org/display/KULRICE/Home
• Questions? Email [email protected]