Click or drag to resize
Configuration Guide

[This is preliminary documentation and is subject to change.]

Configuration is a term for the activities, that define an application. Naturally, configuration is a job for a person playing the configurator role.

Activities that are closely related to configuration, but may be carried out by an end user role, are described in the Applicaton Guide - e.g. organization administration and user administration. In the real world, a person playing the configurator role will also have to play the end user role.

This topic contains the following sections.

Prerequisites

To build a configuration, you must construct a folder with a fixed structure. Therefore, before going any further, you must understand the Configuration Folder Structure.

It might be very helpful to study some of the demo configurations, that come with the TOPICA framework version 4.25 and newer (demo configurations for earlier versions are obtainable separately).

Maintaining application specific .config-files

This is the process of defining settings in the Application.config and Server.config files. See .config files Guide

Configuring input forms and data structure

To get the full picture, see Configuring Dynamic Data Structure. The individual steps are:

  • Configure form templates.

  • Next, define the relations between the forms (and hence the database structure) using The Structure File.

  • Apply changes by updating the Data Dictionary. This will create/modify the physical database structure (tables etc.).

  • At this point, the system contains working forms, and data entered in these forms is persisted in the database. Test!

Skins - Defining the look of the user interface

The look of the user interface is defined by skins (which include stylesheets).

Configuring report definitions

The previous step "Configuring input forms and data structure" defined how data gets INTO the system (user input by using forms) and stored in the database.

Now you would like to build some mechanisms to get data OUT of the system. For this purpose, define some reports.

Security

The information security (controlling which users may read and/or update data in the application) is influenced by many factors: how the organization is constructed, where users are employed and what permissions they are given, rules etc. set up in the configuration, etc. - see Configuring Security.

Integration

Systems are seldom completely "stand-alone". Most systems need to be integrated to other systems.

There are several options (see extensibility) available for implementing integration.

Note Note

The above steps (configuring input forms, data structure, reports, security) may be done by "pure" configuration (without programming, just using the configuration possibilities built into TOPICA).

Contrary to this, implementing integration will almost require some programming.

Iterate

Once the basics have been set up for a new application, there is no fixed sequence of configurations tasks.

A configurator changes something in the configuration and/or an application developer changes something in the a "custom" (= application specific) code, and the effect on the changes are tested. This process is repeated until requirements are fulfilled.

This process is well suited for the principles of Agile software development. You may benifit from principles like Continuous delivery - that is: deploy early and often in order to involve the customer / end users in the process.

See Also