Derivatives evaluation web site
A derivatives evaluation and analysis web site was built using XML specification files. These were processed to produce all the source code for a server-side COM module and a highly interactive web-site.
The implementation provided an opportunity to use the language engine's object model as a transparent, highly structured and precise means of communication between cooperating groups of developers. Different parts of the project involved very different language skills and knowledge domains, including:
- derivatives valuation code, involving complex mathematics
- business logic for financial markets conventions
- web authoring in Javascript and ASP
- COM module programming in C++, using ATL
The use of a rich and precise interface model allowed a very flexible and efficient development process. Frequent design changes emerged during the rapid development of a complex interactive design: these were painlessly passed from one group to another with no requirement for further programming or unit testing after each development cycle.
Components produced by the language engine
Production | Description |
COM library | All the source code for an MS DevStudio ATL project was produced. A template project was used to avoid the interaction required of a Microsoft AppWizard. The names and parameters in the XML specification file were applied to the template project. |
ATL object | C++ and IDL source code was produced for each calculator object along with a registry script. Each of the COM interfaces of the calculator was generated with full descriptive texts. |
ASP web page | The language engine used a pair of templates to produce each of the ASP web pages individually, allowing for the varied field layouts, interactions and user commands available on each. Hand-coding for an individual page was never required, despite the variety of their functionality and contents. |
Javascript input validation | Slightly specialised Javascript input validation routines needed to be applied to the various calculator pages, to handle their various constraints and interactions. These were all generated automatically from templates. |
Test spreadsheet | The best test harness for a calculator under Windows is usually MS Excel. This production generated a test spreadsheet for the calculator, laying out input and output fields, and writing add-in functions in VBA to link the spreadsheet with the COM module. |
Compiled HTML help | The full range of descriptive and associative information held in the language object model allowed the engine to produce a complete and fully featured compiled help project (CHM) for the COM library. This help project supported interactive help in the Visual Basic IDE and in MS DevStudio. |