Wizard Framework
The framework for step by step wizard creation, with a set of typical pages
It's key difference is that it allows building both sequenced and nested wizards, that all work with a single, from architectural standpoint, data context for individual pages from wizards of different levels.
In other words, the pages are not aware of any specific wizard they are activated in. This is a key feature to build up a different wizards from a set of different wizard steps including nested ones with no need to change the logic of individual pages.
This is the framework we've used to build all product configuration wizards for our customers.
We adhere of the concept of easy install, meaning that MSI procedure should be as lightweight as possible, while all complex configuration logic is separated into wizard or even set of wizards. In other words, product configuration is a feature of the product itself rather than MSI script that it difficult to develop and maintain.
And installation prepares a really needed minimum to let the self configuration run.
That approach has several significant advantages:
- Quicker and easier product development process due to positive effect at early development stages
- Less issues that could arise at the installation phase due to absence of complex logic within installation module
- Quick installation and results in completely functional product with no manual configuration headache
- Reduced cost of infrastructural issues troubleshooting at the system deployment stage
Database Wizard
Turn-key solution to configure database connection, create, update and validate a database
The wizard supports database type selection, operating mode selection: new or existing configuration, database server lookup, different authentication modes, new database creation and establishing a connection to an existing one, database structure upgrade, database structure validation, set of SQL script templates to create typical database parts and more.
Database wizard out of the box supports two operating modes:
- New configuration
- Existing configuration
- Database type selection: Microsoft SQL Server or Oracle
- Database server lookup, authentication and connection
- Existing database selection or definition of a parameters to create a new one
- Database structure validation and upgrade if needed
- New database creation
- Existing configuration check
- Database version validation and incremental upgrade if needed
- Addition of extra steps
- Addition of more database types
- Declarative rules of database version upgrade between any versions
- Addition of new set of SQL scripts for database creation and optionally a customization of existing ones
- Customizable graphic banners
Custom Properties Framework
SDK to extend existing business objects with dynamic set of properties
It allows to instantly extend the existing business objects with new features:
- Custom object properties
- Configuring dictionaries
- Setting dictionaries as object properties
Workflow Framework
SDK for extending business objects with state driven features
It allows quickly extend exiting business objects with these features:
- Addition of states
- State transition rules
- Security roles definition
Application Host Framework
SDK for building 24/7 middle-tier as windows service
Specific business logic service for specific product requires only development of individual components in terms of component host ideology and have them registered in the host configuration. All infrastructure is already in place.
The host has few turn key subsystems and components:
- Service itself
- Component activation subsystem
- Component management subsystem handling operating system events, such as service start and stop, power events
- Monitoring and diagnostics
- Configuration subsystem
- Diagnostic tracing
- Error handling subsystem
- Performance counters
- Speeds up the development process
- Unified development
- Increased product stability
- Scaling
Enterprise Application Template
Enterprise 24/7 application template with all typical components and programmatic links between them
However, there is a large part that can not be supplied as an SDK or out of the box components due to the fact that it is a basically a template of source code of a multi tier application. This part is an enterprise application template built as a Visual Studio solution with a set of prepared and configured projects.
The template consists of:
- Business logic middle-tier as a win32 service and components that perform service registration
- Performance counters and components that perform their registration
- Trace and it's settings
- Event log and components that perform it's registration
- Administrative API
- Database tier
- Business logic
- Monitoring subsystem
- Power events handling subsystem
- Tray agent, command line tool
- Configuration wizard
- Administrative client
- Automated business logic tests
- Etc