Technical Overview
To deliver extensibility, AppProducer uses design time and runtime code generation and compilation to aid developers to design, implement and maintain applications in a familiar technical environment - with a higher level of abstraction. With AppProducer, software engineers can focus their energy on what the application should do, rather than how each piece is implemented. It encourages thinking in objects and entities and in the agile development of business, functional and user requirements, rather than classes, data grids and state management.
An application built using AppProducer is defined in the meta-language of the platform using the browser based user interface which includes drag ‘n’ drop and menu driven configuration pages. The core engine of the platform automatically generates, alters and regenerates the implementation artifacts. Automatically generated artifacts include database tables, data access classes, business entity classes (C#), SQL queries and commands, ASP.Net pages, grid views, user interface work flows, validation code, exception handlers, state management and web services.
One of the main strengths of the platform is its open and welcoming architecture for custom code written by the developers in Visual Studio or directly from the user interface. The main problem with existing rapid application platform technologies is lack of proper support for developers to add custom code to co-exist with the rest of the final application. In our recent client implementations of AppProducer, on average 95% of the final application has been generated by the platform. However one of the main characteristics of the platform is its support for smooth and natural implementation of the remaining 5%, representing the bespoke aspect of an individual application.
An application built using AppProducer can be hosted in any Windows .NET server and can be integrated with any other application either through the platform’s direct support for Web Services, Visual Studio and any other .NET development tools. The architecture of the generated application is based on the standard 3-tier model of data access; business logic and user interface and has a robust exception handling, caching, auditing and high performance feature

