Kuali Nervous System (KNS) Part 1

Document Sample
Kuali Nervous System (KNS) Part 1 Powered By Docstoc
					Kuali Nervous System (KNS)
           Part 1
               Presented by:
  Jerry Neal – KFS Development Manager
   Geoff McGregor – KC Lead Developer
  Brian McGough – KRice Project Manager


                     1
                           Today’s Presentation
• A short KNS History Lesson
• KNS Functionality (Concepts and Live Examples)
  – Lookups
  – Inquiries
  – Maintenance Documents
  – Business Objects
  – Data Dictionary



                       2
                                         KNS History

• KFS project charter established late 2004
• Technical Architects from contributing institutions
  identified (early 2005)
• Technical Architects charged with creating an underlying
  infrastructure upon which we could build KFS
   – Identify toolset
   – Identify highly reusable components
   – Identify development strategies that could scale to a
      large development team, and decrease per unit
      development costs
• Work kicked off to build KNS v1.0 (Jan – June 2005)
                           3
                                            KNS History

• KNS Leverage begins, development of KFS development
  starts in earnest using KNS (June 2005)
• Several small tweaks made to ensure KNS fit needs of KFS
  development
• KNS v2.0 developed to enhance functionality and retrofit
  based on early development experience (Oct - Dec 2005)
• Since the end of 2005, there have been many changes to the
  KNS, but only as needed based on functional requirements to
  better meet our functional customer needs.
• Additionally enhancements for institutional deployments have
  always been considered and in most cases implemented.


                             4
                                 KNS History Wrap Up

• Along came KC
• Could we leverage what we had done for KFS?
• Was there overlap in infrastructure needs?
• Was there gaps in infrastructure needs?
• YES, we Can, Yes, there were, and Yes there were
• So evolution of KNS was needed
• KNS extracted from KFS, and the Rice project was born
• The Rice project is the middleware reusable elements
  available to all Kuali Projects
• KNS Continues to evolve to meet our functional application
  needs even today

                             5
                 KNS Functionality (Lookups)

• Provide ability to search an application entity with
  consistent look and feel
• Rapid development of new lookups with XML
  configuration
• Easy customization through XML for basic modifications
  and hooks to Java code for more advanced feature
  changes
• Integrates with other application functionality:
   – Search and return value(s)
   – Search and link (e.g. maintenance)


                          6
                  KNS Functionality (Lookups)

• KFS Demo
  – Lookup functionality in the KFS is used to search for
      entity records, provide admin functions and reporting
  – Lookup Examples
• KC Demo
   – KC uses lookups to maintain reference data, search
     and link reference data on forms, and query
     Grants.gov via web services
   – Lookup Examples



                           7
                 KNS Functionality (Inquiries)

• A way to drill down and get more information about a
  table record




                           8
                  KNS Functionality (Inquiries)

• KFS Demo
   – KFS uses inquiries to provide record detail and
     balance inquiries
   – Inquiry Examples
• KC Demo
   – KC uses inquiries to provide more detail on lookup
     results, inquiry results and form data
   – Inquiry Examples




                           9
               KNS Functionality (Maintenace
                                 Documents)

• These are the CRUD documents - an easy way
  to maintain support tables in a Kuali database
  –   C: Create new table records
  –   R: Read or query table records
  –   U: Update existing table records
  –   D: Delete existing table records
• Designed to be built in a rapid and standardized
  way, with hooks for customization if desired




                            10
              KNS Functionality (Maintenace
                                Documents)

• KFS Demo
   – KFS uses maintenance documents to create and
     update reference data and apply global changes
   – Maintenance Examples
• KC Demo
   – KC uses maintenance documents to create and
     update reference data and customize system behavior
     in real-time
   – Maintenance Examples



                         11
                  KNS Functionality (Business
                                      Objects)

• Plain old Java objects (POJOs) that implement
  org.kuali.core.bo.BusinessObject interface
• Contain behavior to enable rapid development of
  standard CRUD functionality; can be extended for non-
  standard functionality
• Passed through all layers of the application architecture
  from presentation to persistence




                            12
                 KNS Functionality (Business
                                     Objects)

• KFS Business Object
   – KFS uses business objects to model and encapsulate
     data and relationships in the system
   – Business Object Examples
• KC Business Object
   – KC uses business objects to model and encapsulate
     data and relationships in the system
   – Business Object Examples




                         13
                        KNS Functionality (Data
                                   Dictionary)

• Describes the entities in your system and their related
  meta-data
• Used to describe Transactional Documents, Maintenance
  Documents, Business Objects and their related
  lookups/inquiries
• Used by several functions throughout the system,
  including:
   – UI rendering
   – Validation checks
   – Document authorization
   – Workflow integration
                          14
                        KNS Functionality (Data
                                   Dictionary)

• KFS Data Dictionary Entry
   – KFS uses the Data Dictionary for KNS frameworks
     and also to add additional accounting line support
   – Data Dictionary Examples
• KC Data Dictionary Entry
   – KC uses the Data Dictionary to build maintenance
     documents, transactional documents, lookups and
     inquiries
   – Data Dictionary Examples



                           15
                      Kuali Nervous System Part 1
                                         Wrap up
• Components that we saw
   – Data Dictionary
      Ties it all together
  – Business Objects
      Represent Entities in the system
  – Maintenance Documents
      Allow for maintenance of Business Objects (Entities) through
       mediated or unmediated transactions
  – Inquiries
      Allow for Drill down detail functionality and relationships
  – Lookups
      Allow for finding the Business Object Record that you want to
       maintain or reference in the system

                                  16
             Kuali Nervous System Part 1
                       Wrap Up Diagram

Lookups
  and                     Workflow               Maintenance
Inquiries                  (KEW)                 Documents




                                       Chart
               Data                  (Business
             Dictionary               Object)



              Business            ORM
            Object Backing       Mapping

                Tables



                           17
            Up Next: Kuali Nervous System
                                    Part 2




• Questions on what you have seen in Part 1?




                         18