This article is mainly intended for managers. It gives a birds-eye overview of the AI-Framework, what it is and what it isn’t, its features and its strength.
Information for developers can be found in the Chapter for Developers
The AI-Framework is a collection of software components. This collection is dedicated to and specialised in the development of ERP applications. It is also a strong tool for the development of other administrative software. By using the AI-Framework, development of software takes on a new meaning.
There are many ways of developing software. Most often, a functional design is drafted – which describes the details of the functions of the new software – and with that the programmer starts developing the actual application. These programmers write computer code. They will have to do a lot of routine work.
The AI-Framework will do most of this routine work automatically, which saves a lot of time and helps prevent mistakes.
In traditional software development, the programming style is imperative, which means the computer is told what to do using a programming language. When using the AI-Framework, developing your software is functional and more abstract. In short this means that the functional developer does not build the actual application; the AI-Framework does that for him! The programmer only tells the AI-Framework about the functions that are needed. This way a model is created.
Before a programmer starts instructing a computer, the functions or tasks that need to be performed will be described in a functional design. The functional design aims to describe the tasks in terms of modules that have one responsibility and do not influence other modules. Once the functional design has been written and approved, the computer programmer starts his work.
Traditionally, the functional design will be translated to computer code (imperative programming) by programmers. With the AI-Framework, the functional design will be described to the AI-Framework in a very structured way (functional programming). This way a model is created . Based on this model, the AI-Framework will automatically generate all the computer code.
Summary:

Traditionally programmers receive the functional design (step 1) and start coding (step 3).
With the AI-Framework, the functional design is described as a model (step 2). The painstaking coding is done by the AI-Framework (step 3).
The AI-Framework is based on a powerful programming language, named C# (say: C sharp). C# is in itself already very structured. It also facilitates auto code suggestions and syntax checks for the programmer.
The AI-Framework is therefore a very structured and complete functional design. Referring to the image above: The model in step 2 should perfectly represent the design in step 1. So the AI-Framework does not do anything. It is not an application. It is designed to describe business logic.
The AI-Framework does not dictate used technology in order to generate the actual application. It is not relevant which database is being used, nor whether the application should be running on a Windows computer, in a webbrowser or as a mobile app. This makes the model completely abstract. That explains our name: "Abstract IT".
When (part of) the model is complete – the AI-Framework has been told all the details – the final application can be automatically generated by one of the code generators of the AI-Framework.
Note: After modelling the business logic in the AI-Framework, there is nothing else left to do for the software developer.
The AI-Framework has several code generators.
Note: The software developer can add his/her own piece of model. This is a bit of C# code. It is also possible to extend the code generation for their own pieces of model. This too is just a bit of C# code.
The application, which is the product of the code generation, exists of three main components.
Again: The only task of the functional developer is to model the functional design . How does he do that? This example shows how to model the process: Build a screen for adding a customer.
Below is described how all this works, without mentioning too many meticulous details.
The AI-Framework has been designed to develop large and complex ERP systems. That is why we have chosen for a powerful and stable programming language (C#) in combination with a number of powerful components.
See also Software requirements .
The AI-Framework can automate and optimise many parts. Which parts it automates and which not is the choice of the developer.
The power of the AI-Framework lies in everything that doesn't need to be coded by the developer!

The AI-Framework is a comprehensive tool that can support large and complex business processes. If for some reason it should be necessary to depart from the standard options and possibilities, that is possible. The AI-Framework is very flexible and extendible.
fWe have separated functionality and implementation completely. Therefore it is theoretically possible to replace any component with another component that uses a different technology. When trying to do that, it needs a lot of time, but it is possible.
An example is the replacement of Silverlight. We used to generate websites for Silverlight (a browser-plugin of Microsoft). Since Silverlight is no longer much in use, we have rewritten the AI-Framework to generate the websites in ASP.Net, JavaScript, HTML5 and CSS3. The model has not changed.
Code Generation changed | Model unchanged
This example shows that the AI-Framework can be changed in the core of code generation, while remaining unchanged in the model. Software already developed in the model doesn't need to be changed. The AI-Framework will generate all the new code.
There is a number of advantages of developing software with the AI-Framework.
The AI-Framework works together with internationally standardised software and is based on C#. Changes in the model can be made with powerful industry standards.
For more details, consult the page Software used with the AI-Framework .
If you need to know about the hardware requirements, read the page Hardware recommendations
Article ID: 21
Created: Mon, Jun 24, 2019
Last Updated: Wed, Dec 4, 2019
Online URL: https://wiki-ai-framework.abstract-it.nl/article/the-ai-framework-in-a-nutshell-21.html