Navigation Framework using CF - PowerPoint PPT Presentation

About This Presentation
Title:

Navigation Framework using CF

Description:

Navigation Framework using CF. Architecture for a Client-Server ... A team of five and churning out a function every two days. www.differentialtech.com ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 24
Provided by: cfc5
Category:

less

Transcript and Presenter's Notes

Title: Navigation Framework using CF


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

3
What is Navigation?
  • Users perspective
  • Ability to use the system in the most effective
    manner.
  • Designers perspective
  • Ability to manage or direct the course of the
    user using the system.

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

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

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

7
Application architecture
Application Server
Database
ColdFusion 4.5
IE5.0, HTML, JS, CSS
Sybase database
8
Challenges
  • 200 database tables
  • 500 functions
  • Database driven
  • Transaction intensive

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

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 ColdFusions error handler.
  • Separates the GUI from the business logic.

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.

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

13
Demo
14
Function Architecture
  • 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

15
Navigation Controllers
  • 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

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.

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 ids in a queue.
  • Data queues
  • store the keys in a queue.

18
Page loading process
FORM Controller
Main cfm file
Error propagation is 5-4-3-2-1-0
19
Action processing logic
Action Controller
Error propagation is 2-1-0 or 3-0
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

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

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

23
Thank You
Visit us on line at www.differentialtech.com
or write to me at desaik_at_differentialtech.com
desaikedar_at_hotmail.com
Write a Comment
User Comments (0)
About PowerShow.com