QAFE Declarative Web2.0 & SOA for Enterprise Applications

Getting started

What releases of QAFE are currently available? What do they contain?
QAFE is not currently available to the public. A version will be made available at the end of 2009.
 
What platforms is the QAFE software available on?
QAFE is built with Java technology. The Java version that is required is JDK1.5 or higher. In addition, any J2EE/JEE Appserver or just a Tomcat or Jetty Servlet Container is sufficient. Please check the documentation of the Application Server or Servlet Container implementations for availability. 
 
How do I download QAFE? How do I install it?
QAFE is not yet available as an online download. The installation manual will be provided as soon as the downloads are available. 
 
How can I get started with programming in QAFE?
There is an Introduction to QAFE programming. Note that QAFE is technology-independent, so it doesn’t require you to be able to program in a specific language.
 
Who is licensing QAFE?
Qualogy is the sponsor of this product and has created license models for the product. Please send an email to info@qafe.com for more information. 
 
Where can I find the API documentation?
The QAFE API implies the understanding and usage of several XSDs. QAFE development is based on XML development. The following documentation is available:
• Application Mapping for defining QAFE applications
• Application Context for configuring applications, merging, security, etc.
• Statements for defining optional SQL statements that are to be used in an application, if a database resource is used
 
Where can I get the QAFE source code?
The source code of QAFE is not publicly available.
 
What is the Java Version/Naming convention?
Since the programming model in QAFE is technology-independent, the "programming" is mostly done in XML. XML is already structured and compliant to the corresponding XSD. XML requires a unique id for each component or other element. Camel case (the first letter lower case and each subsequent word with initial capital, for example "myQafeApplication") is advised for readability.
 
So it's XML. Enterprise applications are often very large; what will be the effect on my XML?
It's true that a large application defined in QAFE will result in a large XML file. We tackle this problem by allowing the developer to decide when to split up the files. For example, you can make a file for each tier or for each window. See Application Context [http://www.qafe.com/static/documentation/api/application-context.html] for configuring applications.

What about the performance of the application?
A lot happens before the QAFE application is run. The QAML code needs to be translated into a presentation technology and is also the input for the business layer processing. The Business Layer translation is already executed in memory, so the processing is fast. 
 
The presentation technologies have something special; since QAML is an application definition, the presentation technology engines or renders need to interpret this QAML code. 
 
In the case of GWT the engine is the same size, however large the QAML application. This results in highly responsive applications. Why? With GWT, the application is a Javascript/HTML application. The Javascript is the bottleneck, even though the Javascript code is optimized and obfuscated. 
 
When writing native GWT applications, the size of the application determines the size of the output Javascript code. In QAFE the engine for GWT is already written and the code size stays the same, no matter how big the QAFE application is. 
 
In the case of Adobe Flex, the output is tuned and optimized according to the Adobe Flex development standards.  A lot of processing occurs on the server-side, of course. With Adobe Flex as output rendering, the MXML code is generated and Flex is responsible for optimizing that code at runtime.
 
What about validation of QAML code?
QAML code is validated against the XSD definition that was developed by the QAML team. See "Where can I find API documentation?". To semantically validate the document (for example "does the reference to a service method exist?"), there is also a tool called "QAML Validator". This is in fact a plugin for Eclipse and JDeveloper that semantically validates the QAML application. So you can find any errors before runtime.
 
What is the output of the business action?
The output of a business action is always a variable that is stored in the data store/pipeline. With a "name" you can retrieve the data. The data store can contain the following data:
• A map containing key-value pairs to represent objects/single rows.
• A list of maps containing a collection of maps with key-value pairs that represent a single row. In SQL this is the output of an SQL statement, and in Java it's a collection. 
 
Can I specify another directory on my file system instead of putting every file in the WEB-INF directory?
Yes you can! In the application tag in the application-context, just use the root attribute and provide any directory you want.

Clicky Web Analytics