Wednesday, January 10, 2024

DEDUCTIVE DERIVATION (inference) OF ALGORITHMS FOR APPLICATION SOFTWARE

 

I published another article in the journal

SYNTHESIS THEORY IN ACTION:

DEDUCTIVE DERIVATION OF ALGORITHMS

FOR APPLICATION SOFTWARE

Abstract. The significance of the study is contingent upon two criteria. All objects in the actual world that can capture a researcher’s attention are inherently complicated. Furthermore, every commodity that an individual manufactures and every work of art that an individual develops are intricate in nature. The entirety of the processes that an individual perceives and instigates are intricate. Although many professions have established techniques for constructing intricate entities, there currently exists no universally applicable concepts or methodologies for comprehensively studying, designing, producing, or generating complicated items.

The objective of this work is two-fold: firstly, to develop a comprehensive methodology for analysing complex synthetic processes, and secondly, to propose universal models or synthesis mechanisms that can be used to systematically derive specific process synthesis algorithms for various practical applications. The ability to utilize generalized models and synthesis techniques is highly advantageous when designing realistic computer programming.

The authors introduced a comprehensive process model and enumerated its characteristics. Using this concept, techniques for creating and suggesting processes have been formulated and put forward. The concept of a decomposition diagram enables the systematic design of intricate multi-level hierarchical processes. The multitude of processes and the intricacy of their combination give rise to the notion of formulating a synthesis theory. The acquired results can be regarded as the initial stage in the construction of such a theory. The authors’ proposed methods of process synthesis enable the deductive derivation of useful algorithms for application software. Although the concept of the breakdown scheme and synthesis procedures is relatively straightforward, this advancement has been suggested for the first time.

In order to further this project, it is necessary to augment the generalized process model with supplementary traits and properties, as well as to further refine the synthesis procedures. A proposal is being made to initiate the development of a theory for synthesizing a comprehensive plan using the decomposition scheme and methods of synthesis and decomposition.

Key words: theory of synthesis, method of synthesis, scheme for decomposition, algorithm, deductive reasoning, algorithm synthesis.

https://visnukpfs.dp.ua/index.php/PFS/issue/view/43

PDF (English)

https://visnukpfs.dp.ua/index.php/PFS/article/view/1137/1574

#deductive_derivation_of_algorithms #deductive_inference_of_ algorithms #method_of_synthesis #scheme_of_decomposition #algorithm #deductive_reasoning #algorithm_synthesis

 

10.01.2024

Saturday, January 23, 2021

Formalization of the decomposition process

 Formalization of the decomposition process

 My article "Formalization of the decomposition process" is published in the journal «Epistemological Studies in Philosophy, Social and Political Sciences». The methodological basis of DS-theory is proposed in the article. DS-theory is viewed as a theory for Software Engineering.

There are an abstract of the article and a link to the text of the article (in Ukrainian) below.

 
Abstract:

The article is devoted to the formal description of the procedure and scheme for the decomposition of arbitrary objects: objects, phenomena, organisms, processes in animate and inanimate nature. Attributes of the decomposition scheme such as an object property; various types of dependencies that can bind the properties of an object; decomposition mechanism; a graphic representation of the decomposition scheme — given and formally described. Varieties of decomposition schemes such as division decomposition and decomposition with inclusion are described. The variety of decomposition schemes and the variety of decomposition mechanisms are shown.

The action of various variations of the decomposition scheme, such as: the scheme for the formation of new knowledge of the studied objects; design and production scheme for new objects: artifacts and processes; a scheme for transforming objects: modernization, reorganization, reforming, repair, etc. - formally described.

A formal description is considered as a prerequisite for the analysis and synthesis of complex objects and complex systems at a level comparable to the level of mathematical accuracy and rigor.

The synthesis and design of various multifunctional equipment, various multifactorial processes, objects and processes of art, and, in particular, systems of the IT industry - is implied. For the first time introduced and formally described the concepts "type of property" and "algorithmic dependence". Algorithmic dependence exists between types of properties. These two concepts are prerequisites for the creation and development of the theory for Software Engineering. The article mentions a similar theory. Operations with decomposition schemes are described. Most of the concepts and ideas are illustrated with examples from various fields of human activity. This is evidence that the scheme of decomposition and the process of decomposition is a general scientific and philosophical phenomenon.

The idea of a decomposition scheme can provide effective interdisciplinary communication.


Article text:

https://visnukpfs.dp.ua/index.php/PFS/article/view/1020/1449

 

Monday, June 25, 2018

About first article




The text of the article, which was previously published in the journal "Programming Problems" (here - In Russian) is published in the next post. This article is the first of five (here).
The article describes a general fundamental theory for software engineering. The name of the theory (DS-theory - decomposition schemes theory) is replaced by (DSA-theory – the algorithmic theory of the decomposition schemes). The object of the theory research is applied algorithms. DSA-theory has nothing to do with the classical theory of algorithms and formal grammars.
Within the framework of the DSA-theory applied algorithms are classified; the basic components of the theory are investigated: a particular decomposition scheme and a canonical algorithm; the synthesis path is investigated; operations on algorithms are investigated. DSA-theory allows us to consider any applied algorithm of any complexity as a superposition of operations on primitive algorithms.
A particular decomposition scheme and the canonical algorithm are the attributes of the cell - the metaphor mentioned earlier in the blog (here).


I apologize for my English.

Valery Kolesnyk
25 June 2018

Sunday, April 29, 2018

The action of categories "object - reflection of an object" in the design of SOFTWARE


The action of categories "object - reflection of an object" in the design of SOFTWARE


In Software Engineering, there are very few generalized concepts. In programming, there are many special terms and abstractions, but not all of them are generalized concepts. Generalizations can be used within a particular domain of the software system. The source of these generalizations have application area. This is also not what is necessary for programming. The concept "Object", which is used in the OOP, is overly abstract, overly generalized. Because of this, the concept of "Object" in OOP is unproductive.

Friday, April 27, 2018

On generalized concepts in Software Engineering

On generalized concepts in Software Engineering

In the SOFTWARE design the SOFTWARE complexity problem has not been resolved to date. On the one hand, the complexity of SOFTWARE, like the complexity of any object, is a highly subjective phenomenon. On the other hand, SOFTWARE is of such size that it is unaffordable for any intellect. To overcome complexity is to find such effective code presentation tools that can provide trained intellect of average power to manipulate SOFTWARE components in consciousness. That is, effective code presentations tools should enable remember SOFTWARE structure, quickly detail the components, quickly restore the functions of the components and SOFTWARE as a whole, without much stress.
Graphics or mental conceivable concepts can be used as an effective tool for presenting code. Moreover, the concept as a means is more important than graphics. On the one hand, the concept reflects the inner essence of a process, and on the other hand, it should be more general than the traditional means of representing SOFTWARE and its component (machine code, algorithmic language operator). Also the concept is the initial mental material for creating graphics.

Saturday, April 21, 2018

Agile methods VS theory of software development


Agile methods VS theory of software development 

The work of the handicraftsman is based on personal experience and personal craftsmanship. The production process of the handicraftsman, as a rule, is unique. The result of the work of the handicraftsman is unique as well. Labor and the result of labor of the handicraftsman, as a rule, is hidden from prying eyes and because of this the possibility of their improvement is limited. The labor of the handicraftsman, traditionally is not divided into partial processes and therefore it can not be synthesized into effective technology.
The technological process in modern industrial production is based on physical or chemical laws, which are presented in the form of formulas or reference books. The results of the functioning of the technological process coincide almost completely within the limits of one technology. The technological process, as a rule, ensures maximum productivity at the current level of production development. The technological process, as a rule, is open for improvement.
The initiators of SEMAT have set an important goal - to find and offer a scientific theory for software engineering.
In this note we argue that work on software development methodology must undergo a profound transformation. It should renounce its current reliance on fashion and political-style propaganda, turning instead to a serious scientific endeavor based on theory and experimental validation. See more.
This is not enough; we need a strong theory of software development. See more.
At the same time, those who were at the origins of SEMAT began to promote Agile methods.
The latest wave to sweep the industry is "agile". Agile methods have made a number of significant contributions and reminded us of the central role of people in software engineering. Some of the agile lessons are likely to remain in future methods. See more.
But "Agile methods" is a craft style of production. The development and application of "Agile methods" is in opposition to the goal of "creating a theory for software engineering". It is possible that this confrontation in the minds of the initiators of SEMAT does not generate cognitive dissonance, but from the point of view of progress in software engineering, from the point of view of the development of the software engineering, it is absurd. This style of research is similar to the situation when the driver of the car at the same time presses the brake and gas pedals. The result of the existence of SEMAT from 2009 to the present time is such a theory for software engineering has not been created.

Many articles on the theory for software engineering have been published, which indicates that a lot of effort has been spent to create the theory, but the SEMAT initiative is the most ambitious. Considering the SEMAT initiative as a leader, as a marker, it can be argued that the scientific community in software engineering capitulated before the problem of "creating a theory for software engineering".

Valery Kolesnyk
21 April 2018

Monday, April 16, 2018

Cell in the theory of algorithms


Cell in the theory of algorithms

Significant progress in research in the field of medicine, zoology and biology took place when research moved from the organismic level to the cellular one.
In studies that should be developed in Software Engineering, it is also necessary to move from the organism to the cellular level. Although, if we consider a functionally complete computer program or program complex as an organism, then there is no systematic description of these organisms. The field of similar organisms is not described, either. Description of a typical organism is not described, either.
In the decomposition schemes algorithmic theory (DSA-theory), a partial decomposition scheme (PSD) generates an algorithmic construction of node (ACN). The latter is written in a fragment of the text in an algorithmic language. This fragment is called a paragraph an analogy with the syntactic construction of the traditional COBOL.
There is the following chain of links: PSD –> ACN –> paragraph. From the point of view of this chain, three groups of concepts should be distinguished.

1. Regarding decomposition schemes, it is necessary to consider:
  • As an organism – any decomposition scheme (DS). DS with an arbitrary number (more than two) nodes of levels and branches, composed of PSD. The DS can also be either the result of the synthesis of the PSD, or the result of the superposition of the PSD.
  • As a cell a two-level PSD. The cell contains two nodes - the root and the end (leaf). Although the cell can be complex the result of the synthesis of an arbitrary number of simple DS.
  • As the field of DS the totality of all real or mental DS.
2. Regarding algorithms, it is necessary to consider:
  • As an organism any conceivable or really existing algorithm containing at least one cycle. Although this algorithm may not be the result of the transformation of DS into the algorithm.
  • As a cell algorithmic construction of node (ACN). (More here. In Russian)
  • As a field of algorithms the totality of all conceivable or really existing algorithms.
3. Regarding programs, it is necessary to consider:
  • As an organism any program that actually exists, recorded on media, containing at least one cycle.
  • As a cell a paragraph that is the result of the transformation of ACN into a paragraph. (More here. In Russian)
  • As the field of programs the totality of all real programs, mentioned above as organisms.

Valery Kolesnyk
16 April 2018