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.

Lack of generalized concepts is the reason that there is no development Software Engineering - almost no productivity growth, there is no way to find and show the effectiveness of a particular program or software system.

The following is an example of how the use of specific generic categories could be useful in the development of SOFTWARE. These are two categories of "Object - The reflection of the object." The concepts "Object" and "reflection" are used in the general scientific or philosophical sense.

Situation: an existing production process is replaced by a more productive process. The old process uses outdated automation tools (for example, an outdated computer) or there are no computational tools at all. In the new process a computer is used and for it it is necessary to develop Software.
As an object is considered the old process. As an reflection of an object, a new process is considered, the process in which the computer is running. The computer automates the new process completely or at least partially.

In this situation, traditionally, no one looks at the new process and, accordingly, on SOFTWARE, as an reflection of the object. Accordingly, no one tries to understand the old process as an object. Accordingly, no one does the detailing and rationing of the old process as an object. Because of this, no one is doing economic evaluations of the old and new processes that could be compared. If we consider an old partially automated process as an object, and as an object reflection is a new process that uses more advanced computing tools, then in this case there are problems. Economic evaluations of the old and new versions of Software are not done either. Because of this, new software projects often fail.

Hardly anyone has tried to assess the economic effect of using unconditionally useful operations: "Searching for a word in the text" or "Searching for a file in a folder or on a disk device". Similarly, hardly anyone has tried to assess the economic effect of using an unconditionally useful operation "Searching for a resource in The World Wide Web".

The reason for this is the same - no one tried to look at these functions SOFTWARE as an reflection of the object. That is, the generalized concepts "Object - The reflection of the object." not used.
And the last: generalized concepts must be sought and developed systematically. More about this here and here.

Valery Kolesnyk
29 April 2018

No comments:

Post a Comment