Richard Spencer. Executive Director IT, University of British Columbia
AACRAO, Chicago IL, April 15, 2009
Kuali Student Overview
Kuali Student is...
a community source development projecta partnership of more than 10 institutions
focused on the needs of usersa better solution for institutions
222
2
a better solution for institutions
standards-based, SOA, open source making progress, with real deliverables
....this is not a sales pitch!but we are “enthusiastic believers”!
Agenda
• Why Kuali Student now?
• The Kuali vision
• Functional design
• Technical architecture333
3
• Technical architecture
• Project scope
• Timelines and progress
• Community source, partnerships
Why Kuali Student now?
Student system history
• BC– paper based processes– information silos in separate departments– the customer had to help us run the institution
SRS555
5 5
• SRS– on-line records, flat files, reports
• SIS– support for core processes in core departments– we began to help the customer– often more work & time for other users
Why Kuali Student?
• Many student systems need to be replaced
• New technology should let us do more
• Vendor solutions are not the answer for some
• Development of systems in-house is challenging
666
6
• Partnerships and open source system development works
• Community source let’s us build systems that:– do more for institutions
– do more for users
The Kuali Vision
Functional
• Focus on needs of all users – anticipate their needs and simplify tasks
• Support a wide range of learners and learning activities
888
8
activities.
• Support a wide range of academic and business processes.
• Make it easier to change rules and processes
• Store data outside the system, improve access
Technical
• Develop an architecture based on Service-orientation, implemented using Web Services.
• Use open source standard components
999
9
Use open source, standard components
• Publish service contract specifications
• Develop and use services that can be shared with other campus systems.
• Define and publish standards for development
Sustainability
• Founders will implement the core services• Adoption and implementation elsewhere• A community of interest to sustain
maintenance and development.
101010
10 10
maintenance and development.• Defined product development and support
processes to help implementation and support• Participation by vendors and service providers• Continue to evolve the technology and
architecture
Functional design
Functional Design Concepts
• High level entities– learning units, person identity, time
• Concierge– use what we know to help people achieve their goals
R l i k fl121212
12
• Rules engines, work flow– rules and logic are not in the code
• Modular, configurable system– your processes, not someone else’s “best practices”
• Managed access to information– people can see what they should be able to see
Learning Units
• A learning unit can represent:– a course; a single lecture in a course; a 15 minute student
presentation in a course– a degree program
a coop work placement an overseas work experience
131313
13
– a coop work placement, an overseas work experience– any non-credit, continuing studies, or other activity
• We can also have:– learning results– learning plans– learning resources
Person
Kuali Student’s use of identity management:• people are entities• easy to create an online identity• authentication is standard across systems
141414
14
y• authorization based on roles and rules• role creation by people or applications• authority is easily delegated when appropriate• good tools for role and group management• Identity management is an institutional service
Person-centric identity model
151515
15
Concierge
• use what we know about:– the person, the rules, the experience of others
• suggest valid choices– don’t make the user wade through choices that don’t apply
• apply and explain the relevant rulesdon’t expect the user to read and understand the regulations
161616
1616
– don t expect the user to read and understand the regulations
• anticipate peoples needs– these courses meet your requirements and match your interests
• integrate processes to make things easier– do you want to apply your tuition credit to your child’s registration?
• implement using rules and workflowsupport the end user!no training for things we know how to do!
Concierge
InstitutionalInformation
Requirements
PersonalInformation
We should use:
171717
1717
Requirements
Experiencesof others
Possibilitiesto support users
OptionsRecord
Status
Goals
Pitfalls
Rules
Concierge sits lookingand listening for changes ina person’s state, institutionrules, peoples experiences,
etc.
Concierge “sees”student accept offer
Concierge in actionability to register triggered by accepting offer of admission
Concierge “knows”rules and process
181818
1818
Concierge checks student info, program, required courses, elective opportunities, and guides student to solution
process ends when student has a complete program that meets her needs
Rules engine
Workflow
Uses
Information
rules and process
Rules
191919
19
...other design concepts
• Modular– modules can be used with existing systems
• Configurablel d kfl l h d
202020
20
– rules and workflow are external to the code
• Managed access to information– data is outside the core system
– all access is through a data abstraction layer
Technical architecture
Technical objectives:
• Service Oriented Architecture– SOA, web services, standards based– Separate governance process for service contracts
• Component abstraction– Abstraction of:
222222
22
– Abstraction of:• presentation layer• business processes• data layer
• Use open source technology– Use an open source software stack– Java as the language of choice
Application Architecture
rge
Concierge
Curriculummanagement
Admission Registration
Evaluation EnrolmentLearning Unit
Applications
Business
User Portal
232323
23
Conc
ier
Identityservice
Evaluationservice
Enrolmentservice
DataServices
frameworkRules engine
Rulesservice
Workflowservice
Learning Unitservice
us essServices
InfrastructureServices
Technology Stack
Technical architecture
242424
24
Project scope
Functional Scope
Tier 1 Functionality– Curriculum Development
– Customer contact
– Configuration application
– Enrolment
Tier 2 Functionality– Admissions
– Scheduling
– Awards and Financial Aid
– Concierge
262626
26 26
Enrolment
– Degree Audit and Academic Evaluation
– Student Financials
– Concierge – limited
– Application connectors
– Concierge
Out of Scope
Complementary Modules– Recruitment– Event Management– Housing
Athletics
Third Party Systems– Learning Management
System– Student Portfolio – Financial (FMIS) system
272727
27
– Athletics– Alumni– Family Financial Planning– Elections– Student Life
Financial (FMIS) system– Campus Calendar– Facilities Management– Library– Parking
Timelines and progress
Timeline
292929
29
Phased Modular Approach
User Requirements R1
Application Architecture
Technical Architecture
Development Infrastructure
Develop Infrastructure Services
Architectural Activities
One Time only
303030
30
Services Modeling & Contract Design R1
Application Design R1
Software Development R1
Implementation Support R1
Release 2
Release Activities
Repeat for each Release
Where we are today
Middleware services AvailabilityIdentity: Authorization Service NowIdentity: Group Service NowIdentity: Role Service NowIdentity: Authentication Service Now
313131
31
yIdentity: Organization Service JunePerson Service JuneWorkflow NowSearch interface NowDictionary interface JuneBusiness Rules Now
Community source, partnerships
Founder & PartnersFounders • University of British Columbia• University of California, Berkeley• University of Maryland, College Park• Florida State University• San Joaquin Delta College• University of Southern California
333333
33
Partners• Massachusetts Institute of Technology• Naval Postgraduate Institute• Cambridge University
• University of Southern California• University of Washington• Carnegie Mellon University
Other Supporters
Supported by:
• AACRAO
• NITLE
343434
34
NITLE Advancing liberal education in the digital age
The Andrew W. Mellon Foundation
Why Community Source?
• Benefits
– Shared resources = lower total development cost– Institutions share ideas and solutions– Community ensures sustainability
353535
35
– Commercial affiliates can provide support
• Kuali Student will
– Make all code available on a public website– Publish procedures and standards for use by others – Build a community to sustain, and add functionality
Outcomes -
Paths to adoption
• Stay connected and informed– KS newsletter – email Jennifer Foutty ([email protected])– KS website – student.kuali.org– Kuali Days events – Fall 2009
• Join the Kuali Foundation
363636
36
Join the Kuali Foundation– Help build the community
• Try modules as they are released– Down load and try open source code – Implement and configure – (work with a vendor?)– Share implementation experiences and enhancements
If it’s free, why contribute?
• Software is a fraction of the total cost …
– implementation, user support
– configuration, customization, maintenance
all cost dearly and require resources
373737
37
… all cost dearly and require resources• Becoming an active member …
– of a Kuali Project, or the Kuali Foundation
…is the least expensive way to grow these resources
Participation buys influence, helps implementation