190 likes | 559 Views
KS configuration application workshop Kuali Days :: Chicago May 13-14, 2008 What part of Kuali student project are we talking about? August-December 2007 January-June 2008 June - November 2008 Technology selection phase UI framework, services devl, BRMS Config: ERP middleware
E N D
KS configuration applicationworkshop Kuali Days :: Chicago May 13-14, 2008
What part of Kuali student project are we talking about? August-December 2007 January-June 2008 June - November 2008 Technology selection phase UI framework, services devl, BRMS Config: ERP middleware Application architecture Services design R0, R1 design Technology stack selection document Application architecture Poof-of-Concept 1 UI framework selection Service development infrastructure Services design BRMS Proof-of-Concept 2 • R0 desisign and impl: • Dictionary • Search • Workflow • Rules • R1 design: • Learning unit mgmt
What part of Kuali student architecture are we talking about? Google Web Toolkit uPortal 3.0 UI layer ERP middleware KNS Identity mgmt KIM Workflow KEW Business rules BRMS Dictionary Search Eclipse workbench Code mgmt SVN Build Maven Unit test jUnit Mapping frameworks JPA Hibernate JAXB JAX-WS Technology stack Database Derby Service engine CXF Servlet container Tomcat ESB ServiceMix Rules engine Drools
Session objectives Session objectives • Overview of what configuration entails • The goal of the workshop is not to discuss specific implementation issues, but rather: • Scope and boundaries of the configuration tools • Business assumptions underlying the tools • Elicit feedback from the audience • Clarification on the Rice-Kuali Student relationship
What needs to be configured? What needs to be configured? • Configuring data (codes, internationalization, attributes) • Configuring searches • Defining rules • Configuring processes • Configuring security
What are the tools to do the configuration • What are the application components that enable configuration? Solutions for Kuali Student: • Search framework (tbd) • Dictionary services (tbd) • Workflow (KEW) • Authorization (KIM) • Rules management (BRMS under development)
Searching: assumptions Service layer assumptions • All objects will need to be searched for in some way • Each type of object will need it's own way of searching it (criteria specific to that object) • There will be a need to combine information (join) that is managed by different services • We can't assume the persistence mechanism for the objects (they won't all be in the same database) UX layer assumptions • Having a common way to do a search is less confusing and easier to learn • Maybe there is a “simple search” and an “advanced search”
Searching: scope and boundaries The search framework is not a data warehouse. Where do we draw the line between searching operational data and reporting from a data warehouse? • Operational data example:Students in Applied Science who won the Planck award last semester • Reporting example:What is the distribution of the Planck award across faculties over the last five years
Dictionary: scope and boundaries A collection of information about data fields • Code tables (enumerations). Eg country/state codes • Data validation (length, types, regex) • Configurable attributes • Labels (screen names for data fields)
Dictionary: assumptions/questions Question: • Should there be one set of dictionary services for the entire service stack -OR- • Should each service maintain its own dictionary?
Dictionary: assumptions/questions Person Service Contact Service Learning Unit Service Dictionary service -OR- Person Service Contact Service Learning Unit Service Dictionary Dictionary Dictionary
Dictionary: assumptions/questions Question: • Should there be a separate UI dictionary for: • Labels and text • Error messages • Internationalization
Identity management: scope and boundaries Scope of Kuali Identity Management (KIM) • Person identity information • Authentication • Authorization • Permissions • Roles
BRMS: scope and boundaries Any business rule. Here is one set of definitions from Ross: • Rejector (or constraint) E.g. • Pre-requisite, co-requisite rules • Degree audit rules • Producer (calculation or computation) E.g. • Fee calculation rules • GPA calculation rules • Projector – stimulus/response rule. E.g. • Triggering an admissions evaluation based on a rule about the completeness of data
What is the Business Rules Management System ? Business Service Business Service Business Service Execute Rules Get Agenda Drools BRMS Rules User Interface Executable Rules Rules Rules Metadata Rule Execution Engine Data Warehouse
Configuring processes: workflow • Workflow: managing processes that involve human interaction • Key components (of KEW): • Action lists (what I need to do next) • Routing (who needs to do what next) • Documents (a container for any object that needs to be worked on)
Security: scope and boundaries • Scope of Kuali Identity Management (KIM) • Person identity information • Authentication • Authorization
Discussion Discussion • Searching • Scope and boundaries • Business assumptions • Dictionary • Scope and boundaries • Business assumptions • Rules • Scope and boundaries • Business assumptions • Workflow • Scope and boundaries • Business assumptions • Authorization • Scope and boundaries • Business assumptions