📜 ⬆️ ⬇️

Structural Classification: Examples and Misconceptions

This is the final article from the model classification cycle. In this article, I classify designs. Must apologize for the lack of illustrations, but it happened. Therefore, today is just a text. I must warn you that this article is based on my previous articles, in which it is described in detail that the object, operation, and function are objects that have only a different interpretation.

Terms


Let's start with the term "there is a part." In everyday life, we meet the following statements: elephants - there is a part of mammals. The idea is that the set of elephants is a subset of the set of mammals. In this article, the term "there is a part" will be used in a different sense. We will use this term only in relation to specific objects. For example, a specific branch of a tree is a part of a specific tree. You do not need to think that we are talking about any branch of a tree, as when we define the concept: a branch of a tree is a part of a tree. In terms of mathematics, this statement reads as follows: for any branch of a tree there is such a tree that this branch is part of that tree. Such a statement is no longer related to a specific object, but to a concept that defines objects. If the article needs to say this, I will say clearly. Otherwise, I will talk about specific objects.

The following term "includes." If I say that a tree includes a branch, then this means that a particular branch is part of a particular tree. And we are still talking about specific objects, not about sets or concepts.

Another term to deal with will be a little more difficult. This term "consists of" It seems that it is close to the term "includes", but we will distinguish them. We say that a tree consists of branches, a trunk and roots. In this case, we assume that the parts of the tree are listed in full to give us a complete picture of the structure of the tree. That is, the term "consists of" is used in relation to the buildings (structures) of objects. If we take a part of these objects, then we say that the super-object consists of these sub-objects is no longer possible (something is missing). Therefore, the following hierarchy is correct: an over-object, a construction of an over-object whose elements are sub-objects and of which it consists, a sub-object that is part of an over-object and is an element of the construction of an above-object.
')

Constructed Paradigms


One over-object can be represented in the form of different designs. An over-object can be divided into parts according to different principles of division (different bases). There is a principle of division, preserving the compactness of spatial parts - spatial division. Example: a building consists of rooms. Let me remind you that the thesis “a building consists of rooms” is tantamount to a statement: there is a building, there is a building design, made within the framework of the spatial paradigm, the elements of which (the designs) are premises. Another base is functional. Example: a building consists of enclosing structures, roofing and engineering subsystems. In other words, it can be said that the basis for the division of the super-object is the paradigm of the structure.

Constructions of the human body are often considered in two paradigms: one is called the external structure of the person, the second is the internal structure. The external structure describes the parts of the human body: arms, legs, head, torso. The internal structure describes the subsystems of man: the bloodstream, digestive, nervous, and so on. The external structure is equivalent to the spatial division of the building into rooms. The internal structure is equivalent to the functional division of the building by subsystem.

Construction Classification


Usually we consider the construction simply: here is the over-object, here are the sub-objects, here are the connections between the sub-objects that explain the properties of the over-object to us. We will classify structures through the classification of structural elements.

Structural elements belong to the same class as the object.


Consider a construction in which the elements belong to the same class as the over-object. For example, water consists of parts, each of which is also water. Or a pile of sand, elements of which are also heaps of sand. If an object is divided in this way, then it is often possible to enter a measure for it. This is a feature of this kind of structures. For example, the mass of an object is equal to the sum of the masses of its parts, the area of ​​a figure is equal to the sum of the areas of its parts, the volume of matter is equal to the sum of the volumes of its parts and so on. Consider a less obvious example. Let there be an operation and its parts - sub-operations. Then the measure can be its four-dimensional volume. Example: a person performed an operation for 4 hours. The volume of operations - 4 man-hours. Suppose we divided the operation into 4 sub-operations. Each sub-operation has a volume of 1 man-hour. Thus, the sum of the volumes of sub-operations is equal to the volume of over-operations.

Delusion


I note that many here will make a mistake and think that I spoke about the concept of operation. No, in this context it was a question of a specific operation performed by Vasilyev from 12-00 to 16-00 on April 12, 2016. If we talk about the concept of an operation, then we cannot say that the concept lasts 4 hours. It can be said that operations of this type last an average of 4 hours. I often (even from leading analysts) hear erroneous statements on this topic. They say that the operation, which they designated in BPMN notation as a rectangle, lasts 4 hours. But the BPMN notation does not model operations, it models the concept of operation. Therefore, in this notation, it is impossible to say how long a specific operation lasts. In the properties of an object created in BPMN notation, there may be an attribute: the average duration of operations of this type, but there can be no attribute the duration of the operation. This is what Businessstudio has done. In the properties of an object created in EPC notation or in notation, you can specify the distribution of the durations of operations of a certain type. And this is true.

Examples of constructions of the first type


Examples of such structures: the operation to build a house is presented in the form of a structure consisting of operations that we observe on the network schedule of building a house. The diagram in IDEF0 notation models the structure of a function consisting of functions.

An erroneous example: some might think that in a BPMN diagram, a subprocess is an operation construct, but it is not. There are no operation models on the BPMN diagram. There are conceptual models of operations. Very similar to the definition of a concept, and so it is. The square in BPMN does not model the operation, but the concept of the operation. The diagram in BPMN notation is a conceptual model, not an object model.

Construction class in which elements belong to the same class


A construction of this kind consists of elements belonging to one class, while the over-object belongs to another class.

For example, a specific booth consists of four specific boards. It is clear that the volume of the booth is not equal to the sum of the volumes of the boards, so it will not be possible to introduce the measure. An example of a description of the activity: the operation consists of participants. We perceive participants as material or as functional objects, but we do not perceive them as operations. In this case, I again want to emphasize that we are not talking about concepts of operations, the model of which can be found in BPMN notations, but about operations, models of which can be found on Gantt diagrams. For example, the participants in the “nail in” operation that took place at 9-00 on May 13, 2011 were: Sidorov, a hammer, a nail, two boards, a stool, a lamp, a table, a room.

If someone tries to say something similar about objects created in BPMN notation, then it should sound like this: every operation of a given type, whose model (type) we see in BPMN notation, has participants of the following types: ... For example, Each type of “hammer nail” operation will include objects of the following types: “performer”, “nail” and “hammer”. True, there are exceptions. For example, sometimes in the definition of the type of operation you can find a link not to the type of participant, but to the model of a specific resource. Then we are talking about the fact that in any operation of this type the participant will be a specific object, and not an object of some type, for example, in each operation of the class “obtain approval for the building construction” the participant is indicated: the administration of the city of Moscow (the object).

All construction objects belong to different classes.


The following case is most common: the objects above and under belong to different classes. For example, a transformer consists of a core and two windings. As applied to the description of the activity, we can consider the previous example in the context of the fact that the performers belong to different classes. Sidorov - to the people, a hammer - to the tools, and a nail - to the materials. It all depends on how we classify objects.

Description of the structure without listing its elements


The next case is more complicated. We are talking about a structure in which there is no listing of its elements, but there is a mention of the types of objects that make up the structure. For example, a building consists of bricks. A concrete building consists of brick-like objects. There is no listing of specific bricks, but there is an indication of the type to which these objects belong. Modeling of such constructions is rather difficult in modern modeling languages. The fact is that in order to model such statements, second-order predicates are needed. But there are no languages ​​that would be sharpened for modeling second-order predicates. The reason for this is that if a model created in first-order predicates is computable, then a model in second-order predicates is not. That is, on the basis of the facts written in the predicates of the first order, it is possible to build unambiguous conclusions. If the model is built in second-order predicates, then conclusions can be only with some probability. For example, if we say that a forest consists of aspen by 60 percent and from birch trees by 30 percent (other trees belong to other species), then it will be possible to say for sure about the species of an arbitrarily taken tree in this forest only with a certain degree of probability.

The creation of an information system sets itself the task of automating certain operations. Most often, these are deterministic operations, in which there is no place for probabilistic outcomes. Programmers for the most part solve exactly such problems. Therefore, all their tools are sharpened by modeling first-order predicates, the PLO in particular. Therefore, where it is necessary to model second-order predicates, OOP cannot cope.

Examples


One might think that such a case is really rare, however, the modeling of an enterprise’s activity is directly related to the modeling of this kind of relationship between objects. For example, we model the construction of a business function. There are three common ways to represent its construction (construction paradigms). The first method was mentioned above - the over-function is represented as a construction consisting of sub-functions (IDEF0 notation). The second way is the construction of a function consists of a set of its participants (for example, a sales function consists of a seller, a potential buyer and a product). This type of construction is modeled in IDEF0 notation with the help of the arrows in the square “bottom”. The third type of structure corresponds to the current case: the function consists of operations of a certain type. For example, the sales function consists of the sale of goods. The function is an object, the operation is an object. Sales operations are objects of the same type. That is, the thesis that the building consists of bricks is similar to the thesis: a function consists of operations of a certain type. There is no language for modeling this kind of statements. As I have already said, the reason is that this statement is in second-order predicates. Another example of such statements is: a crystal consists of atoms. Through the analogy with the crystal, we move on to the most difficult to understand case, associated with the description of structures.

Construction of cells with objects of different types


Let there be a crystal. Until now, we have not considered the connection between the elements of the structure as part of the structure. From this point on we will need communication. It is clear that the division of an object into parts requires a description of the connections between the elements. When divided into enumerated elements, we can enumerate all the connections between the elements. However, when dividing into objects of the same type without listing all the elements, the question arises of how to describe the connections between the elements of a structure? For example, in a building, most bricks have connections with other bricks through masonry mortar. Then we say that the building consists of bricks, each brick has connections with neighboring bricks. At the same time, 60 percent of bricks have 5 neighbors, 30 percent - 4 neighbors, 5 percent - 3 neighbors, and 5 percent - 2 neighbors. Thus, for any selected brick from the first group there are five, which are also part of the building and are associated with the selected brick through the masonry mortar. Now we will write the same statement regarding the business function. The sales function consists of sales operations. Suppose that operations follow one after another. Then we can say that for any operation there is a previous operation of the same type and there is a subsequent operation of the same type. So we modeled the type of connection in the construction, which is described by types of objects, but not objects. Now imagine a crystal of a more complex structure, in which atoms of different elements participate and are located in a complex crystal lattice. How to describe the structure of such a crystal? Those who are engaged in the description and classification of crystals know that there are infinitely many ways to describe this kind of lattice. For example, suppose there is a one-dimensional chain of atoms of two different types A and B alternating with each other in increments of one angstrom. It can be said that the crystal consists of cells, each of which consists of atoms of type A and B, located after 1 angstrom, the shift between cells is 2 angstroms. (The statement that the crystal consists of cells, each of which consists of type A and B atoms located through 3 angstroms will also be true. The shift between cells is 2 angstroms and the cells intersect in space. Each such regular structure is visible on the X-ray diffraction pattern of the crystal . To limit the number of options usually take the most closely spaced atoms). On the other hand, it can be said that a crystal consists of two types of atoms: A and B. This statement is similar to the previous one, but differs from it in that in the first case the design of the crystal consists of cells, and the design of cells, in turn, of atoms. In the second case, the crystal design directly consists of atoms. Another example: let the sales function perform two types of operations: the coordination of conditions and the shipment of goods. It can be said that a function consists of cells, each of which has an operation for coordinating conditions and an operation for shipping goods. And you can say: the function consists of operations to harmonize the conditions and operations for the shipment of goods. These are two different statements.

Selection of a sequence of elements in a typical cell


Let's look at the sequence of operations: AVAVAVAV ... We see that the chain is infinite and it is possible to begin the selection of cells from any place. For example, first the Phoenix bird was born from the ashes, then it burned down, then it was born from the ashes, then it burned down. Or: first, the Phoenix bird burned, then was born from the ashes, then burned again. The cell can start anywhere. Therefore, in order to have a basis for a start, choose some condition that is fulfilled for all operations of the cell. For example, all transactions relate to a single transaction. Conditions can be any, and in general the cell can begin with an operation of any type. Analysts usually do not know this and, in order to somehow justify the choice of the initial operation in the cell, they hypnotize themselves with the thought that the chain should have a mystical goal. Instead of saying that operations in a chain can be combined into a group on some (generally arbitrary) basis, analysts come up with alchemical formulas. Moreover, this alchemy is present in the process definition.

Modeling second-order predicates using OWL


The OWL Full standard allows you to simulate second-order utterances due to the fact that both objects, classes (sets of objects) and even types of relationships that can exist between objects (predicates) can act as objects of an utterance in it. All these kinds of entities for OWL are nodes of the graph, the edges in which are concrete statements.
Statements of the second order, written in the form of OWL, as a rule, do not provide computability (the possibility of obtaining conclusions by means of logic inference machines). However, this should not be considered an obstacle to the implementation of automated systems. In most cases, work with OWL-models occurs in the application code and takes into account the features and limitations of a specific task, and does not pretend to "calculate everything".In practice, it is impossible to fully rely on standard logical inference even when working with even first-order statements — with a large amount and variety of data, such tasks require too much computational resources.
There are several ways to model statements about classes in the OWL language. One of the most practical methods is to introduce special classes whose objects are statements about classes or predicates. Let us give an example (for those not familiar with the standard, we write it in natural language):

It is possible to summarize the requirements functional - remove from the class name the words "... to the composition of the object", and include the indication of the predicate to which it belongs ("Consists of", "Located in") in the number of class connections "Requirement". In the same way, the modality (“must”, “may”, etc.) can be excluded from the class name. Then the class will not even be called “Requirement”, but “Approval” or “Axiom”. This will add a full second level to the structure of the model, presented in the form of a graph. The choice of the level of formalism depends solely on the applied problem being solved.
The automated system reads and interprets the above statements, for example, in the following way: at least one object of the class “Brick” must be present in the composition of each object of the “Building” class. You can not fall to the level of concrete bricks, interpreting the statement differently - as a statement that the building basically consists of the objects of the class "Brick" (which exactly is not known). In this case, other statements about the “Brick” class can be used - for example, that bricks (that is, all objects of the “Brick” class) have a certain density, mass, thermal conductivity, etc. From this, the program can make a conclusion about the properties of the building.
In any case, this logic — the ability to interpret objects of the class “Requirements to an object composition” as requirements — must be laid down in the code, which is permissible in the context of solving specific applied problems.
You can go a little different way - to put the classes not only on the second position in the predicate, but also on the first, that is, to make statements about the classes as such:

Interpretation of statements of this kind, of course, also remains on the application software.
Note that some statements about classes can be made in the framework of the more rigorous OWL formalism, without losing the computability of the model using standard inference machines. This is achieved by using the constraints of the values ​​of properties (cardinality) with quantifiers: some, only, exactly, and others. Another way to write our example is:

When such statements are saved, so-called “empty nodes” are formed in the graph. In this case, the empty node will be an anonymous class for which the restriction is set. In accordance with the concept of the OWL standard, empty nodes represent assertions with a quantifier of existence — that is, in our case, the statement that there are such objects that consist of bricks. A subclass of such objects are buildings.
Such a design is rather cumbersome, and the rules of logical inference are slow and capricious in application, therefore in practice it is usually easier to do with the first or second method.
Note that all this time we have been discussing the statement “The building consists of bricks”, the meaning of which is not very precise from a logical point of view. It is not clear what we wanted to say:

and so on.When implementing an automated system, such semantic "backlash" must be eliminated. That is why at the beginning of the article I immediately gave the definitions of the terms that will be used in the current article.

Mixed designs


Let us return to the structure of the tree and look at the thesis: the tree consists of branches, trunk and roots. This thesis says that the construction of a tree consists of an object - a trunk and objects of two different types - branches and roots.

Pseudo-example


Consider the frequent case when a chart is constructed in IDEF0 notation. Then, one of the functions on this diagram is often said to be “decomposed” into a diagram in BPMN notation. This can be found in the Businessstudio program I mentioned earlier. Since a function is an object in the domain, and the diagram in BPMN notation is a model of a concept, we see that an error occurs: the function is divided into a concept. It can not be. The function can be divided into cells with operations. In each cell there are several operations related to each other by temporal connections. For all cells, the concept of a cell of this type is introduced. This concept is modeled in BPMN notation. So it will be right.

Correlation of structures in two different paradigms


A frequently encountered way of describing an object is as follows: consider the construction of an object in two different paradigms, for example, in the paradigm of the “external” and “internal” structures. Then we will go to divide the object into parts in two completely different ways. For example, we will divide the building from one side into premises, and from the other into technical subsystems. And here it is a very important factor that we, as a rule, do not notice, but it works at the level of intuition. We divide an object into parts in two different paradigms in such a way that it is also possible to establish a correspondence between structural elements in two different paradigms. For example, after dividing a building into rooms and subsystems, we can say that rooms can be divided into parts — parts of those subsystems that are located in these rooms. I.e,the division into parts in two different paradigms is intuitively made dependent on each other. And this is by no means obvious. Modern engineering design standards are based on such a division of the object, although I am sure that they do not have a prescribed requirement for such a restriction on modeling.

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


All Articles