1 / 43

Benefiting from Kinetic Bundles

Benefiting from Kinetic Bundles. Ben Christenson Kinetic Data. About Me. Ben Christenson Employee at Kinetic Data for 12 years and a member of the Product Development team for the past 6 years . Co-developer of the Kinetic Bundles strategy and implementation. Wha t is a Kinetic Bundle?.

oprah
Download Presentation

Benefiting from Kinetic Bundles

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Benefiting from Kinetic Bundles Ben Christenson Kinetic Data

  2. About Me • Ben Christenson • Employee at Kinetic Data for 12 years and a member of the Product Development team for the past 6 years. • Co-developer of the Kinetic Bundles strategy and implementation.

  3. What is a Kinetic Bundle? • Evolution of our theming strategy

  4. How did Bundles come to be? • Evolution of themes • Way to apply branding to Kinetic forms • Required to • Simplify initial web presence implementation • Share work • Implement more complex interfaces

  5. Disclaimer • Kinetic Data focuses on the most common tasks • Implementing a theme typically occurs once • Developing or configuring a Bundle is simple, but… • Requires familiarity with HTML/CSS/Javascript • May require familiarity with Java

  6. Request Bundle - Klean • The first available Kinetic Bundle is named “Klean” • Bare-bones sample • Heavily documented • Starting point for bottom-up development • NOT a drop in solution • Being used by professional services

  7. Klean: Base Package • The base package is responsible for rendering Kinetic form content

  8. Kinetic Request Primer • Kinetic Request is a Java Web Application • Accessed from a Web Browser • Kinetic Request forms apply a Theme • Specify a JSP to use for rendering the HTML • Are styled by CSS • Leverage Javascript for dynamic interaction

  9. Deploying a Bundle • Download the bundle • Copy the contents • Configure the display page • Open the form

  10. What is a Bundle, technically? • Self contained directory • Stored within the /kinetic/themes directory • Includes four component subdirectories • The common root package. • The core root package. • A collection of helpful libraries. • A collection of additional packages. • Key Concept: Packages

  11. Klean: Catalog Package • The catalogpackage is responsible for rendering catalog content

  12. What is a Package, technically? • Root Packages • Common • Core • Packages Subdirectory • Base Package (Display and Review logic) • Service Catalog or Service Portal • Fulfillment Console • …

  13. What comprises a package? • Packages are organized into four types of files • Configuration • Framework • Interface • Resources

  14. Package Organization: Config • Files in the configdirectory • Modify configurable behavior • Set variables used throughout the bundle

  15. Package Organization: Framework • Files in the frameworkdirectory implement the technical internals of the package. • Helpers • Includes • Models

  16. Package Organization: Framework/Helpers • Used to wrap common functionality

  17. Package Organization: Framework/Includes • Load all of the framework files

  18. Package Organization: Framework/Models • Abstracted interface to backend data

  19. Package Organization: Interface • Files in the interfacedirectory • Specify the content that is displayed • Typically render HTML • May render JSON or XML • Includes the callbacks and fragments subdirectories

  20. Package Organization: Interface • Page JSPs (display.jsp, review.jsp) • Includes common interface fragments • Includes Kinetic form content • Portal Page JSPs (catalog.jsp, login.jsp, etc) • Includes common interface fragments • Typically has no Kinetic form content

  21. Package Organization: Interface/Callbacks • Specify content for asynchronous (AJAX) request • Search results • User details • Submission details

  22. Package Organization: Interface/Fragments • Reusable fragments referenced from interface files • Template page content (headers/footers)

  23. Package Organization: Resources • Files in the resources directory are referenced by the files in the interface directory. • CSS • Images • Javascript

  24. What comprises a bundle? • Bundles are organized into four directories • The common root package. • The core root package. • A collection of helpful libraries. • A collection of additional packages.

  25. Bundle Organization: The Common Package • Origin – Need to share content • Improves reusability and consistency • Reduced duplication • Resources (CSS, Images, Javascript) • Similar UI

  26. Klean: Common Package

  27. Bundle Organization: The Core Package • Contains interface fragments required to make Request work • Core Models • Catalog, Category, Submission, Template • Task, TaskMessage • Wrappers • bundle • context • customerRequest

  28. Klean: Core Package

  29. Documentation

  30. Bundle Organization: Libraries • Re-usable solutions • Often highly technical or difficult to implement • Examples: • Advanced Search • Server-side paginated tables

  31. Libraries: Advanced Search • Example of the power of callbacks

  32. Bundle Packages • Increase portability of consoles and interfaces • Typically Include • A base packagefor rendering service items • A catalog package for rendering the service portal • May Include • A submissions package for rendering submitted items • …

  33. Klean Package: Submissions • Provide users with access to their submissions

  34. Additional Packages • Distributed on Kinetic Community • Can be dropped in to any bundle • Minor modifications to apply styles and branding

  35. Activity Package • Provide users with access to… everything

  36. Assignment Package • Example of the power of models

  37. Integration Packages • my-eService

  38. Bundle Benefits: Organization • Organizational consistency • Easier to read and write • Easier re-use • Self-contained • Exist side by side with existing themes

  39. Bundle Benefits: Portability • Everything is a relative reference • Easier replication of packages or entire bundles • Zero effort migrations between Dev/QA/Prod • Packages and libraries are self contained • Easier to share

  40. Bundle Benefits: Callbacks • More flexible than Simple Data Requests • Can make multiple data queries • Can build complicated relationships • Can implement complicated data translations

  41. Bundle Benefits: Models • Simplify code • Abstract backend interaction • Focus on the UI • Changing data backend • Provide a reasonable approach for full CRUD • Synchronous processing

  42. Bundle Benefits: Performance • Fewer asynchronous requests • Don’t see visible delay between page loading and data populating • Server side pagination • Leveraging callbacks and Java • Model association loading • Load all records in one query

  43. Conclusion • Questions? • Personal Contact Information: • Ben Christenson • ben.christenson@kineticdata.com • 651.556.0937

More Related