I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work For You

1,013 views

Published on

Kuali Student provides institutions the ability to configure it according to their needs at various levels of its architectural stack. This includes allowing institutions to change labels/texts on User Interface, updating the constraints/searches around data, and finally changing the data schema itself. These configurations are primarily provided through managing a series of XML (dictionary/property) files. This session will give a brief overview of the KS 1.1 architecture itself and then quickly dive into showing concrete examples with screens on some of the most common configuration/customizations. There would be something of interest for business analysts, technical architects and developers in this session and presumes a very limited knowledge of KS concepts.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,013
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work For You

  1. 1. open source administration software for education next generation student system I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work For You Norman Wright, Business Analyst, University of Southern California Doug Chew, Systems Analyst, University of British Columbia Kamal Muthuswamy, Senior Application Systems Engineer, University of Washington
  2. 2. open source administration software for education In The Next 60 Minutes … • Introduction • Architecture • UI Configuration • Search Configuration • Data Configuration • Workflow Configuration • Challenge • Q/A
  3. 3. open source administration software for education From the Charter… • Kuali Student will be a modular, open source, standards-based next generation student system that will offer a flexible, scalable, cost- effective system that can be configured to meet the business requirements of any higher education institution
  4. 4. open source administration software for education That’s a tall order…. • We wanted a system that is infinitely configurable! • So we came up with….
  5. 5. open source administration software for education Welcome to Kuali Student R1.1
  6. 6. open source administration software for education No Actually… • The Charter Translated into reality…. • We analyzed not just the founder and partner schools but did a wide scan…. • How do schools actually differ? – Look and Feel – Validation – Text and labels – Additional Data – Lookups – Workflow
  7. 7. open source administration software for education Draw a Distinction between Validation & UI Validation • Cares about what – Data – Rules – Integrity • Must be rock solid • One Rule for all contexts User Interface • Cares about how – Look and feel – Ordering – Ease of Entry • Can allow in invalid data – and then validation gives error • Varies by context
  8. 8. open source administration software for education The resulting KS Architecture • Highly Configurable • SOA Based • GWT Driven UIF • Spring beans based configurations
  9. 9. open source administration software for education KS Architecture
  10. 10. open source administration software for education Configuring UI • GWT Deferred Binding • Themes • Hiding Sections / Fields • Messages
  11. 11. open source administration software for education KS Look and Feel
  12. 12. open source administration software for education Institution Look and Feel
  13. 13. open source administration software for education Hiding a Section / Field • Extend CourseConfigurer • Override methods • Deferred Binding to replace CourseConfigurer
  14. 14. open source administration software for education Removing the Financials Section
  15. 15. open source administration software for education Removing the Financials Section Before After
  16. 16. open source administration software for education Hide Pass Fail Field Before After
  17. 17. open source administration software for education Kuali Student Message Maintenance • Validation messages • Constraints • Labels • Help text • Instruction text
  18. 18. open source administration software for education Labels Before After
  19. 19. open source administration software for education Help Text Before After
  20. 20. open source administration software for education Configuring Lookups & Searches
  21. 21. open source administration software for education Subject Area as Search Oracle
  22. 22. open source administration software for education Subject Area as Drop Down
  23. 23. open source administration software for education Before xml • <property name="widget" value="SUGGEST_BOX" /> • <property name="resultDisplayKey“ value="enumeration.resultColumn.abbrevValu e" /> • <property name="resultSortKey" value="enumeration.resultColumn.sortKey" />
  24. 24. open source administration software for education After xml • <property name="widget" value="DROP_DOWN" /> • <property name="resultReturnKey" value="enumeration.resultColumn.abbrevValu e"/> • <property name="resultDisplayKey" value="enumeration.resultColumn.value" /> • <property name="resultSortKey" value="enumeration.resultColumn.sortKey" />
  25. 25. open source administration software for education Applies Cross-listing entry as well
  26. 26. open source administration software for education Start Term Before
  27. 27. open source administration software for education Start Term after
  28. 28. open source administration software for education XML For configuring what is allowed • <property name="key" value="atp.advancedAtpSearchParam.atpType" /> • <property name="name" value="Atp types" /> • <property name="desc" value="Atp types for courses" /> • <property name="caseSensitive" value="false" /> • <property name="writeAccess" value="NEVER" /> • <property name="dataType" value="STRING" /> • <property name="optional" value="true" /> • <property name="defaultValueList"> • <list> • <value>kuali.atp.type.Spring</value> • <value>kuali.atp.type.Fall</value> • <value>kuali.atp.type.Session1</value> • <value>kuali.atp.type.Session2</value> • <value>kuali.atp.type.Mini-mester1A</value> • <value>kuali.atp.type.Mini-mester1B</value> • </list> • </property>
  29. 29. open source administration software for education XML For configuring what is allowed • <property name="key" value="atp.advancedAtpSearchParam.atpType" /> • <property name="name" value="Atp types" /> • <property name="desc" value="Atp types for courses" /> • <property name="caseSensitive" value="false" /> • <property name="writeAccess" value="NEVER" /> • <property name="dataType" value="STRING" /> • <property name="optional" value="true" /> • <property name="defaultValueList"> • <list> • <value>kuali.atp.type.Spring</value> • <value>kuali.atp.type.Fall</value> • <!-- <value>kuali.atp.type.Session1</value> • <value>kuali.atp.type.Session2</value> • <value>kuali.atp.type.Mini-mester1A</value> • <value>kuali.atp.type.Mini-mester1B</value> --> • </list> • </property>
  30. 30. open source administration software for education Browse Catalog Before
  31. 31. open source administration software for education Browse Course Catalog After
  32. 32. open source administration software for education Data Configuration: Dictionaries • Central to KS data configurations • Spring bean based XML files • Manages constraints around data • Allows adding new data fields without code changes • Easy to extend and override • Consumed by both the services and UIF
  33. 33. open source administration software for education Data Configuration: Overriding default constraints • Basic constraints – minLength, maxLength, validChars, etc • Conditional constraints – When State = ‘active’ require Title • Lookup based constraints – Program Code should be in X lookup table • Custom constraint – Any custom logic for validating fields
  34. 34. open source administration software for education Basic Constraints: Before
  35. 35. open source administration software for education Basic Constraints: After
  36. 36. open source administration software for education Basic Constraints: XML • <bean id="courseInfo.courseNumberSuffix-parent" abstract="true"parent="cluIdentifierInfo.suffixCode- parent"> • <property name="name" value="courseNumberSuffix" /> • <property name="minLength" value=“4" /> • <property name="maxLength" value=“4" /> • <property name="validChars" ref="digits" /> • <property name="caseConstraint"> • <bean parent="caseConstraint"> • <property name="operator" value="EQUALS"/> • <property name="fieldPath" value="state"/> • <property name="whenConstraint"> • <list> • <bean parent="whenConstraint"> • <property name="values“> <list> <value>DRAFT</value> </list> </property> • <property name="constraint"> <bean > <property name="minOccurs" value="1" /></bean> • </property> • </bean> • </list> • </property> • </bean> • </property> • </bean>
  37. 37. open source administration software for education Custom Validation: Before
  38. 38. open source administration software for education Custom Validation: After
  39. 39. open source administration software for education Custom Validation: XML • <bean id="courseInfo.revenues-parent" abstract="true" parent="baseComplexRepeating"> • <property name="name" value="revenues" /> • <property name="dataObjectStructure" ref="org.kuali.student.lum.course.dto.CourseRevenueInfo" /> • </bean> • <bean id="courseInfo.revenues" parent="courseInfo.revenues- parent" > • <property name="customValidatorClass" value="org.kuali.student.lum.course.service.utils.RevenuePercentVal idator"/> • </bean>
  40. 40. open source administration software for education Data Configuration: Adding new fields • Dynamic attributes (DA) on most message structures • No code change required at the service level • All constraints available for DA • Expose DA as regular field to KS UIF
  41. 41. open source administration software for education Adding New Field: Before
  42. 42. open source administration software for education Adding New Field: After
  43. 43. open source administration software for education Adding New Field: XML • <bean id="org.kuali.student.lum.course.dto.CourseInfo-parent” abstract="true" parent="objectStructureDefinition"> • <property name="attributes“> <list> • <!-- Dynamic Attributes --> • <ref bean="courseInfo.finalExamStatus" /> • <ref bean="courseInfo.finalExamRationale"/> • </list> </property> • </bean> • <bean id="courseInfo.finalExamStatus" parent="baseString"> • <property name="name" value="finalExamStatus" /> • <property name="maxLength" value="15" /> • <property name="validChars" ref="alpha"/> • <!-- Maybe a lookup constraint to restrict the values --> • <property name="dynamic" value="true"/> • </bean>
  44. 44. open source administration software for education More Configuration • Configure ATP, Messages, Enumerations • Configure Rules (RequirementComp onents)
  45. 45. open source administration software for education Infrastructure Configuration • Tomcat 6.0.24 • JAVA JDK: 1.6.0_18 • RICE 1.03 • dB: • Oracle XE 10.2.0 for development and test • Oracle 11G in test • OS: Fedora 8
  46. 46. open source administration software for education Configuring Workflow • KSOR - Kuali Student Organizations • KIM - Kuali Identity Management • KEW - Kuali Enterprise Workflow
  47. 47. open source administration software for education KS Organization • Publication Office • Senate • Division • College • Department
  48. 48. open source administration software for education UBC Organization Approval Hierarchy • Publication Office • Senate • Faculty • Department
  49. 49. open source administration software for education Positions and People • Define positions in organizations • Add people in Kuali Rice (KIM) • Configure KIM for field level authorization
  50. 50. open source administration software for education Organization Memberships • Memberships - add people to positions • Workflow tied to positions
  51. 51. open source administration software for education KS Approval Workflow
  52. 52. open source administration software for education UBC Approval Workflow
  53. 53. open source administration software for education Complex Workflows - Branches • Branches • Logic Split Nodes
  54. 54. open source administration software for education Undergraduate Course Proposal Workflow
  55. 55. open source administration software for education Graduate Course Proposal Workflow
  56. 56. open source administration software for education Standard UBC Workflow
  57. 57. open source administration software for education Pilot Course Workflow Proposal Workflow
  58. 58. open source administration software for education Summary • Highly not Infinitely Configurable • Leverage Configurability in Rice • Clean separation of different layers of archictecture • KS Configuration Guide
  59. 59. open source administration software for education KS Configuration Challenge
  60. 60. open source administration software for education Questions

×