Custom Enterprise Solutions

The SureCode Platform - A Look Under the Hood

What is the underlying technology that facilitates our unique approach?

Every SureCode application is a highly generic program that abstracts and encapsulates the functional and visual elements that make up the application's unique features. As part of the abstraction process, the functional details of the application are parameterized so that they can be easily enabled and defined on an as needed basis. The same is done with the visual attributes. Once parameterized in this manner, a single code base can be instantly customized to realize a wide range of functionally and visually distinct solutions. This can be done through a simple process of selectively enabling or disabling attributes from the palette of available features.

Figures 2 and 3 provide a pictorial comparison between the construction of a traditional HTTP application and one realized via the SureCode approach.

Figure 2: The Traditional Approach

The traditional approach is depicted in figure 2 and is typical of the construction of most Intranet and Web applications. In this case, the user interface (a dynamic Web page) is generally embodied in two separate parts. The first part represents the static portion of an HTML page. This is typically realized in one of two ways, either as a stored HTML page or as HTML generated on the fly by a script. In either case note that the look and functionality of the resulting Web page is hard coded either directly in HTML or indirectly in the script that renders the HTML.

The second element of the traditional implementation represents the dynamic data. This data is usually loaded from a database and the resulting data set is then merged with the static portion of the page. Both pieces come together at the HTTP server to establish the applications user interface.

Figure 3: The SureCode Approach

Contrast this with the SureCode implementation depicted in figure 3. Here, the piece that produces the user interface is abstracted, parameterized, and split into four distinct layers of functionality. The first, the Abstraction Layer, provides for the basic functional aspects of the application. These functional aspects are made explicit and defined via properties specified in the Functional Layer. Likewise the visual attributes are separated from the first two levels and are provided as a distinct set of properties in the Visual Layer. The fourth level, the Branding Layer, provides additional image and HTML fragments that further establish the visual presentation of the user interface.

On a Surecode Application Server, the Abstraction Layer is realized in PERL. The Functional and Visual Layers are embodied in tables stored on a local MySQL database. These tables provide numerous attribute fields that control the functional flexibility coded into the Abstraction Layer. The Branding Layer is implemented as a set of HTML page fragments and image files that are also stored locally and combined with the other elements to produce the user interface.

Designing and building our applications in this manner enables us to rapidly customize and deploy a wide variety of solutions at a fraction of the time and cost required using the traditional approach.

Copyright (c) 1999-2007 SureCode Technologies. All Rights Reserved.