|
The development model for eQ!
is centered on the delivery technology neutral business component
and a declarative deployment approach. What is a technology delivery neutral
business component? Simply put, it is a core business object that is independent
of EJB, JSP, Swing, Webservices, and most frameworks such as Struts. By
developing with this neutrality in mind, the component is free to be used
in future technology advances and changes, and is reusable across applications
within an enterprise.
Once your business components are designed and built, the rest of the
foundation is configured for the services and environment of your choice.
This means that you can configure how your datasource is used, if you
want to use the script engine and where those scripts are located and
how you define the relationships for the Collections feature are all configured
via an XML file. This declarative approach is widely used in EJB, databases
and other systems to be an easy way to change how your deployment is set
up.
The idea is that you design and develop the business component
with it's required business rules independent of anything else.
When built upon the eQ!
foundation, this neutral business object can then be delivered to
the underlying technologies of your choice easily with the provided
adapters. Since eQ!
knows about the technology and about your business component, your
component quickly becomes reusable without writing custom code to
support the delivery technology of your choice. eQ!
provides the adapters, you provide the business component, and your
time to deployment is greatly lessened.
In addition to providing the adapters, eQ!
also provides an XML-based script engine that allows business processes
to be executed without requiring custom coding. This feature can help
both the architects and the junior developers as it allows the architect
to design and model the flow of the application, perhaps in UML as activity
diagrams, and allow the junior developers to implement the flow using
scripting. This allows the scripting to be changed as needed without recompiling,
or changing any Java code.
The following diagram
shows this model.
|