1 / 23

Navigation Framework using CF

Navigation Framework using CF. Architecture for a Client-Server Application using the open standards of the Web. presented by. Kedar Desai. Differential Technologies, Fairfax, VA. Navigation… a new paradigm. Non URL (menu based) navigation ‘FORM’ based application control

geordi
Download Presentation

Navigation Framework using CF

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. Navigation Framework using CF Architecture for a Client-Server Application using the open standards of the Web presented by Kedar Desai Differential Technologies, Fairfax, VA

  2. Navigation… a new paradigm • Non URL (menu based) navigation • ‘FORM’ based application control • ‘Queue’ and ‘Keys’ philosophy www.differentialtech.com

  3. What is Navigation? • User’s perspective • Ability to use the system in the most effective manner. • Designer’s perspective • Ability to manage or direct the course of the user using the system. www.differentialtech.com

  4. What is this ‘Client-Server’ application? • Two – tier application • Rich GUI • Thick client built using tools like, PowerBuilder or Visual Basic • MDI interface • Interacts with a database at the backend • Deployed using executables www.differentialtech.com

  5. Associated problems • Maintaining a code base • DLL hell • Distributing an exe • Maintaining help files • Difficulties in adding new functionality www.differentialtech.com

  6. About the Application • Justice Information System • Psuedo three tier architecture • Has a look and feel of a standard windows application www.differentialtech.com

  7. Application architecture Application Server Database ColdFusion 4.5 IE5.0, HTML, JS, CSS Sybase database www.differentialtech.com

  8. Challenges • 200+ database tables • 500+ functions • Database driven • Transaction intensive www.differentialtech.com

  9. Application frameworks • Two main frameworks • Navigation • Navigation • Error handler • Business Rules engine • Security • Each framework is an independent unit. www.differentialtech.com

  10. What is so great? • Uses ColdFusion. • Enables parallel development of user interface and application logic. • Gives a look and feel of a standard windows application. • Extends ColdFusion’s error handler. • Separates the GUI from the business logic. www.differentialtech.com

  11. Features of the Framework • Driven by keys. • Works on a queue architecture. • Maintains state in Session variables and allows multiple sessions from one client machine. www.differentialtech.com

  12. Message Module • Provides the ability to maintain messages in the database. • Functions include: • Search for messages • Add, Modify and Delete messages • View specific details about messages www.differentialtech.com

  13. Demo www.differentialtech.com

  14. Five ‘.cfm’ files per function Form page Main cfm OnError cfm CFForm cfm Presentation cfm Action page Action cfm Hidden fields Function Id Page Id Target Function Id Main cfm file name OnError cfm file name Action cfm file name Function Architecture www.differentialtech.com

  15. Form controller Opens the page Action controller Fires the action Error controller Handles errors Business Rules Engine Handles business rule validations Keys/Queue controller Maintains the keys and queues Navigation Controllers www.differentialtech.com

  16. What are keys? • Every function has a set of input and output keys • A key is a value that fetches data to be displayed on the page • If no keys exists, the default function is opened. www.differentialtech.com

  17. What is a queue? • Maintain information about the activities that the user wants to perform. • Works on FIFO logic. • Two types • Function queues • store the function id’s in a queue. • Data queues • store the keys in a queue. www.differentialtech.com

  18. Page loading process FORM Controller Main cfm file Error propagation is 5-4-3-2-1-0 www.differentialtech.com

  19. Action processing logic Action Controller Error propagation is 2-1-0 or 3-0 www.differentialtech.com

  20. Features • Secure access • Centralized action and form pages • Centralized error handler • Everything is a custom tag • Complete isolation of logic & presentation • Supports version control and independent development • F5 (refresh) works as in a browser www.differentialtech.com

  21. Points to ponder • Browser back and forward buttons a problem • Custom tag directory cannot be used • Not much use for Application.cfm www.differentialtech.com

  22. Productivity metrics • Built in under three months • A team of five and churning out a function every two days. www.differentialtech.com

  23. Thank You Visit us on line at www.differentialtech.com or write to me at desaik@differentialtech.com desaikedar@hotmail.com www.differentialtech.com

More Related