Availdata Logo, link to home page

 
General Application Features
Every application we develop is different, because every business and non-profit is different.
 
Each application has unique aspects which reflect the business processes unique to that business.  Many businesses are not even aware of their business processes because they have never actually mapped them out.  That's why even the process of designing custom web applications, can be so beneficial for our customers.  The custom nature of each application, combined with the distributed nature, and built-in application support of the internet, is what makes these so completely transforming for our customers.
 
 
As unique as each one is, every application we create will have many similar features.  Some of the most important are listed below, grouped in the following categories:   

1.  Robust Roles Based Security Set-up  

2.  Intelligent Forms

3.  Built-in Content Management  

4.  Support for Cascading Style Sheets and Web site Customization  

5.  Exception and Error Handling  
Robust, Roles Based Security Set-up
 
Security for your web application will be set-up to mirror the roles different people play within your organization.  Using an example of a typical construction company, these roles may include:  customer, associate, job leader, project manager, office, accounting, admin access, admin.  

What this allows for is an orderly approach to security, one that mirrors the structure of your organization.  Additionally, this allows for using one of two constructs within your application: logged in user must be a member of ANY of these roles or logged in user must be a member of ALL these roles.

We set up applications in such a way as to allow for securing whole modules of the application, individual pages, and even individual page sections. And because we use data driven design principles, we can easily incorporate the security system to apply to the database as well.  So for instance, you can add entries to a table in the database and include access levels as part of the database record.  As an example, this will allow you to insert comments about a job into the job journal table and attach roles to each entry, so certain entries in the job journal only show if the person logged in is a job leader or project manager (it would not, in this case, be able to be viewed by the customer). In fact, you can even have the same page display different information depending on an individual's security role.
Intelligent Forms
 
Forms make up the bulk of any application. Whether they are forms for adding a new record to a database, editing an existing record or deleting records from a database, all forms should have some basic attributes.

Client and serverside validation:

Data needs to be validated. It will cause ugly errors and data corruption if a user attempts to put text in a field meant for a number or date. And although it may not cause an error, you don't want some one to enter obviously invalid values for an email address or phone number. Additionally, you may want to enforce rules for passwords...maybe you want them to have a mixture of numbers and characters, with no special characters (&^%$#@!*&) and to be between 8 and 12 characters long. We use client and server side validation on all of our applications.  

Client side validation is quicker for the user, but if they turn off javascript in their browser, client side validation won't run, so we also use server side validation.  Server side validation happens on the server, after the page is submitted and requires a round trip to the coldfusion server.  However, serverside validation runs regardless of how a user has his browser set up, so it is important to have both.

Form field Focus and tabbing order:

It is often helpful (but not always) for your form to have the cursor placed in the first text field.  It is also nice to have predictable tab ordering:  if first name and last name are grouped together, the user will expect his cursor to move from the first name field to the last name field when she hits the tab key. All our applications incorporate these features.

Handling session timeouts:

When a user's session times out and they are redirected to a log in page, it is quite helpful if they are returned to the page they were seeking.  Additionally, it is helpful if when, a page fails server side validation, if the user is redirected to the form with all the values they already typed in rather than having to type them all over.  We incorporate both in our applications.

 
Content Management System
Copyright 2006 © All rights reserved.
Privacy Policy
Availdata
P.O. Box 314
Monkton, MD  21120
Telephone: 410-215-7356
Fax:  410-229-0174
E-mail: info@availdata.com