The term ‘SCOPELAND method’ represents a modern low-code approach to developing sophisticated database applications, either completely or largely without any manual programming. This approach offers substantial cost advantages, short project durations, and, above all, a hitherto unprecedented degree of flexibility of the software when it comes to introducing all types of changes at all levels. This, in turn, does not only drastically reduce software maintenance costs, but also enables a high degree of iterative prototyping and agile software development that allow the application to be optimally adapted to the actual needs of the respective end users and ensures that each project can be completed successfully and on time.
Unlike in programming environments (pictured on the left), ready-made standard software modules are used exclusively instead of individual program code. These software modules (pictured on the right) are controlled by intelligent metadata in such a way that the program's behavior from the user's point of view is almost identical to that of a handwritten application. The differences do not lie in the functionality but in the considerable cost advantages, improved software quality and, in particular, the distinctively agile development process – with all of the related benefits.
The basis is provided by a declarative development environment that is used to interactively configure the application to be developed in accordance with a patented procedure. Code generators contained in the product generate program code in the development environment for the respective target environment from the resulting ‘metadatabase’, which contains and declaratively describes all the application logic and user interface. The entire application exists as source code and is compiled, made available, and operated in the usual manner in the respective environment.
Although it is possible to extend and further develop the generated code manually using other tools such as Eclipse or Visual Studio, we do not recommend this as the advantage of automatic code generation following changes would be lost. Any necessary functional enhancements or other special requirements are therefore not manually incorporated into the generated program code but are encapsulated, embedded in the system as small program modules, and integrated in the course of the generation process. This makes it possible to achieve a certain degree of functional extensibility, without impairing a new generation after a change of requirements.
Read on