bzbyte.com developers search (login / register)
overview
logistics
Technical overview


The BZbyte reporting software is built using pure Java running on a J2EE server and a rich client. The client is a standard modern web browser that supports HTML with Javascript. We use and recommend JBoss as the default app server but you may use any app server you wish (Note the supported app server list. If your app server is not on the list, please enter a request to have it supported through our standard support process) . Supporting a new app server typically requires generating configuration files specific to that app server and adding that configuration to the BZbyte QA process.

To use the application, you would simply point your browser to a URL(e.g. http://localhost:8080/BZbyteReports). The browser will display an initial page with a wizard to guide the user through common tasks. The report editor will be displayed once a new report has been created. The report editor page is interactive and is used very much like a regular desktop application. It allows fields to be moved, resized, properties to be changed, and many more functions. It does this with little "round-trips" to the web site. The editor allows the user to edit the report locally in their browser and every once in a while the report editor will contact the web site in order to communicate the changes the user has made and to refresh the display as needed. In this way, the user gets an interactive experience without the typical delays experienced by most web applications. The other advantage to this system is that it's extremely portable because the web server can be running on any machine and users can simply use a web browser. This allows everyone in a company to use the software without having to install anything on their computers.

Development philosophies

Efficient Use of Time and Talent
We avoid doing tedious mindless work. We want developers to focus on value added business logic and behavior rather than mindless pattern coding. In this regard we follow the model driven architecture and model driven GUI principles often seen in most software. Most of our core objects are modeled using XML and our code generator generates all the tedious gets, sets, collections, events, config files for different app servers, equivalent Java script objects, and so forth. Our gui is modeled as well. The client side interactive gui is modeled very closely to the Java Swing toolkit. The major difference is that a lot of stuff is in Javascript for client side behavior. In addition we've created a transparent data bridging mechanism between Java objects that live on a server to Javascript that lives on a browser and vice versa. By using the model driven architecture tools, this is achieved with no additional effort.

GUI Model Driven architecture
Our gui's are modeled separately from their rendering using XML. For example, a GUI may have a user name and password field as well as a submit button. The developer will specify this without specifying the actual layout of these elements. What this provides is the separation of GUI behavior from its actual look. This is similar to applying a style sheet to a web site to change its looks. However the looks can be changed much more dramatically than that without changing the behavioral code. In addition when developing, developers can often make quick progress because the rendering of most GUI's is automatic. Standard layouts are used with properties from the GUI model providing sufficient information to render a complete GUI.

Learn More
For more information about our framework we encourage you to purchase the document subscription plan to get professional documentation that covers all these topics and more. The framework is open source and you are welcome to use it for no fee for your projects. Note that we have developed the features in the framework to support our products, dramatically reducing effort, and increasing quality. Note that supporting the product is the goal of the framework and that is what drives its features.
Copyright 2004-2005 BZbyte, LLC   info@bzbyte.com   submit feedback