Why do we need a General Theory of Applied Algorithms (GTAA)?
In Software Engineering, the craft style of production dominates. This means that design and production are mixed and performed simultaneously. Design is the creation of algorithms, and production is programming. That is, the creation of algorithms and programming are performed simultaneously. Sometimes, along with design and production, algorithm research is also performed. The stages of algorithm research, algorithm design and programming should be separated as it is in the industry: in mechanical engineering, in aircraft manufacturing, instrument making, etc. In the industry, the stages of research, design, technological preparation and production are separated and performed sequentially.
Algorithm Research
Research is carried out within the GTAA.
Algorithm research should be ongoing, similar to research in mathematics or other fields.
Research does not have to be associated with specific projects.
Research can be associated with specific projects.
Research processes and results should be presented in a concise, compact, and, if possible, simple language.
Research processes and results should not be presented in algorithmic language.
Algorithm Design
GTAA should be used for algorithm design.
The design language should be the same as for algorithm research.
Programming
The input to programming must be algorithms that are designed at the design stage.
Programming languages are used at the production stage, after the algorithms have been developed.
Problem
In order to achieve such a division of labor and move away from the craft style of programming, a theory and language are needed in which to conduct research and design algorithms.
Purpose of the GTAA language
The language is designed to describe the following phenomena.
– Stable (relatively unchanging) objects of the real world.
– Algorithms for research, studying stable objects, for observing them.
– Algorithms of real-world processes. Processes independent of the computer and interacting with the computer.
– Algorithms that are executed in the computer, in the network.
– Algorithms of interaction between man and computer.
Requirements for the GTAA language
The language must be strict, unlike natural language, and formal – as in mathematics.
The language must be a language of generalizations, as in mathematics.
The language must be graphical. More precisely, a hybrid of graphics and text with the prevalence of graphics.
The language must have a high degree of default.
The language must be focused on the description and depiction of algorithms.
The theory and language are based on a system of ontologies and philosophical procedures: decomposition, deduction, etc.
In theory and in language, mechanisms for synthesizing and analyzing algorithms must be researched and developed.
Requirements for programming languages
Programming languages must be specialized.
#General_Theory_of_Applied_Algorithms #GTAA
Valery Kolenyk
13/08/2025
No comments:
Post a Comment