kuali bootcamp for interested technologists
DESCRIPTION
Kuali Bootcamp for Interested Technologists. Bryan Hutchinson - Cornell University (Development Manager) Jack Frosch – Kuali Foundation (Lead Developer). Agenda. Day 1 Kuali overview Kuali methodology Project Management Collaboration Tools (Confluence, JIRA, etc.) Overall Architecture - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/1.jpg)
Kuali Bootcampfor Interested Technologists
Bryan Hutchinson - Cornell University
(Development Manager)
Jack Frosch – Kuali Foundation
(Lead Developer)
![Page 2: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/2.jpg)
Agenda
• Day 1– Kuali overview– Kuali methodology– Project Management– Collaboration Tools (Confluence, JIRA, etc.)– Overall Architecture– Development Tools– Implementation– Demo– Q&A– Time Permitting: initial development environment config
![Page 3: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/3.jpg)
Agenda
• Day 2– Rice
• Day 3– Rice
• Day 4– Kuali Coeus Research Administration (KCRA) / Coeus
topics– How KCRA uses Rice– Look at some Code– Exercises
![Page 4: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/4.jpg)
Acknowledgements
Special Thanks to the following people whose previous Kuali Days and Cornell presentations provided material used in this presentation:
Andy Slusar, KCRA Project Manager, Cornell University
Jim Thomas, KFS Project Manager, Indiana University
Cath Fairlie, KS Program Director, The University of British Columbia
Terry Durkin, KCRA Development Manager, Indiana University
![Page 5: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/5.jpg)
Introductions
• Who are you?
• Where are you from?
• What do you do?
• What do you hope to get from this week?
![Page 6: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/6.jpg)
Kuali Overview
• What is Kuali?
• Organization
• Open Source Misconceptions
• Kuali Community Source
![Page 7: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/7.jpg)
What is Kuali?
• Kuali = Humble utensil that plays an important role in the kitchen.
![Page 8: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/8.jpg)
What is Kuali?
• The Kuali Foundation is a non-profit organization responsible for sustaining and evolving a comprehensive suite of administrative software that meets the needs of Carnegie Class institutions.
• Its members are colleges, universities, commercial firms and interested organizations that share a common vision of open, modular, and distributed systems for their software requirements.
• The goal of Kuali is to bring the proven functionality of legacy applications to the ease and universality of online systems.
• Kuali began as an open/community source initiative to create a financial system (KFS) for higher education.
![Page 9: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/9.jpg)
Kuali Foundation Projects
![Page 10: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/10.jpg)
Partner Institutions
QuickTime™ and a decompressor
are needed to see this picture.
QuickTime™ and a decompressor
are needed to see this picture.
![Page 11: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/11.jpg)
Commercial Affiliates
![Page 12: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/12.jpg)
How do we make it work?
![Page 13: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/13.jpg)
Foundation Organization
![Page 14: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/14.jpg)
Project Organization
![Page 15: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/15.jpg)
Project Organization
![Page 16: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/16.jpg)
Open Source Misconceptions
• Part time Developers
• Not industrial Strength
• Not well tested
• Hap-hazard governance
• No documentation
![Page 17: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/17.jpg)
Kuali Community Source
![Page 18: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/18.jpg)
Kuali Community Source
• Full Time Dedicated Development Teams • Dedicated Functional Resources• Built for 24x7 reliability and built to be scalable for use by
the largest institutions• Intensive QA/Testing process• Structured and well documented governance process• Extensive functional and technical documentation• Partner Institutions dedicated to the success of Kuali!• Commercial Affiliates available to provide expertise
![Page 19: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/19.jpg)
Kuali Methodology
• Guiding Principles
• The Reality Triangle
• Collaboration
![Page 20: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/20.jpg)
Guiding Principles
• Identify “best of breed” solutions from among partners as base for each module
• Develop Common Kuali User Interface • Leverage Kuali Rice architecture and development
standards (nervous system, enterprise notification, enterprise workflow and service bus)
• Functional Councils and the Subject Matter Experts Drive Functionality and Scope
• Application Roadmap Committee and Technical Roadmap Committee work together to govern Rice and Technical Standards/Directions of Kuali
![Page 21: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/21.jpg)
Guiding Principles
• Maximize commonality of business practices
• Make configurable as much as possible given time and resource constraints
• Create a Scope Statement which serves as the developments team’s “contract” with functional stakeholders
• Burden of proof falls on advocates for change to show benefits exceed costs
• All changes subject to “The Reality Triangle”
![Page 22: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/22.jpg)
The Reality Triangle
Scope Time
Resources
![Page 23: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/23.jpg)
Collaboration
Requirements for success
• Communications
• Governance
• Commitment
• Respect
• Trust
![Page 24: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/24.jpg)
Collaboration Tools
Project Organization and Coordination Confluence from Atlassian (wiki pages for
documentation, collaboration, etc)
JIRA from Atlassian (task tracking)
Sakai (document sharing, email archive, etc)
Omniplan, MS Excel and Project for project plans and Gantt charts
Resource planning sheets
![Page 25: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/25.jpg)
Effective PM?
![Page 26: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/26.jpg)
What is effective PM?
According to Project Management Institute:
• Initiation and Planning
• Execution and Monitoring
• Closing – transition to Sustainment
![Page 27: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/27.jpg)
Effective Project Management
• Initiation and Planning– Different Projects, Same Foundation
• Execution and Monitoring– The Reality Triangle– Resources– Communication & Collaboration– Tools
• Closing – transition to Sustainment– Implementation– Measuring Success
![Page 28: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/28.jpg)
Kuali Project Differences
• Project differences– KFS started with IU FIS– KCRA and the Coeus relationship– KS started with a vision– Team size/project scope– User community differences– Rice Evolution/Extraction
• Effective project management essential to all
![Page 29: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/29.jpg)
The Reality Triangle
Scope Time
Resources
![Page 30: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/30.jpg)
Execution & Monitoring -The Other Realities
COST RISK
![Page 31: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/31.jpg)
Project Resources
• Clear Role definitions
• Development Team SourcingTendered Resources
Onshore consulting
Offshore consulting
• Backfill for functional resources
• Training
![Page 32: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/32.jpg)
Managing Risk
• Identifying, analyzing, and responding to project risk
• Minimize the consequences of adverse events, which may prevent the project from meeting its objectives.
• Identify the highest-priority risks – focus on them as the project evolves
![Page 33: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/33.jpg)
Communications
• Good project management requires effective communications & collaboration
• Good communications requires:– A strategy and a plan– Communication/collaboration tools– Effective meetings
![Page 34: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/34.jpg)
Collaboration
• Collaboration is hard work. It requires:– Governance– Excellent communications– Relationship building – Respect & Trust– Commitment– Team Goals vs. Institutional Wants– Complementary competencies – everyone brings
something different to the table
• Results in better, more creative solutions• KIT – cross project collaboration and integration
![Page 35: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/35.jpg)
Communication Plan
![Page 36: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/36.jpg)
Communication Tools
• Choosing Communication Tools - the right tool at the right time– Face to face meetings or workshops– Video Conference/Skype video– Breeze (Adobe Connect)– Telephone / Skype audio conference– Chat/IM– Email
![Page 37: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/37.jpg)
Project Management Tools
![Page 38: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/38.jpg)
Project Management Tools
![Page 39: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/39.jpg)
Meetings/Status Reporting
• In person meetings are a good communication vehicle for reporting status and resolving issues– Board– Functional Council– Technical Council– Project Leadership meetings– Developer meetings– Code Reviews– One on ones– Face to Face meetings– Focus groups– Informal
![Page 40: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/40.jpg)
Effective Meetings
• Have an agenda
• Record Action Items
• Track and follow up
• Formation of ad hoc subgroups
![Page 41: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/41.jpg)
Sustainment
• Closing the project involves transitioning to sustainment
• Kuali projects are rapidly approaching completion and full transition into sustainment modelseveral implementation projects in the works
• Kuali Foundation Board working aggressively to define a detailed Sustainment modelTeam structure, resources, capacity
Funding model
Support processes
![Page 42: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/42.jpg)
Sustainment
• Closing the project involves transitioning to sustainment • Kuali projects are rapidly approaching completion and full
transition into sustainment model– Several implementation projects in the works
• Kuali Foundation Board working aggressively to define a detailed Sustainment modelTeam structure, resources, capacityFunding modelSupport processes
![Page 43: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/43.jpg)
How are we doing?
How will we measure “success”?
• Are we delivering working code that provides functionality that meets our SMEs expectations?
• Are we meeting our project deadlines?
• Do we have successful implementers?
![Page 44: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/44.jpg)
Working togetherWe can do it!!
![Page 45: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/45.jpg)
Collaboration Tools
• Confluencehttp://test.kuali.org/confluence
• JIRAhttp://test.kuali.org/jira/
• Sakaihttps://collab.kuali.org/
![Page 46: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/46.jpg)
Collaboration Tools Demo
![Page 47: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/47.jpg)
Kuali Architecture
• Service Oriented Architecture (SOA)
• Open Source Tools
• Kuali Rice
![Page 48: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/48.jpg)
Kuali Architecture
![Page 49: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/49.jpg)
Kuali Architecture
![Page 50: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/50.jpg)
Kuali Building Blocks
• Kuali Toolbox– Open Source Tools
• Struts - UI• OJB/JPA - Persistence• Spring - Services
– Rice builds upon and extends functionality• Struts - Mitigates common issues (POJO forms, Formatting,…)• OJB/JPA - DAO w/ Object Hierarchy; No custom code for POJO
persistence
![Page 51: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/51.jpg)
About Kuali Rice
• Software Development Simplified– Unified development platform– Diverse functional requirements
• Service Oriented Architecture (SOA)• Integration of Kuali Applications• Integration of existing Enterprise Applications• More Details on Day 2 & Day 3
![Page 52: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/52.jpg)
Rice Components
![Page 53: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/53.jpg)
Development Tools
• Development Toolbox– Eclipse– Junit / Httpunit– Jetty– Subversion (svn)– Maven
• Shared Tools– Continuum (CI)– Fisheye
![Page 54: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/54.jpg)
Implementing KCRA
• Rice components necessary for KCRA will be included out of the box– To run Rice services centrally (ex: KEW), the
implementing institution will have to plan and do more implementation work
• Main Configuration Points– Workflow (KEW) Configuration– Person / Group / AuthZ / AuthN (KIM) – Grants.gov communication (if implementing Proposal
Development)
![Page 55: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/55.jpg)
Implementing KCRA
• Data Migration / Interfaces– KRA is SOA - provide your own implementations as
necessary– Main Data Migration / Integration points will be
documented
• Kuali Coeus Release 1.0 - July 2008– Implementation Guide– KRA Packaging and Documentation– KRA Test Drive– Support Model
![Page 56: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/56.jpg)
Technical Competencies for KRA Implementation
• Straight Implementation– Java EE– Web Server (eg Apache)– Servlet 2.4 / JSP 2.0 Compatible Servlet Container (eg Tomcat)– Relational database (Oracle for release 1; future release will be
platform agnostic)
• For customization– Struts– OJB/JPA/ORM– Spring– Kuali Rice– XML
![Page 57: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/57.jpg)
Kuali Coeus Demo
![Page 58: Kuali Bootcamp for Interested Technologists](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56813391550346895d9a9e35/html5/thumbnails/58.jpg)
Q&A