📜 ⬆️ ⬇️

Abstractness and open systems interaction model

Good time to read, dear members habrahabr.ru

This article aims to discuss the application of the measurement of abstractness.

In the book - Architecture and strategy. Yin and Yang of information technology of an enterprise - the use of abstraction levels for creating models of an enterprise and information technology is a red thread. A similar idea is contained in the classification of information system levels for telecommunications enterprises - Business processes in telecommunications companies
')
I came up with a similar idea of ​​applying abstractness in 2003 while reading textbooks of philosophy ( Philosophy for graduate students ). A year later (as a result of a discussion of the idea on the forum), the idea of ​​measuring abstractness as a percentage appeared.

To leave philosophy alone and move on to IT, I note that in my opinion, the abstractness of 100% corresponds to the concept of the idea of ​​Plato and Hegel, for which only the very concept of the idea is sufficient. Do you recognize recursion?

Abstraction 0% (again, in my opinion) has an absolute vacuum. For him, the idea of ​​"There is nothing!"

So, back to information technology, more precisely, to the open systems interconnection model. It turns out that BOC levels are also arranged in order of increasing abstractness! After trying to fit the programmer’s worldview into the standard seven-level model, her (model) had to be expanded to 9 levels.

Focus on the definition of " system ". After reading the definitions, it turned out that there are no systems that do not seek self-preservation. Hence the definition of the system appeared:
The system is a structure capable of maintaining a state of homeostasis (discussion - http://www.philosophystorm.org/palex/2973 ).

In connection with the prevalence of software systems and System modules, the System layer (System layer) was highlighted in the development tools.
Another level, the Transformation layer, was allocated to 50% abstraction, which corresponds to the median reality.

So, for practical use the following sequence of levels is proposed:

The connection of levels with sections of human knowledge is discussed. To use primitives for levels, the following graphic and symbolic notation is proposed:
Levels of abstractness
Source - http://integral-community.ru/magazine/Integral-philosophy-mag2.pdf , p.82

In addition to applying the approach to modeling, the extended BOC model can be used to design universal programming languages . As a first approximation, we can offer the following correspondence of the levels and elements of a programming language:

application layer
functional - for partitions using functional programming.

Presentation layer
aspect - Aspect - for interfaces and aspects. For methods, you can specify the necessary properties and additions used before the method (before), after the method (after) and when executing each operator (invariant)

Session layer
predicate - Logical - corresponds to Boolean variables, theorem proof, Aristotelian logic, work with SQL queries, LINQ, or simplest Prolog operations.

transport layer
controller - Controller - corresponds to the controller (Controller) model MVC

Transformation layer
publish - changeable - corresponds to the view (View) for the MVC model

network layer
public - Connecting - corresponds to the database model (Model) of the MVC model

system layer (System layer)
protected - Protected - internal elements of the class

link layer
private - Internal - hidden class members

physical layer (Physical layer)
local - Block - method and block variables

For analysis, the following sequence of insights into the meaning of what is happening is proposed:
Analysis sequence

Thank you for the attention of critics.

Literature and links:
  1. Danilin A., Slyusarenko A. Architecture and strategy. Yin and Yang Information Technology Enterprise, M., Internet-Un-Inform. Technology, 2005
  2. Chaadaev V.K. Business processes in communication companies. Eco-Trendz. 2004
  3. Salnikov V.P. Sandulov Yu.A., Gutseriev Ch.S., Kalnoy I.I. Philosophy for graduate students - SPb .: Publishing house “Lan”, 2001
  4. Suggestions for using the open systems interaction model for developing a universal programming language http://pl2-rainbow.livejournal.com/1710.html


The topic is intended to familiarize with the idea of ​​the scale of abstraction and discuss its conformity with the open systems interaction model.
There may be a question: “What next?”.
Those who have such a question appeared, I suggest to get acquainted with the article on Tunnel Modeling of Unified Knowledge
http://integral-community.ru/magazine/Integral-philosophy-mag2.pdf , p.81-96.

UPD: subsequent related articles

Source: https://habr.com/ru/post/176249/


All Articles