The Advantage XML
Framework is a light weight business application framework
designed exclusively for the ASP.Net and Visual FoxPro
development environments. The XML Framework is comprised of
reusable code modules ("building blocks") that provide
functionality to your application. The code modules have been
optimized and tested and provide a stable foundation for your
application.
Code Modules
The code modules of the framework expose a wealth of
functionality to your application eliminating the need to
write every line of code from scratch. This approach permits
the Advantage programmers to focus on the elements of the
application specific to your business, including user
interface design, database model and business rules. While
allowing the XML Framework to handle common tasks such as
initializing the application, displaying the menu system,
login security, communication between the various layers
along with a multitude of other functionality.
Since the XML framework is modular,
only the code modules necessary for your application are
compiled into your application. If you are planning on
performing maintenance programming on your application this
approach reduces the source code learning curve since you
are only going to have to maintain code used by your
application.
XML Implementation
What make the
Advantage XML Framework different from other Frameworks is
it's use of XML to govern how the Framework actually
behaves. For example all the information necessary to
display a list of customer information is obtained by the
XML file related to customer information. If the user wants
the customer information displayed in a specific order let's
say, in most applications this would required recompiling
the entire application. However with the Advantage XML
Framework the user can either edit the information regarding
the customer list in the Advantage XML SDK ("Software
Development Kit") or the user can simply edit the XML
directly using a standard text editor this eliminates
recompiling the application.
The XML which drives the Framework
can be consumed by both ASP.Net web forms and controls or by
Visual FoxPro classes. This benefit will drastically
decrease the costs associated with web-enabling your
application.
N-Tier Architecture
The Advantage XML Framework is a a true N-Tier
framework, that consists of the following layers:
Presentation Layer
Business Logic Layer
Data Layer
The presentation layer provides the user interface
by which data is entered into the application, this
can include a desktop application, a web browser,
data collection device or tablet pc.
The
business logic layer contains all the programming necessary
to govern if the data entered by the user can be written to
the database. For example the business logic layer will
ensure that a customer number is not duplicated or an
minimum order amount is met before creating the purchasing
order. When the information is valid the business logic
layer will write the information to the database. If the
information entered is not valid the business logic layer
will throw an exception to the presentations layer so the
presentation layer can request the user correct the
information and then attempt to resave the record.
The
business logic layer is also responsible for serving data to
the presentation layer. This includes formatting and joining
information together in a manner that makes sense to the
user. After the business layer has assembled and formatted
the information, it passes the data to the presentation
layer to display the information to the user.
The data layer is
responsible for housing or storing the information. The
Advantage XML Framework currently is able to store
information in either SQL Server or Visual FoxPro tables.
Where it make sense, the data layer may also assembly the
information. This technique is normally implemented for very
large tables with 100's of thousands of records and the
database itself resides on it's own computer.
Framework
Benefits
Your custom software application will experience the
following benefits by using a Framework:
Code Reusability - The means the programming that displays a
list of information can be reused regardless of the
information being displayed. In other words the same
programming can display a list of employees or customers.
Code reusability will decrease the amount of time necessary
to build your application and less time equates to less
cost.
Stability - Given the fact the same code is used over
and over again in your application the application is much
more stable due to the fact if the code works in one place
it will work wherever it is used in the application.
Scalability - This give
your application room to grow. If you have an application
that utilizes FoxPro tables and the business requirements
dictates the application needs to utilize SQL Server, with
minimal programming cost the Framework can be adjusted to
utilized SQL Server without having to rewrite the
presentation layer and in most cases the business
logic layer will not require programming modifications. If
you are already utilizing SQL Server and are experiencing
performance issues due to adding additional users and
processing more information along with the application and
database residing on one server, the database can be moved
to it's own server. This will spread the load of the
application across two computers and will increase the
performance of the application without a major rewrite.
Report
Writer - The Advantage XML Framework supports both the
native Visual FoxPro report writer and Crystal reports.