Titanomachia Server ComponentsComponent Design Methodology |
||
|
||
|
The design of the server components were greatly influenced by Bertrand Meyer's concept of Design by Contract and Peter Coad's strategy and usage driven design concepts outlined in Object Models: Strategies, Patterns, and Applications and Java Design: Building Better Apps and Applets. The design of most frameworks are interface driven designs, meaning that first a few applications are written (or designed) without the aid of a framework to determine recurring themes that naturally appear in the code. Once these themes are discovered a set of interfaces are initially created to determine the contract for the framework. After the interfaces are created, then a set of classes are created. In the case of the Servlet Framework The event driven model for HTTP event handling and servlet rendering were first created, then a derivative of By segregating the recurring themes (a.k.a. patterns) of the framework into interfaces we can then create extensions to the framework by merely implementing an interface. Furthermore, the contract of the interface also determines the exception types being thrown. This form of design also lends itself to extending existing classes that may occur in problem domain solutions to the framework because all that is recquired is the implementation of an interface. This form of framework design is the predominate form of design for the Server Components project. Unfortuneately there are no UML diagrams available for the frameworks due to a lack of free tools that run under multiple operating systems for the generation of UML. A class diagram for the individual frameworks should be easily created with any tool capable of reverse engineering Java source code, but no sequence or activity diagrams are available. Hopefully the JavaDoc documentation will suffice. |
|
Any problems, misinformation, corrections, comments, flames, etc. should be directed to this site's administrator. |