87a6838b3453bff5f86360088c28aba8.ppt
- Количество слайдов: 25
Kuali Enterprise Notification Aaron Godert (Sr. Software Architect, Cornell University) John Fereira (Programmer/Analyst, Cornell University)
Introducing KEN n Kuali Enterprise Notification (KEN) provides a single list for all university related communications n n n Workflow items (KEW) Non-workflow items (KEN) Examples of non-workflow items: n n n Your book is overdue A concert is coming up on campus Graduation check list to all Seniors
A Single “Action List”!
A Kuali Rice Component n n n There are several middleware components that make up Rice KEN is one of them Each component works with the others to provide complementary technical functionality
A Communication Broker
Functional Goals n n n Eliminate sifting through email Quickly find what you need, to go about your university related business Provide a controlled environment n n n Eliminate unwanted messages, prevent duplication Integrated user and group management Audit trail Centralized communication broker More robust preference and searching capabilities
Functional Requirements n Three types of notifications: n 1. ) Things I have to do • Electronically (online) - KEW • Manually (physically) - KEN n 2. ) Things I need to know about • “School is closed - Snow Day!!!” n 3. ) Things I want to know about • “Dr. Nobel Laureate is coming to speak to the Computer Science club on…”
Functional Requirements n n n Target groups of people and specific people Control delivery dates Notifications automated by systems - s 2 s Manual entry of notifications - generic message form Event notification n n Integration with personal calendars Multiple delivery end-points n n Email Text message to mobile phones
Potential Consumer Applications n n n Bursar Applications Registrar Applications Library Applications n n n Overdue checkout item notices Item recall notices Event announcements
Technical Goals Adhere to SOA principles n Develop collaboratively using the Community Source model n Build using standard Open Source Java technologies n Re-use technical products in Kuali n
The Architecture
The Tools Java SDK 1. 5+ n Spring Framework n Service interface and implementations n Spring MVC n n Apache OJB n n Object relational mapper Oracle 10 g
The Tools n n n Open. Symphony Quartz n Spring integration Jetty JSP/JSTL XML/XSD n DOM/Xpath n XStream XSLT Apache Axis
Sending a Notification: s 2 s n Java API - Java services n POJO in and POJO out Notification n = new Notification(); n. add. Recipient(“Test. User 1”); … Notification. Response response = notification. Service. send. Notification(n); n String in and String out (XML) String notification. Xml =
Notification Request as XML
Content Types n Two content types provided out-of-the-box: n Simple n Event
Flexible Content Types n To add a new content type: 1. 2. 3. 4. Write the sample XML for inside of the
Flexible Delivery Endpoints n Java interface to implement n n Specify properties that would get set by a user in their preferences Property values would be used to actually deliver the message • Mobile phone # • Email address n Implement the “deliver()” method • Call out to an SMS API • Call out to an Email API
Project Status KEN 0. 9 delivered - May 2007 n Production ready; initial version n Available at http: //ken. kuali. org (click documentation link) n KEN 0. 9. 1 - late Summer n KEN 1. 0 - late Fall 2007 n
Features in 0. 9 n n n Send notifications via s 2 s API/WS call Send simple/event notifications via simple web form (workflow enabled) Users see notifications alongside of workflow items in a more general action list n n n Search for by channel, type, producer, sender, and priority - save for later use Take action on notifications - clearing/acknowledging Click on notification to see more details about the notification • View a log for the notification (who, what, where, when, why)
Features in 0. 9, continued n Users able to set up multiple delivery types n n n n OOTB with an email tickler Flexible content types (XML/XSD/XSL) Basic authorization - Notification Channel to Notification Producer mappings CAS end user authentication Basic user and group management Notification message reviewers Some administrative UIs
Roadmap n 0. 9. 1 n n n Better deployment of delivery types Bug fixes Small enhancements SMS delivery end point 1. 0 n n n Better Rice integration UIs built using KNS send. Notification() exposed on KSB • Acegi security • Web Service exposure (XFire) n Consistent configuration (Spring based)
Roadmap, continued n Out there n n n Portlets - action list and preference management Attachments s 2 s revocation of notification messages Ability to schedule recurring messages Full roadmap available at: https: //test. kuali. org/confluence/display/KEN/Roadmap n Full feature list available at: https: //test. kuali. org/confluence/display/KEN/Features
Demo n https: //test. kuali. org/confluence/display/KEN/Demo
Interested? Looking for contributors on the Kuali Rice effort and KEN n Looking for developers to write test clients in various technologies n Always open to new requirements n More information: http: //ken. kuali. org n Contact information: n http: //rice. kuali. org/contact. html


