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.
If the computer program, represented as text in an algorithmic language, is external, then the internal is an algorithm in text or graphical form. An algorithm is the structure of a program. But the algorithm depicted by any method known at the present time does not strongly reflect the internal structure of SOFTWARE and, accordingly, remains difficult to control. Something more inner needs to be sought, something deeper than the algorithm. Something like that must be looked for, which is intrinsic to the algorithm. The more intrinsic is also the more general. So intrinsic is an algorithmic decomposition scheme (here).
It should also be remembered that as the essence of SOFTWARE is a process in the computer initiated by the program, and generalizing concepts should describe this process.
In the field of Software Engineering there is also a lack of understanding of the importance of capacious concepts, and simply a disdainful attitude towards the search for generalized concepts. Meanwhile, generalized concepts must be operands for generalized operations. The results of these operations must be generated algorithms.
Such a process of global reduction of production costs occurred in engineering, in the construction of buildings or other objects, in irrigation, etc. The object of production was often too heavy for humans and instead of manipulating this object or its components, 3D and 2D models were invented. First of all, a special effect was obtained from the creation of a drawing on paper. That allowed to manipulate the images of the components of the final product. In addition, the drawing allowed to continue further work to reduce production costs - this is the normalization, unification and standardization of components, connection methods, tool design and composition of materials. Also, material production has changed somewhat after that. Material production consisted in the transformation of the model into components and into the final product.

Valery Kolesnyk
27 April 2018

No comments:

Post a Comment