RU2748741C2 - Asset master data management system - Google Patents

Asset master data management system Download PDF

Info

Publication number
RU2748741C2
RU2748741C2 RU2018130478A RU2018130478A RU2748741C2 RU 2748741 C2 RU2748741 C2 RU 2748741C2 RU 2018130478 A RU2018130478 A RU 2018130478A RU 2018130478 A RU2018130478 A RU 2018130478A RU 2748741 C2 RU2748741 C2 RU 2748741C2
Authority
RU
Russia
Prior art keywords
links
view
master data
inter
node
Prior art date
Application number
RU2018130478A
Other languages
Russian (ru)
Other versions
RU2018130478A3 (en
RU2018130478A (en
Inventor
Андрей Валентинович Сухобоков
Артем Андреевич Сухобоков
Андрей Львович Михайлов
Виктория Игоревна Строгонова
Original Assignee
Общество С Ограниченной Ответственностью "Оптимальное Управление"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Оптимальное Управление" filed Critical Общество С Ограниченной Ответственностью "Оптимальное Управление"
Publication of RU2018130478A3 publication Critical patent/RU2018130478A3/ru
Publication of RU2018130478A publication Critical patent/RU2018130478A/en
Application granted granted Critical
Publication of RU2748741C2 publication Critical patent/RU2748741C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management

Abstract

FIELD: data management.SUBSTANCE: invention relates to a system and method for managing asset master data. The system contains the core of the system that supports the creation, modification and storage in memory of a model of master data on assets: a model of master data on assets, which necessarily includes: at least three hierarchically organized views corresponding to some representations of the available landscape of assets, each of which is matched by at least one unique generic classifier of the asset master data included in the model; generic classifiers, each of which is a hierarchical system of classes built on the basis of the principles of inheritance and encapsulation, while the class of each object of the master data on assets in the classifier completely defines all the attributes of the corresponding object of this class and all types of its connections with objects of other views; sets of links of each object of any of the views with objects of other views for transition between different representations of the same asset; for each hierarchically organized view: a set of non-hierarchical (network) relationships between assets belonging to the same view, displaying view-specific relationships between assets; a set of structural models of asset master data describing the internal relationships and component composition of specific types of assets; a set of functional models of the master data on assets, built on the basis of algorithms and based on mathematical models, using the attribute values of individual instances of the master data on assets and the attributes of related instances of the master data on assets in order to check the completeness of the asset data entry or identify the type of asset depending on the values of the attributes; at least three interface modules that are associated with the system core, each of which provides interaction of the system core with one application or with one functional module of the ERP system, each interface module is designed to be unloaded upon requests from external applications and/or ERP modules, the requested piece of master data about assets related to the specific view of the master data with which the requesting module or application works; at least one algorithmic module associated with the core of the system and configured to process the entire asset master data model and/or individual views of the master data on assets model, providing operations from the following list: checking the correctness and completeness of the system of inter-view links between objects in the model, and this check is performed according to an algorithm, in the process of which: to check the completeness and correctness of inter-view links of each node, all rings of one grid of inter-view links existing in external memory are traversed node, when executed, to avoid multiple traversal of the same rings of links, markup of links in external memory is performed, at the same time, in the process of performing the traversal, the presence of not expected links or broken links is revealed by using a set of inter-view links from the master data model, and after the completion of the traversal, in the case of returning to the original node, it is determined that the chain of links of this node is correct, if there are unmarked links in the set of inter-view links, the presence of missing links is determined; checking the correctness of classifiers; search for objects by classifiers; formation of new views of the master data based on the data of other views available in the system or on the basis of external data; formation of reports on the data model and on the adjustments made in it; a module of the dialog interface, connected with the core of the system and providing the creation and correction of the master data by the administrator of the master data in the dialog mode.EFFECT: increasing the efficiency of checking the correctness and completeness of the system of inter-view connections between objects in the model.16 cl, 20 dwg

Description

[0001] Заявляемое техническое решение относится к области компьютерных технологий, применяемых для создания и поддержки единого консистентного представления мастер-данных об активах, которое устраняет дублирование мастер-данных об активах в различных модулях корпоративной системы и отдельных приложениях. Устранение дублирования позволяет исключить неизбежные противоречия, возникающие при одновременном использовании нескольких различных представлений мастер-данных об активах. Помимо улучшения качества данных это позволяет сократить затраты на поддержку актуального состояния мастер-данных об активах.[0001] The claimed technical solution relates to the field of computer technologies used to create and maintain a single consistent presentation of the master data on assets, which eliminates duplication of master data on assets in various modules of the corporate system and individual applications. Eliminating duplication eliminates the inevitable inconsistencies that arise when multiple different views of asset master data are used concurrently. In addition to improving data quality, this can reduce the cost of keeping master asset data up to date.

[0002] При этом под мастер-данными понимаются согласованные данные, описывающие основные сущности, участвующие в бизнес-процессах предприятия. Мастер-данные доступны и используются несколькими приложениями в масштабе предприятия. Основными характерными особенностями мастер-данных являются [1.2]:[0002] In this case, master data refers to consistent data describing the main entities involved in the business processes of the enterprise. Master data is available and used by several applications across the enterprise. The main salient features of master data are [1.2]:

• высокая важность для компании;• high importance for the company;

• меньшая волатильность по сравнению с транзакционными данными;• less volatility compared to transactional data;

• наличие стандартных возможностей, создания, чтения, корректировки, уничтожения и поиска;• availability of standard capabilities, creation, reading, correction, destruction and search;

• повторная используемость;• reusability;

• использование в качестве ссылочных объектов в транзакционных данных.• use as reference objects in transactional data.

УРОВЕНЬ ТЕХНИКИLEVEL OF TECHNOLOGY

[0003] В существующих корпоративных системах управления в нескольких модулях или подсистемах, как правило, независимо ведутся мастер-данные о производственных фондах (активах), отражающие различные характеристики одних и тех же объектов. Даже когда разные приложения являются модулями единой ERP-системы, все равно используется такой же подход [3,4]. Примерная структура основных данных об активах в существующих системах управления крупными компаниями показана на Фиг. 1 [5].[0003] In existing corporate management systems in several modules or subsystems, as a rule, master data on production assets (assets) are maintained independently, reflecting different characteristics of the same objects. Even when different applications are modules of a single ERP system, the same approach is still used [3,4]. An exemplary structure of asset master data in existing large company management systems is shown in FIG. fifteen].

[0004] Понимание самого термина «актив» - не однозначно. Термин трактуется разными компаниями по-разному. Практически всегда, в понятие активов включаются материальные активы (здания, сооружения, оборудование, земельные участки, строящиеся объекты и т.д.) и их составные части. Несколько реже в понятие активов включаются нематериальные активы - программные системы, базы данных, патенты, товарные знаки и т.д. Еще реже в российской практике [6] и более часто в западной в единое понятие активов включаются и финансовые активы - акции, облигации, займы, доли в совместных проектах, векселя и т.д.[0004] The understanding of the term "asset" itself is not unambiguous. The term is interpreted differently by different companies. Almost always, the concept of assets includes tangible assets (buildings, structures, equipment, land, facilities under construction, etc.) and their components. Somewhat less often, the concept of assets includes intangible assets - software systems, databases, patents, trademarks, etc. Even less often in Russian practice [6] and more often in Western practice, financial assets are also included in a single concept of assets - stocks, bonds, loans, shares in joint projects, promissory notes, etc.

[0005] Общая численность парка активов в купных компаниях, таких как ОАО «РЖД», НК «Роснефть», может достигать нескольких десятков миллионов единиц. Основную часть такого большого парка (более 90%), как правило, составляют материальные активы.[0005] The total number of assets in the purchased companies, such as OJSC Russian Railways, NK Rosneft, can reach several tens of millions of units. The bulk of such a large park (over 90%) is usually tangible assets.

[0006] Для поддержки актуального состояния мастер-данных и организации работы с мастер-данными различных приложений используются системы управления мастер-данными (MDM-системы). Целью применения MDM-систем является формирование и поддержка консистентного, функционально полного и актуального представления основных данных, отражающих все нюансы структуры и деятельности предприятия. Наличие и поддержка такого единственного содержательного представления мастер-данных является критическим фактором, для достижения бизнес-целей предприятия. MDM-системы представляют собой инструментарий для поддержки процессов управления мастер-данными в масштабе предприятия на основе принятых руководящих документов, политик и стандартов [7-9]. С точки зрения принадлежности программных продуктов к прикладному или платформенному программному обеспечению MDM-системы входят в состав платформы и являются неотъемлемой частью комплекса систем управления информаций в масштабах предприятия (Enterprise Information Management) [10].[0006] Master data management systems (MDM systems) are used to keep the master data up-to-date and to organize the work with the master data of various applications. The purpose of using MDM systems is to form and support a consistent, functionally complete and up-to-date presentation of basic data, reflecting all the nuances of the structure and activities of the enterprise. Having and maintaining such a single meaningful view of the master data is critical to achieving the business goals of the enterprise. MDM systems are a toolkit to support enterprise-wide master data management processes based on accepted guidelines, policies and standards [7-9]. From the point of view of the belonging of software products to application or platform software, MDM systems are part of the platform and are an integral part of the complex of enterprise information management systems (Enterprise Information Management) [10].

[0007] Ведущая мировая аналитическая компания Gartner традиционно ежегодно выпускала два независимых аналитических обзора по разным классам MDM-систем - по MDM-системам с данными о предметах, к которым относились и системы управления мастер-данными об активах, и MDM-системам с данными о людях, организациях и командах. В 2017 году компания изменила этой традиции и выпустила единый обзор [11]. Согласно этому обзору, каждое из бизнес-приложений (например, в рамках ERP, CRM или PLM) или их комплексов (сьютов) может хранить свои данные и предлагать свои собственные возможности управления данными. MDM-система действует в качестве промежуточного хаба, который выполняет посреднические функции, управляет, осуществляет обмен и регулирует мастер-данные, общие для всех приложений. В течение многих лет организации пытались добиться «единого представления» мастер-данных с помощью ERP или других функциональных систем, которые не были предназначены для поддержки MDM, поэтому эти попытки окончились неудачей, либо они оказались слишком дорогостоящими для постоянной эксплуатации. Это создало предпосылки для появления MDM-систем. Проникновение MDM-систем на рынок сейчас составляет менее 10%, идет постоянный, хотя и медленный, рост. Рынок MDM-систем растет быстрее рынка программного обеспечения в целом [11].[0007] The world's leading analytical company Gartner traditionally issued two independent analytical reviews on different classes of MDM systems annually - on MDM systems with data on subjects, which included master data management systems for assets, and MDM systems with data on people, organizations and teams. In 2017, the company changed this tradition and released a single review [11]. According to this overview, each of the business applications (for example, within ERP, CRM or PLM) or their complexes (suites) can store their data and offer their own data management capabilities. The MDM system acts as an intermediate hub that mediates, manages, exchanges and regulates master data common to all applications. For many years, organizations have tried to achieve a “single view” of master data using ERP or other functional systems that were not designed to support MDM, so these attempts failed or they were too expensive to maintain. This created the preconditions for the emergence of MDM systems. Market penetration of MDM systems is now less than 10%, and there is a steady, albeit slow, growth. The market for MDM systems is growing faster than the software market as a whole [11].

[0008] Исторически, MDM-системы начали развиваться как однодоменные системы, предназначенные для работы с мастер-данными какой-то одной категории (предметной области). Наиболее распространенные домены данных:[0008] Historically, MDM systems began to evolve as single-domain systems designed to work with master data of one category (subject area). The most common data domains are:

• Клиенты / потребители / пациенты / жители• Customers / consumers / patients / residents

• Поставщики / производители• Suppliers / manufacturers

• Каналы сбыта / партнеры• Distribution channels / partners

• Продукты / товарные позиции• Products / headings

• Закупленные части• Purchased parts

• Активы• Assets

• Расположения• Locations

• Счета главной книги• General ledger accounts

[0009] Наряду с доминирующими сейчас однодоменными MDM-системами, предназначенными для работы с данными одной предметной области, пока еще мало распространены, но быстро расширяются сегменты мультидоменных и мультивекторных MDM-систем. Мультидоменные системы предназначены для работы с данными нескольких предметных областей. Они должны быть способны поддержать все домены мастер-данных, которые необходимы организации.[0009] Along with the currently dominant single-domain MDM systems designed to work with data from one subject area, segments of multi-domain and multi-vector MDM systems are still not widely spread, but segments of multi-domain and multi-vector MDM systems are rapidly expanding. Multi-domain systems are designed to work with data from several subject areas. They must be able to support all of the master data domains that the organization needs.

[0010] По результатам опроса нескольких тысяч клиентов, проведенного аналитиками компании Gartner, в течение пяти календарных кварталов, заканчивающихся четвертым кварталом 2015 года, процент тех, кто предъявлял хоть какие-нибудь требования к мультидоменности при приобретении MDM-системы, увеличился более чем в четыре раза, с 3,0% до 13,0% [11]. В этой группе процент тех, кто формально проверял эти возможности, вырос с 0,5% до 3,1% (шестикратное увеличение) в третьем квартале 2015 года, а затем снизился до 0,8% в следующем квартале. В это же время, процент тех, кто требовал эти возможности, но не тестировал их, вырос к концу 2015 г. более чем в четыре раза с 3,0% до 12,0%. В течение 2016 г. процент тех, кто высказывал некоторый уровень требований по работе в нескольких доменах основных данных, достиг максимума в 14,6% во втором квартале и снизился к окончанию третьего квартала до уровня 13,5%. Процент тех, кто формально проверял эти возможности, достиг своего пика на уровне 1,8% в третьем квартале. В это же время процент тех, кто требовал, но не проверял их, достиг 13,7% во втором квартале и снизился к концу третьего квартала до 11,0% [11].[0010] According to a survey of several thousand customers conducted by analysts at Gartner, during the five calendar quarters ending with the fourth quarter of 2015, the percentage of those who had any requirement for multi-domain when purchasing an MDM system increased by more than four times, from 3.0% to 13.0% [11]. In this group, the percentage of those who formally tested these features rose from 0.5% to 3.1% (a sixfold increase) in the third quarter of 2015, and then declined to 0.8% in the next quarter. At the same time, the percentage of those who demanded these features, but did not test them, more than quadrupled by the end of 2015, from 3.0% to 12.0%. During 2016, the percentage of those who expressed some level of requirements for working in multiple master data domains peaked at 14.6% in the second quarter and declined to 13.5% by the end of the third quarter. The percentage of those who formally tested these features peaked at 1.8% in the third quarter. At the same time, the percentage of those who demanded, but did not check them, reached 13.7% in the second quarter and decreased by the end of the third quarter to 11.0% [11].

[0011] Концепция мультивекторных MDM-систем расширяет понятие мультидоменных MDM-систем. Эти системы обеспечивают интегрированный набор средств для обеспечения единства, точности, стратегического управления, семантической консистентности и учета официальных общих активов основных данных предприятия. Функциональные возможности мультивекторной MDM-системы включают комплексные средства для моделирования данных, поддержки качества данных, управления данными, организации данных, службы передачи данных и интеграции данных в рабочий процесс и транзакционные сценарии использования. Мультивекторные MDM-системы также предлагают более высокий уровень масштабируемости, доступности, управляемости и безопасности. Помимо работы с разными предметными областями мультивекторные MDM-системы должны быть способны работать в разных отраслях и разных гос. органах, при разных сценариях использования (для проектирования структур данных, в качестве операционной или аналитической MDM-системы), для разных организационных структур (централизованная, федеративная, локализованная) и при разных сценариях внедрения MDM-системы (регистровая, консолидационная, в режиме сосуществования и централизованная) [11].[0011] The concept of multi-vector MDM systems expands the concept of multi-domain MDM systems. These systems provide an integrated set of tools for ensuring consistency, accuracy, strategic management, semantic consistency, and accounting for the official shared assets of enterprise master data. The functionality of a multi-vector MDM system includes comprehensive tools for data modeling, data quality support, data management, data organization, data service, and data integration into workflow and transactional use cases. Multi-vector MDM systems also offer higher levels of scalability, availability, manageability, and security. In addition to working with different subject areas, multi-vector MDM systems should be able to work in different industries and different government agencies. authorities, for different scenarios of use (for the design of data structures, as an operational or analytical MDM system), for different organizational structures (centralized, federated, localized) and for different scenarios for the implementation of an MDM system (register, consolidation, coexistence and centralized) [11].

[0012] Среди совокупности функциональных возможностей, присущих современным MDM-системам согласно [11], с точки зрения предлагаемого изобретения необходимо выделить и более подробно рассмотреть две следующие - управление иерархиями и внутреннюю интеграцию комплекса продуктов.[0012] Among the set of functional capabilities inherent in modern MDM systems according to [11], from the point of view of the proposed invention, it is necessary to highlight and consider in more detail the following two - management of hierarchies and internal integration of a set of products.

[0013] Управление иерархиями - это способность MDM-системы моделировать и хранить несколько иерархий как внутри отдельных доменов мастер-данных, так и пересекающих охватываемые домены для того, чтобы всесторонне классифицировать все сущности мастер-данных для различных бизнес-требований, а также для широких функций, таких как поиск и отчетность. Эта способность должна включать в себя поддержку нескольких связанных или автономных иерархий, относящихся к одному домену или комбинации основных данных из нескольких доменов данных. Также для иерархических данных должна поддерживаться возможность битемпорального моделирования, когда одни и те же данные отображаются в двух иерархиях: «как должно быть по документам» и «как есть по факту». Например, это может использоваться для формирования иерархии архитектурного представления и иерархии коммерческого использования объектов недвижимости в составе мастер-данных о недвижимости. MDM-система должна обеспечивать поддержку сбалансированных, неуравновешенных и рекурсивных иерархий, возможность визуализации для облегчения поддержки и представления иерархических данных, а также возможность управления версиями иерархий, чтобы можно было использовать журнал аудита и восстанавливать данные в процессе создания и поддержки иерархий.[0013] Hierarchy management is the ability of an MDM system to model and store multiple hierarchies both within individual master data domains and across the covered domains in order to comprehensively classify all master data entities for various business requirements as well as broad functions such as search and reporting. This capability should include support for multiple related or autonomous hierarchies belonging to the same domain or a combination of master data from multiple data domains. Also, for hierarchical data, the possibility of bitemporal modeling should be supported, when the same data is displayed in two hierarchies: "as it should be according to documents" and "as is in fact". For example, it can be used to form an architectural representation hierarchy and a real estate commercial use hierarchy as part of the real estate master data. An MDM system must provide support for balanced, unbalanced, and recursive hierarchies, visualization capability to facilitate the maintenance and presentation of hierarchical data, and the ability to version hierarchies so that audit trail can be used and data can be recovered as hierarchies are created and maintained.

[0014] Внутренняя интеграция комплекса продуктов - это способность MDM-системы обеспечить как возможность по умолчанию интеграцию между представленными внутри доменами мастер-данных, независимо от того хранятся они вместе или по отдельности с точки зрения, например, объектов хранения данных, а также возможность визуализировать и порождать эту интеграцию. Это может достигаться с помощью одного продукта или нескольких продуктов в составе комплекса или портфеля продуктов, а также за счет использования создаваемых клиентами или предварительно пакетированных моделей данных (или обоих стилей моделирования одновременно). Однако если эта способность реализуется, то должна также обеспечиваться поддержка обоих различных стилей внедрения MDM-системы для каждого отдельного домена мастер-данных во времени и одновременно для множества доменов данных, а также заранее предусматриваемые возможности для миграции способов внедрения доменов между стилями внедрения.[0014] Internal integration of a set of products is the ability of an MDM system to provide, as a default, integration between master data presented inside domains, regardless of whether they are stored together or separately in terms of, for example, data storage objects, as well as the ability to visualize and generate this integration. This can be achieved with a single product or multiple products as part of a suite or portfolio of products, or through the use of customer-generated or pre-packaged data models (or both modeling styles at the same time). However, if this capability is to be realized, it must also support both different MDM deployment styles for each individual master data domain over time and across multiple data domains, as well as pre-envisioned opportunities to migrate domain deployment styles between deployment styles.

[0015] Еще одной аналитической компанией помимо Gartner, которая регулярно выпускает обзоры по MDM-системам, является компания Forester. В первом квартале 2016 года компания выпустила обзор [12], в котором выделила четыре класса MDM-систем и проанализировала продукты двенадцати компаний. Были выделены:[0015] Another analyst company besides Gartner that regularly publishes reviews on MDM systems is Forester. In the first quarter of 2016, the company released a survey [12], in which it identified four classes of MDM systems and analyzed the products of twelve companies. Were highlighted:

• MDM-системы, обеспечивающие интеграцию данных и решающие стандартные задачи;• MDM systems that provide data integration and solve standard problems;

• мультидоменные MDM-системы и MDM-системы, поддерживающие множество представлений мастер-данных;• multi-domain MDM systems and MDM systems that support multiple views of master data;

• контекстуальные MDM-системы, поддерживающие семантическое представление бизнес-данных;• contextual MDM systems that support the semantic representation of business data;

• аналитические MDM-системы, интегрированные внутрь аналитических платформ.• analytical MDM-systems, integrated inside analytical platforms.

[0016] Из четырех представленных в [12] классов MDM-систем с точки зрения данного изобретения наибольший интерес представляет группа мультидоменных MDM-систем и MDM-систем, поддерживающих множество представлений мастер-данных. В качестве лидеров этой группы выделены компании SAS, SAP и IBM. У этих компаний в настоящий момент нет MDM-систем, способных обеспечить возможности по управлению мастер-данными об активах, которые реализуются в данном изобретении.[0016] Of the four classes of MDM systems presented in [12], from the point of view of the present invention, the group of multi-domain MDM systems and MDM systems that support multiple representations of master data is of greatest interest. SAS, SAP and IBM are the leaders of this group. These companies do not currently have MDM systems capable of providing the master asset management capabilities that are implemented in this invention.

[0017] Основные причины, по которым существующие системы управления мастер-данными об активах не обеспечивают полноценную поддержку предметной области в отличие от MDM-систем для других доменов [5]:[0017] The main reasons why existing systems for managing asset master data do not provide full support for the subject area, unlike MDM systems for other domains [5]:

• В разных прикладных областях, где ведется работа с активами, применяются различные принципы выделения активов. Например, для целей бухгалтерского учета в одно основное средство могут быть объединены несколько рядом стоящих единиц оборудования, имеющих одинаковые правила начисления амортизации. Для целей ремонта и технического обслуживания выделяются объекты, имеющие разный порядок ремонта и обслуживания. Для целей имущественного учета, выделяются объекты, которые независимо могут быть проданы или сданы в аренду, например, одно волокно в пучке оптических волокон или оптоволоконном кабеле.• Different asset management application areas have different asset allocation principles. For example, for accounting purposes, several adjacent pieces of equipment with the same depreciation rules can be combined into one fixed asset. For the purposes of repair and maintenance, objects are allocated with a different procedure for repair and maintenance. For the purposes of property accounting, objects are allocated that can be independently sold or leased, for example, one fiber in a bundle of optical fibers or fiber-optic cable.

• В разных приложениях, работающих с одним и тем же парком активов, используются различные иерархии вложенности объектов, причем различаются как объекты группирующих уровней, так и объекты нижних уровней таких детализирующих иерархий.• Different applications working with the same asset park use different hierarchies of nesting of objects, with different objects of grouping levels and objects of the lower levels of such detailing hierarchies.

• При функционировании комплексных систем управления пользователям очень часто необходимо видеть смежные представления одного и того же актива. Например, из технологического представления, необходимо видеть объекты технического обслуживания и ремонта. Из объектов технического обслуживания и ремонта необходимо видеть основные средства, на которые будут списываться затраты. Из основных средств необходимо видеть соответствующие объекты имущества и т.д. Почти всегда пользователям необходимо видеть объекты нескольких разных представлений. Отсутствие взаимно однозначного соответствия между объектами нижнего уровня различных приложений приводит к появлению связей многие ко многим между объектами разных представлений, описывающими один и тот же актив. Как уже было показано ранее, одному основному средству может соответствовать множество объектов технического учета. Но также справедливо и обратное: одному объекту технического учета, например, асфальтированной дороге, может соответствовать множество основных средств, если ее отдельные участки, не являющиеся единицами технического учета, строились (выкупались) по разным ценам или в разное время.• When operating complex management systems, users very often need to see adjacent views of the same asset. For example, from the technological view, it is necessary to see the objects of maintenance and repair. From the objects of maintenance and repair, it is necessary to see the fixed assets to which the costs will be written off. From fixed assets it is necessary to see the corresponding objects of property, etc. Almost always, users need to see objects from several different views. The lack of one-to-one correspondence between the objects of the lower level of different applications leads to the appearance of many-to-many relationships between objects of different representations describing the same asset. As it was shown earlier, many objects of technical accounting can correspond to one fixed asset. But the opposite is also true: one object of technical accounting, for example, an asphalt road, can correspond to many fixed assets if its separate sections, which are not units of technical accounting, were built (bought) at different prices or at different times.

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

[0018] Предлагаемая архитектура системы состоит из ядра системы, набора интерфейсных модулей и набора высокоуровневых алгоритмических модулей.[0018] The proposed system architecture consists of a system core, a set of interface modules and a set of high-level algorithmic modules.

[0019] Ядро системы, поддерживает создание / модификацию и хранение в памяти модели мастер-данных об активах, построенной в виде набора иерархически организованных ракурсов (предметных областей) активов.[0019] The core of the system supports the creation / modification and storage in memory of a master data model about assets, built as a set of hierarchically organized views (subject areas) of assets.

[0020] Интерфейсные модули обеспечивают выгрузку из модели и загрузку в модель данных отдельного ракурса мастер данных об активах по запросу какого-нибудь приложения, работающего с этим ракурсом мастер-данных.[0020] The interface modules provide the unloading from the model and loading into the data model of a particular view of the master data about assets at the request of some application working with this view of the master data.

[0021] Модуль диалогового интерфейса обеспечивает поддержку диалога при создании и корректировке мастер-данных администратором мастер-данных.[0021] The dialog interface module provides dialog support when creating and updating master data by a master data administrator.

[0022] Высокоуровневые алгоритмические модули обеспечивают проверку корректности полноты системы связей между объектами в модели, проверку корректности классификаторов, поиск объектов по классификаторам, формирование новых ракурсов мастер-данных на основе имеющихся в системе данных других ракурсов или на основе внешних данных, формирование отчетности по модели данных и по сделанным в ней корректировкам, а также другие подобные операции.[0022] High-level algorithmic modules provide checking the correctness of the completeness of the system of connections between objects in the model, checking the correctness of classifiers, searching for objects by classifiers, generating new views of master data based on data from other angles in the system or based on external data, generating reporting on the model data and adjustments made in it, as well as other similar operations.

[0023] Различные предметные области представлены специфическими для них иерархиями объектов. Каждой предметной области свойственна собственная система классов объектов. Классы объектов строятся на принципах полиморфизма и наследования и определяют свойства (набор атрибутов) объекта.[0023] Various subject areas are represented by their specific object hierarchies. Each subject area has its own system of object classes. Object classes are based on the principles of polymorphism and inheritance and define the properties (set of attributes) of an object.

[0024] Присутствующие в разных иерархиях объекты объединяются решетками связей для перехода от одного представления объекта к другому.[0024] Objects present in different hierarchies are united by link grids to move from one object representation to another.

[0025] Внутри иерархий между объектами имеются также неиерархические связи, отражающие специфические отношения между объектами, свойственные этой предметной области. Например, они могут отражать функциональное взаимодействие активов в процессе производства, логистический обмен товарами между активами, соседнее территориальное расположение и др. Эти связи могут иметь собственную систему классификации и наборы атрибутов.[0025] Within the hierarchies between objects, there are also non-hierarchical relationships reflecting the specific relationships between objects inherent in this subject area. For example, they can reflect the functional interaction of assets in the production process, the logistic exchange of goods between assets, neighboring territorial location, etc. These relationships can have their own classification system and sets of attributes.

[0026] Для идентификации представленных в системе активов используются структурные и функциональные модели активов. Каждая структурная модель активов описывает внутренние взаимосвязи и компонентный состав конкретных классов активов. Функциональные модели позволяют проверить полноту ввода данных об активе или идентифицировать тип актива в зависимости от значений атрибутов.[0026] Structural and functional asset models are used to identify assets represented in the system. Each structural asset model describes the internal relationships and component composition of specific asset classes. Functional models allow you to check the completeness of the asset data entry or identify the asset type depending on the attribute values.

[0027] Вся совокупность связей между активами внутри каждого представления и связей между объектами, относящимися к одному активу, в разных представлениях образует сложный граф специфической структуры. Некорректные или неполные связи в таком графе будут нарушать работу системы управления. Предлагаемые алгоритмы обеспечивает проверку корректности и полноты всей совокупности межракурсных связей в таком графе.[0027] The entire set of relationships between assets within each view and relationships between objects related to one asset, in different views, forms a complex graph of a specific structure. Incorrect or incomplete connections in such a column will disrupt the operation of the control system. The proposed algorithms provide verification of the correctness and completeness of the entire set of inter-view connections in such a graph.

[0028] Для того чтобы структура данных была корректной, необходимо, чтобы в ней были корректными все связи. То есть, переходя по связям между разными представлениями одного и того же актива, если не используются связи один ко многим или многие ко многим, пользователь должен видеть различные представления одного и того же объекта. Если же используются связи один ко многим или многие ко многим, пользователь должен иметь возможность вернутся на исходный актив.[0028] In order for a data structure to be correct, all links must be correct in it. That is, when navigating through relationships between different views of the same asset, if one-to-many or many-to-many relationships are not used, the user should see different views of the same object. If one-to-many or many-to-many relationships are used, the user should be able to return to the original asset.

[0029] Структура связей будет полной, если имеются все необходимые связи для перехода между разными представлениями одного и того же актива.[0029] The linkage structure will be complete if there are all necessary links to navigate between different representations of the same asset.

[0030] Проверка корректности всех связей имеет очень простой смысл: из каждого объекта пройти по кольцу связей в одном направлении, а потом в обратном. Если для всех объектов при проходе в обоих направлениях мы возвращаемся к первоначальному объекту, то все связи в выбранном кольце корректны. Чтобы проверить корректность всех связей одного объекта надо таким образом обойти все имеющиеся кольца связей.[0030] Checking the correctness of all links has a very simple meaning: from each object to go through the ring of links in one direction, and then in the opposite direction. If for all objects, when passing in both directions, we return to the original object, then all connections in the selected ring are correct. To check the correctness of all links of one object, it is necessary to bypass all the existing link rings in this way.

[0031] Проверка полноты связей построена на этом же приеме обхода колец связей. Для каждого класса объектов в каждом из представлений заранее определяется, какие связи с объектами других представлений должны существовать у объектов этого класса. Если при попытке обхода всех колец какая-то из связей отсутствует, то имеющийся набор связей является неполным.[0031] Checking the completeness of links is based on the same technique of traversing the rings of links. For each class of objects in each of the representations it is predetermined what connections with objects of other representations should exist for objects of this class. If, when trying to traverse all rings, one of the links is absent, then the existing set of links is incomplete.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF DRAWINGS

[0032] Фиг. 1 иллюстрирует пример структуры основных данных об активах в существующих системах управления крупными компаниями.[0032] FIG. 1 illustrates an example of the structure of asset master data in existing management systems of large companies.

[0033] Фиг. 2 иллюстрирует архитектуру системы управления мастер-данными об активах.[0033] FIG. 2 illustrates the architecture of a master asset data management system.

[0034] Фиг. 3 иллюстрирует пример иерархического построения ракурса объектов.[0034] FIG. 3 illustrates an example of a hierarchical view of objects.

[0035] Фиг. 4 иллюстрирует пример решетки связей, соединяющих один и тот же актив в разных ракурсах.[0035] FIG. 4 illustrates an example of a lattice of links connecting the same asset from different angles.

[0036] Фиг. 5 иллюстрирует пример неиерархических связей между объектами одного ракурса.[0036] FIG. 5 illustrates an example of non-hierarchical relationships between objects of the same view.

[0037] Фиг. 6 иллюстрирует алгоритм проверки полноты и корректности межракурсных связей в модели мастер-данных об активах.[0037] FIG. 6 illustrates an algorithm for checking the completeness and correctness of inter-view links in the master asset data model.

[0038] Фиг. 6.1 иллюстрирует продолжение алгоритма проверки полноты и корректности межракурсных связей в модели мастер-данных об активах.[0038] FIG. 6.1 illustrates the continuation of the algorithm for checking the completeness and correctness of inter-view links in the master asset data model.

[0039] Фиг. 6.2 иллюстрирует продолжение алгоритма проверки полноты и корректности межракурсных связей в модели мастер-данных об активах.[0039] FIG. 6.2 illustrates the continuation of the algorithm for checking the completeness and correctness of inter-view links in the master asset data model.

[0040] Фиг. 7 иллюстрирует применение стека для обхода объектов одного ракурса.[0040] FIG. 7 illustrates the use of a stack to traverse objects of the same view.

[0041] Фиг. 8 иллюстрирует применение стека для обхода всех колец одной решетки.[0041] FIG. 8 illustrates the use of a stack to traverse all rings of a single lattice.

[0042] Фиг. 9 иллюстрирует пример решетки, ранее представленной на Фиг. 3, в которой вместо смысловых названий иерархий использованы их внутренние номера, присвоенные им в момент их появления в модели данных[0042] FIG. 9 illustrates an example of the lattice previously shown in FIG. 3, in which instead of the semantic names of the hierarchies, their internal numbers are used, assigned to them at the time of their appearance in the data model.

[0043] Фиг. 10 иллюстрирует пример перенумерации объектов решетки Объект, имевший в решетке на Фиг. 9 внутренний номер иерархии 15, получил номер 1, а номера всех остальных иерархий сдвинулись.[0043] FIG. 10 illustrates an example of renumbering lattice objects. The object having in the lattice in FIG. 9, the internal hierarchy number 15, received the number 1, and the numbers of all other hierarchies were shifted.

[0044] Фиг. 11 содержит примеры двух правильно построенных колец связей в решетке.[0044] FIG. 11 contains examples of two well-formed bond rings in a lattice.

[0045] Фиг. 12 содержит примеры двух неправильно построенных колец связей в решетке.[0045] FIG. 12 contains examples of two incorrectly constructed bond rings in a lattice.

[0046] Фиг. 13 иллюстрирует алгоритм проверки корректности межракурсных связей в модели мастер-данных об активах.[0046] FIG. 13 illustrates an algorithm for checking the correctness of inter-view links in the master asset data model.

[0047] Фиг. 13.1 иллюстрирует продолжение алгоритма проверки корректности межракурсных связей в модели мастер-данных об активах.[0047] FIG. 13.1 illustrates the continuation of the algorithm for checking the correctness of inter-view links in the master asset data model.

[0048] Фиг. 14 иллюстрирует алгоритм проверки полноты межракурсных связей в модели мастер-данных об активах.[0048] FIG. 14 illustrates an algorithm for checking the completeness of inter-view links in the master asset data model.

[0049] Фиг. 14.1 иллюстрирует продолжение алгоритма проверки полноты межракурсных связей в модели мастер-данных об активах.[0049] FIG. 14.1 illustrates the continuation of the algorithm for checking the completeness of inter-view links in the master asset data model.

[0050] Фиг. 14.2 иллюстрирует продолжение алгоритма проверки полноты межракурсных связей в модели мастер-данных об активах.[0050] FIG. 14.2 illustrates the continuation of the algorithm for checking the completeness of inter-view links in the master asset data model.

[0051] Фиг. 15 иллюстрирует общую схему устройства, реализующего заявленный способ.[0051] FIG. 15 illustrates a general diagram of a device that implements the claimed method.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯCARRYING OUT THE INVENTION

[0052] Архитектура системы, включающая все перечисленные компоненты, представлена на Фиг. 2. и содержит:[0052] The system architecture, including all of these components, is shown in FIG. 2.and contains:

• ядро системы, поддерживающее создание, модификацию и хранение в памяти модели мастер-данных об активах;• the core of the system, which supports the creation, modification and storage in the memory of the model of master data about assets;

• по меньшей мере, три интерфейсных модуля, каждый из которых обеспечивает взаимодействие ядра системы с одним приложением или с одним функциональным модулем ERP-системы;• at least three interface modules, each of which provides interaction of the system core with one application or with one functional module of the ERP system;

• по меньшей мере, один алгоритмический модуль, реализующий некоторый алгоритм обработки всей модели мастер-данных об активах и/или отдельных ракурсов модели мастер-данных об активах;• at least one algorithmic module that implements some algorithm for processing the entire master asset data model and / or individual views of the asset master data model;

• модуль диалогового интерфейса, обеспечивающий создание и корректировку мастер-данных администратором в режиме диалога.• module of the dialog interface, providing the creation and correction of master data by the administrator in the dialog mode.

[0053] Модель мастер-данных об активах включает в себя, по меньшей мере, три ракурса, соответствующих некоторому взгляду на имеющийся парк активов. В качестве примеров таких ракурсов можно привести:[0053] the Asset master data model includes at least three views corresponding to some view of the existing asset pool. Examples of such angles include:

• основные средства (объекты бухгалтерского и налогового учета);• fixed assets (objects of accounting and tax accounting);

• объекты недвижимости;• real estate objects;

• объекты технического обслуживания и ремонта оборудования;• objects of equipment maintenance and repair;

• объекты имущества (правовой аспект);• objects of property (legal aspect);

• объекты различных подсистем мониторинга (пожарной безопасности, видеонаблюдения и др.);• objects of various monitoring subsystems (fire safety, video surveillance, etc.);

• объекты подсистем оперативного управления режимами работы оборудования непрерывных производств, транспорта и связи, коммунального хозяйства;• objects of subsystems for operational control of operating modes of equipment for continuous production, transport and communications, utilities;

• объекты различных MES и технологических систем управления производством,• objects of various MES and technological production control systems,

• объекты геоинформационных систем (визуализируемые на картах);• objects of geographic information systems (visualized on maps);

• объекты генерации, передачи и потребления электроэнергии в подсистемах управления производством и потреблением электроэнергии;• objects of generation, transmission and consumption of electricity in the subsystems of management of production and consumption of electricity;

• объекты добычи, транспортировки и отпуска нефти, нефтепродуктов и газа в подсистемах управления добычей, транспортировкой и сбытом углеводородов;• facilities for the production, transportation and supply of oil, oil products and gas in the subsystems for managing the production, transportation and marketing of hydrocarbons;

• обрабатывающие центры и транспортные механизмы в системах технологической подготовки производства (САМ-системах);• processing centers and transport mechanisms in the systems of technological preparation of production (CAM-systems);

• склады, распределительные центры и торговые точки в системах управления розничными сетями;• warehouses, distribution centers and retail outlets in retail chain management systems;

и другие представления активов с точки зрения конкретных приложений.and other views of assets from an application-specific perspective.

[0054] Каждый ракурс организован в виде уникальной иерархии, которая отображает принадлежность мастер-данных об активах (вхождение объектов в объекты более высокого уровня). Например, ракурс объектов технического обслуживания и ремонта оборудования (ТОиР), организован в виде иерархии, верхним уровнем которой является узел «Объекты ТОиР». На следующем уровне расположено столько узлов, сколько имеется в компании заводов, Следующий более низкий уровень представлен узлами, каждый из которых соответствует отдельному производственно-технологическому комплексу, расположенному на конкретном заводе. Еще более низкий уровень соответствует местам монтажа оборудования в рамках конкретных производственно-технологических комплексов. Самый нижний уровень иерархии соответствует единицам оборудования, смонтированным на конкретных местах монтажа оборудования. Описанный пример иерархии объектов технического обслуживания и ремонта представлен на Фиг. 3. Приведенный пример иерархически построенного ракурса предельно упрощен. Сложность организационной структуры больших компаний и техническая сложность современного оборудования таковы, что реальные иерархические структуры для представления мастер-данных об активах конкретной компании могут содержать любое конечное число уровней иерархии.[0054] Each view is organized in a unique hierarchy that reflects the ownership of the master asset data (the entry of objects into higher-level objects). For example, the view of equipment maintenance and repair (MRO) objects is organized in the form of a hierarchy, the top level of which is the "MRO Objects" node. At the next level, there are as many nodes as there are in the company of factories. The next lower level is represented by nodes, each of which corresponds to a separate production and technological complex located at a specific plant. An even lower level corresponds to the places of equipment installation within the framework of specific production and technological complexes. The lowest level of the hierarchy corresponds to pieces of equipment that are mounted at specific locations. The described example of a hierarchy of maintenance and repair objects is shown in FIG. 3. The given example of a hierarchically constructed view is extremely simplified. The complexity of the organizational structure of large companies and the technical complexity of modern equipment are such that real hierarchical structures for representing the master data on the assets of a particular company can contain any finite number of hierarchy levels.

[0055] Для каждого ракурса мастер-данных имеется один или несколько родовидовых классификаторов активов, которые обеспечивают классификацию всех объектов данного ракурса. Родовидовой классификатор представляет собой иерархическую систему классов, построенных на основе принципов наследования и инкапсуляции. Начальными объектами иерархий классов являются основные классы родовидовой модели, которые на следующих уровнях иерархии детализируются на группы видов активов по их функциональности, конструктивным особенностям, методам использования и т.д. Например: компьютер → компьютер персональный → ноутбук → ноутбук игровой → ноутбук игровой с высокими характеристиками → ноутбук игровой, модель MSI GT72S 6QE Dominator Pro G → ноутбук игровой, модель MSI GT72S 6QE Dominator Pro G, вариант исполнения us.[0055] For each master data view, there is one or more generic asset classifiers that provide a classification of all objects in a given view. A generic classifier is a hierarchical system of classes based on the principles of inheritance and encapsulation. The initial objects of class hierarchies are the main classes of the generic model, which at the next levels of the hierarchy are detailed into groups of asset types according to their functionality, design features, methods of use, etc. For example: computer → personal computer → laptop → gaming laptop → gaming laptop with high performance → gaming laptop, model MSI GT72S 6QE Dominator Pro G → gaming laptop, model MSI GT72S 6QE Dominator Pro G, version us.

[0056] Число уровней иерархии классов в классификаторе не ограничивается. Каждый основной и неосновной класс активов класс активов определяет некоторый набор атрибутов (характеристик) активов данного класса. Атрибуты имеют имена и значения. Значения атрибутов могут иметь широкий спектр типов: целое число, вещественное число, логический признак, текст, значение справочника, массив, множество, зависимость, график, таблица, схема, чертеж, изображение, документ, и др. Примерами атрибутов для класса активов «ноутбук» будут: тип процессора, частота процессора, размер экрана, размер оперативной памяти, емкость накопителя на жестком диске и т.д.[0056] The number of levels of the class hierarchy in the classifier is not limited. Each major and minor asset class, an asset class, defines a set of attributes (characteristics) of assets of that class. Attributes have names and meanings. Attribute values can have a wide range of types: integer, real number, logical sign, text, reference value, array, set, dependency, graph, table, diagram, drawing, image, document, etc. Examples of attributes for the asset class "laptop "Will be: processor type, processor frequency, screen size, RAM size, hard drive capacity, etc.

[0057] Число атрибутов у каждого класса не ограничивается. При наличии большого числа атрибутов, принадлежащих какому-либо из классов, для удобства работы они могут быть структурированы по функциональным группам, при этом один и тот же атрибут может входить в различные функциональные группы. Использование принципов наследования и инкапсуляции при построении классификаторов обеспечивает следующие правила переноса атрибутов между классами иерархии:[0057] The number of attributes for each class is not limited. If there is a large number of attributes belonging to any of the classes, for convenience, they can be structured by functional groups, while the same attribute can be included in different functional groups. Using the principles of inheritance and encapsulation when building classifiers provides the following rules for transferring attributes between classes in the hierarchy:

• Атрибуты более высокого класса иерархии наследуются во всех подчиненных ему классах иерархии.• Attributes of a higher hierarchy class are inherited in all subordinate classes of the hierarchy.

• Атрибуты более низких классов иерархии не видны в лежащих выше классах.• Attributes of lower classes of a hierarchy are not visible in higher classes.

[0058] Для описания одного и того же актива, представленного в разных ракурсах, могут использоваться атрибуты с одинаковым именем. Однако значения этих атрибутов могут не совпадать.[0058] Attributes with the same name may be used to describe the same asset from different angles. However, the values of these attributes may not be the same.

[0059] В определениях атрибутов, имеющих численные значения, и их агрегатов (множество, массив) используется дополнительная ссылка на единицу измерения из классификатора единиц измерения. Для функций, таблиц, зависимостей, графиков может использоваться две и более таких ссылки. В определениях атрибутов, значениями которых являются график, схема, чертеж, изображение или документ, используется дополнительная ссылка на тип файла из классификатора типов файлов.[0059] In the definitions of attributes having numerical values, and their aggregates (set, array), an additional reference to the unit of measure from the classifier of units of measure is used. For functions, tables, dependencies, graphs, two or more such links can be used. Attribute definitions whose values are a graph, diagram, drawing, image, or document use an additional reference to the file type from the file type classifier.

[0060] У каждого класса имеется три обязательных атрибута:[0060] Each class has three required attributes:

• Имя класса• Class name

• Код класса (внутреннее имя класса);• Class code (internal class name);

• Множество кодов классов других ракурсов, которые представляют этот же актив, и с которыми актив данного класса обязательно должен быть связан межракурсными связями.• A set of codes of classes of other views, which represent the same asset, and with which the asset of this class must be linked by inter-view links.

[0061] При функционировании комплексных систем управления пользователям очень часто необходимо видеть смежные представления одного и того же актива. Например, из технологического представления, необходимо видеть объекты технического обслуживания и ремонта. Из объектов технического обслуживания и ремонта необходимо видеть основные средства, на которые будут списываться затраты. Из основных средств необходимо видеть соответствующие объекты имущества и т.д. Поэтому в модели мастер-данных об активах у каждого актива любого из ракурсов существует набор связей с объектами других ракурсов для перехода между разными представлениями одних и тех же активов.[0061] When operating complex management systems, users very often need to see adjacent views of the same asset. For example, from the technological view, it is necessary to see the objects of maintenance and repair. From the objects of maintenance and repair, it is necessary to see the fixed assets to which the costs will be written off. From fixed assets it is necessary to see the corresponding objects of property, etc. Therefore, in the asset master data model, each asset from any of the views has a set of links with objects from other views to navigate between different representations of the same assets.

[0062] Отсутствие взаимно однозначного соответствия между объектами нижнего уровня различных приложений приводит к появлению связей «один ко многим», «многие к одному» и «многие ко многим» между объектами разных представлений, описывающими один и тот же актив. Например, одному основному средству может соответствовать множество объектов технического учета. Но также справедливо и обратное: одному объекту технического учета, в частности, асфальтированной дороге, может соответствовать множество основных средств, если ее отдельные участки, не являющиеся единицами технического учета, строились (выкупались) по разным ценам или в разное время. Пример совокупности связей, объединяющих представление одного и того же объекта в разных ракурсах приведен на Фиг. 4. В этом примере все межракурсные связи - взаимно однозначные и двунаправленные. Далее для такой совокупности межракурсных связей будем использовать термин решетка.[0062] The lack of one-to-one correspondence between low-level objects of different applications results in one-to-many, many-to-one, and many-to-many relationships between objects of different representations describing the same asset. For example, a plurality of technical accounting objects can correspond to one fixed asset. But the opposite is also true: one object of technical accounting, in particular, an asphalt road, can correspond to many fixed assets if its separate sections, which are not units of technical accounting, were built (bought) at different prices or at different times. An example of a set of links uniting the presentation of the same object from different angles is shown in FIG. 4. In this example, all inter-view links are one-to-one and bidirectional. In what follows, we will use the term lattice for such a set of inter-view connections.

[0063] Решетки не обязательно являются полными (т.е. не обязательно в них присутствуют все связи каждого объекта с каждым). Наличие связей между разными объектами зависит от семантики - нужно устанавливать соотношения между объектами этих ракурсов на данном уровне или нет.[0063] The lattices are not necessarily complete (ie, they do not necessarily have all the relationships of each object to each). The presence of links between different objects depends on the semantics - it is necessary to establish relationships between the objects of these angles at a given level or not.

[0064] На одном уровне иерархии любого из ракурсов располагается много объектов, каждый из которых связан со своей решеткой смежных объектов. Решетки одного уровня могут частично совмещаться друг с другом. Это возникает из-за того, что в отдельных ракурсах один объект может соответствовать нескольким объектам другого ракурса, расположенным на одном уровне иерархии (например, одно основное средство может объединять несколько единиц оборудования), и, тогда, решетки смежных объектов одного уровня могут частично соединяться в отдельных ракурсах.[0064] At one level of the hierarchy of any of the views, there are many objects, each of which is associated with its own lattice of adjacent objects. Grilles of the same level can partially overlap with each other. This occurs due to the fact that in separate views, one object can correspond to several objects of another view, located at the same level of the hierarchy (for example, one fixed asset can combine several pieces of equipment), and, then, the lattices of adjacent objects of the same level can be partially connected in separate angles.

[0065] Если рассматривать 3D-модель графа мастер-данных, то решетки на разных уровнях не обязательно будут абсолютно параллельными. В отдельных ракурсах один объект может соответствовать нескольким объектам другого ракурса, расположенным на разных уровнях иерархии, и, тогда, решетки смежных уровней могут соединяться в отдельных ракурсах.[0065] If we consider the 3D model of the master data graph, then the lattices at different levels will not necessarily be absolutely parallel. In separate views, one object can correspond to several objects of another view, located at different levels of the hierarchy, and, then, the lattices of adjacent levels can be connected in separate views.

[0066] В каждом ракурсе модель мастер-данных об активах может содержать набор неиерархических (сетевых) связей между активами, принадлежащими к этому ракурсу. Эти связи отображают специфические для ракурса отношения между активами, например, участие в производственных цепочках или транспортные взаимосвязи. Пример неиерархических связей между активами, принадлежащими одному ракурсу, показан на Фиг. 5. Такие связи, например, могут отражать:[0066] In each view, the master asset data model may contain a set of non-hierarchical (network) relationships between assets belonging to that view. These relationships represent view-specific relationships between assets, such as participation in production chains or transport relationships. An example of non-hierarchical relationships between assets belonging to the same view is shown in FIG. 5. Such relationships, for example, may reflect:

• наличие транспортных маршрутов между производственно-технологическими комплексами, осуществляющими добычу сырья, его переработку и дистрибуцию готовой продукции;• availability of transport routes between production and technological complexes that extract raw materials, process them and distribute finished products;

• наличие пересечений между транспортными магистралями (автодорогами, линиями метро и пр.);• the presence of intersections between transport arteries (motorways, metro lines, etc.);

• увязку производственного оборудования в технологические линии в рамках одного цеха;• linking of production equipment to technological lines within one workshop;

и т.д.etc.

[0067] Набор неиерархических связей между активами, принадлежащими к одному ракурсу, характеризуется тем, что для таких связей может существовать относящийся к этому ракурсу классификатор, представляющий собой иерархическую систему классов, построенную на принципах полиморфизма и инкапсуляции. Также, как и в классификаторах активов, классы в классификаторе связей обладают атрибутами, которые имеют имена и значения. Значения атрибутов могут иметь широкий спектр типов: целое число, вещественное число, логический признак, текст, значение справочника, массив, множество, зависимость, график, таблица, схема, чертеж, изображение, документ, и др. Примерами атрибутов для класса связей «транспортный маршрут» будут: максимальный объем груза, транспортируемого одним транспортным средством, пропускная способность транспортного маршрута, стоимость транспортировки партии груза одним транспортным средством, время транспортировки одной партии груза и т.д. Число атрибутов у каждого класса связей не ограничивается.[0067] A set of non-hierarchical relationships between assets belonging to the same view is characterized by the fact that for such relationships there may be a classifier related to this view, which is a hierarchical class system based on the principles of polymorphism and encapsulation. Just like in asset classifiers, classes in a relationship classifier have attributes that have names and values. Attribute values can have a wide range of types: integer, real number, logical sign, text, reference value, array, set, dependency, graph, table, diagram, drawing, image, document, etc. Examples of attributes for the class of links "transport route "will be: the maximum volume of cargo transported by one vehicle, the throughput of the transport route, the cost of transporting a consignment of goods by one vehicle, the time of transportation of one consignment, etc. The number of attributes for each class of links is not limited.

[0068] Использование принципов наследования и инкапсуляции при построении классификаторов связей обеспечивает следующие правила переноса атрибутов между классами иерархии:[0068] Using the principles of inheritance and encapsulation in building link classifiers provides the following rules for transferring attributes between hierarchy classes:

• Атрибуты более высокого класса иерархии наследуются во всех подчиненных ему классах иерархии.• Attributes of a higher hierarchy class are inherited in all subordinate classes of the hierarchy.

• Атрибуты более низких классов иерархии не видны в лежащих выше классах.• Attributes of lower classes of a hierarchy are not visible in higher classes.

[0069] В определениях атрибутов неиерархических связей, имеющих численные значения, и их агрегатов (множество, массив) используется дополнительная ссылка на единицу измерения из классификатора единиц измерения. Для функций, таблиц, зависимостей, графиков может использоваться две и более таких ссылки. В определениях атрибутов, значениями которых являются график, схема, чертеж, изображение или документ, используется дополнительная ссылка на тип файла из классификатора типов файлов. У каждого класса связей имеется два обязательных атрибута:[0069] In the definitions of the attributes of non-hierarchical links having numerical values, and their aggregates (set, array), an additional reference to the unit of measure from the classifier of units of measure is used. For functions, tables, dependencies, graphs, two or more such links can be used. Attribute definitions whose values are a graph, diagram, drawing, image, or document use an additional reference to the file type from the file type classifier. Each relationship class has two required attributes:

• Имя класса• Class name

• Код класса (внутреннее имя класса);• Class code (internal class name);

[0070] Помимо наличия классификатора и атрибутов у неиерархических связей имеется еще одно важное свойство: они могут быть параметрическими, т.е. они могут существовать между объектами в затененном состоянии и проявляться только тогда, когда значения одного или нескольких атрибутов объекта соответствуют определенным условиям.[0070] In addition to having a classifier and attributes, non-hierarchical links have another important property: they can be parametric, i.e. they can exist between objects in a shaded state and only appear when the values of one or more of the object's attributes meet certain conditions.

[0071] В каждом ракурсе модель мастер-данных может содержать специфический для этого ракурса набор структурных моделей активов. Каждая структурная модель активов описывает внутренние взаимосвязи и компонентный состав конкретного класса активов. Например, структурная модель актива, который относится к классу «Котельная», включает обязательные компоненты: здание, установленный в нем котел и дымовую трубу. Структурные модели позволяют проверить полноту ввода данных об активе или идентифицировать тип актива в зависимости от его структуры. Возвращаясь к уже рассматривавшемуся примеру, если вновь введенный пользователем объект имеет класс «Котельная», но не содержит всех трех обязательных компонентов, пользователю выводится сообщение об ошибке. Проверяться может не только компонентный состав, но и наличие связей определенных типов между компонентами, а также их топология, если связи определены в структурной модели. Например, при проверке актива класса «Кольцевая автомобильная дорога» отдельные участки этой дороги должны быть так связаны связями друг с другом, чтобы образовывалось замкнутое кольцо. Если участки где-то разомкнуты, то актив не соответствует классу «Кольцевая автомобильная дорога».[0071] In each view, the master data model may contain a set of structural asset models specific to that view. Each structural asset model describes the internal relationships and component composition of a particular asset class. For example, the structural model of an asset that belongs to the class "Boiler room" includes the required components: a building, a boiler installed in it, and a chimney. Structural models allow you to check the completeness of the asset data entry or identify the type of asset depending on its structure. Returning to the already considered example, if the newly entered by the user object has the class "Boiler room", but does not contain all three required components, the user is shown an error message. Not only the component composition can be checked, but also the presence of certain types of links between the components, as well as their topology, if the links are defined in the structural model. For example, when checking an asset of the class "Ring Road", the individual sections of this road must be so connected by ties to each other that a closed ring is formed. If the sections are open somewhere, then the asset does not correspond to the class "Ring road".

[0072] В каждом ракурсе модель мастер-данных может содержать специфический для этого ракурса набор функциональных моделей мастер-данных об активах, использующих в процессе своего выполнения значения атрибутов отдельных активов и/или атрибутов связей этого актива и атрибутов активов, взаимосвязанных с данным. Функциональные модели позволяют проверить полноту ввода данных об активе или идентифицировать тип актива в зависимости от значений атрибутов. Функциональные модели могут быть построены как на основе относительно простых алгоритмов, так и на основе сложных математических моделей. В качестве примера простого алгоритма приведем пример функциональной модели, проверяющей правильность ввода актива класса «Здание детского сада». Если у такого здания атрибут этажности имеет значение больше двух, то либо неправильно введены данные об активе, либо актив неправильно классифицирован. В качестве примера сложной функциональной модели актива приведем модель, которая рассчитывает популяцию животных в будущем по годам на некоторой природной территории в зависимости от числа животных обитающих на этой территории в текущий момент. Если моделирование покажет, что после отстрела некоторого минимального числа особей популяция животных с высокой вероятностью начнет сокращаться, то этой территории не может быть присвоен класс активов «Охотничьи угодья».[0072] In each view, the master data model can contain a specific for this view a set of functional models of the master data about assets, using in the course of their execution the values of the attributes of individual assets and / or attributes of the links of this asset and the attributes of assets associated with the data. Functional models allow you to check the completeness of the asset data entry or identify the asset type depending on the attribute values. Functional models can be built both on the basis of relatively simple algorithms and on the basis of complex mathematical models. As an example of a simple algorithm, we will give an example of a functional model that checks the correctness of the input of an asset of the class "Kindergarten Building". If for such a building the number of storeys has a value of more than two, then either the data on the asset was entered incorrectly, or the asset is incorrectly classified. As an example of a complex functional model of an asset, we present a model that calculates the population of animals in the future by years in a certain natural area, depending on the number of animals living in this area at the moment. If simulations show that after a certain minimum number of individuals are shot, the animal population is likely to begin to decline, then this area cannot be assigned the asset class “Hunting Grounds”.

[0073] Каждый, входящий в состав системы, интерфейсный модуль осуществляет выгрузку по запросам, поступающим от внешнего приложения или модуля ERP, запрошенного фрагмента мастер-данных об активах, относящихся к конкретному ракурсу мастер-данных, с которым работает запрашивающее внешнее приложение. Форматы выгружаемых данных должны полностью соответствовать форматам данных, которые могут быть загружены конкретным модулем ERP или приложением. В качестве примеров модулей и приложений, с которыми должна быть обеспечена интеграция отдельными интерфейсными модулями, можно привести:[0073] Each interface module within the system unloads, upon requests from an external application or ERP module, the requested piece of master asset data related to a particular view of the master data that the requesting external application is working with. The uploaded data formats must fully correspond to the data formats that can be uploaded by a specific ERP module or application. Examples of modules and applications with which integration should be provided by individual interface modules are:

• РМ - модуль управления техническим ремонтом и обслуживанием оборудования в составе SAP ERP;• RM - a module for managing technical repair and maintenance of equipment as part of SAP ERP;

• FI-AA - модуль учета основных средств в составе SAP ERP;• FI-AA - fixed assets accounting module as part of SAP ERP;

• RE-FX - модуль гибкого управления недвижимостью в составе SAP ERP;• RE-FX - a flexible property management module as part of SAP ERP;

• SAP АРО - система оптимизации цепочек поставок;• SAP ARO - supply chain optimization system;

• SAP ME - система управления производством на уровне цеха.• SAP ME is a production management system at the workshop level.

[0074] Для модулей другой ERP-системы или других приложений, выполняющих аналогичные функции, потребуются отдельные интерфейсные модули, поскольку форматы и структуры данных будут отличаться.[0074] For modules from another ERP system or other applications that perform similar functions, separate interface modules will be required because the formats and data structures will be different.

[0075] Каждый, входящий в состав системы, интерфейсный модуль может выгружать во внешнее приложение (модуль ERP-системы) не только мастер-данные о конкретных активах, но также иерархии, классификаторы, неиерархические связи, структурные и функциональные модели, относящиеся к объектам этого ракурса, а также имеющиеся связями с объектами других ракурсов при возможности использования этих данных внешними приложениями (модулями ERP-системы) и поступлении от них соответствующих запросов.[0075] Each of the system interface modules can upload to an external application (ERP system module) not only master data about specific assets, but also hierarchies, classifiers, non-hierarchical relationships, structural and functional models related to the objects of this angles, as well as existing connections with objects of other angles when it is possible to use this data by external applications (modules of the ERP system) and the receipt of appropriate requests from them.

[0076] Каждый, входящий в состав системы, интерфейсный модуль может не только выгружать мастер-данные об активах (данные о конкретных активах, иерархии, классификаторы, неиерархические связи, структурные и функциональные модели, относящиеся к объектам этого ракурса, а также имеющиеся связями с объектами других ракурсов) во внешнее приложение (модуль ERP-системы), но и по команде администратора, поступившей через модуль диалогового интерфейса, загружать в специально предназначенную область памяти эти объекты из внешнего приложения (модуля ERP-системы), с которым данный модуль обеспечивает интерфейс.[0076] Each interface module included in the system can not only upload master data about assets (data about specific assets, hierarchies, classifiers, non-hierarchical links, structural and functional models related to objects of this view, as well as existing links with objects of other angles) into an external application (ERP system module), but also at the command of the administrator received through the dialog interface module, load these objects into a specially designated memory area from an external application (ERP system module) with which this module provides an interface ...

[0077] Модуль диалогового интерфейса обеспечивает создание и корректировку администратором мастер-данных об активах в режиме диалога, предоставляя возможность создавать, изменять и удалять в системе иерархии, классификаторы, межракурсные связи, неиерархические связи, классификаторы неиерархических связей, структурные и функциональные модели, создавать, изменять и удалять атрибуты, присваивать и изменять их значения, модифицировать классификатор единиц измерения и классификатор типов файлов.[0077] The dialog interface module enables the administrator to create and update master data about assets in a dialog mode, providing the ability to create, modify and delete hierarchies, classifiers, inter-view links, non-hierarchical links, classifiers of non-hierarchical links, structural and functional models in the system, create, change and delete attributes, assign and change their values, modify the classifier of units of measurement and classifier of file types.

[0078] Модуль диалогового интерфейса помимо создания, корректировки и удаления мастер-данных в режиме диалога, он может работать с мастер-данными, загруженными интерфейсными модулями извне, осуществлять корректировки этих данных, вносить дополнительные связи. После просмотра этих данных и внесения необходимых корректировок с помощью модуля диалогового интерфейса администратор мастер-данных может дать команду на перенос этих данных в основную модель данных об активах с заменой имевшихся ранее в модели данных.[0078] The dialog interface module, in addition to creating, correcting and deleting master data in the dialog mode, can work with the master data loaded by the interface modules from the outside, correct this data, and make additional connections. After reviewing this data and making the necessary adjustments using the dialog interface module, the master data administrator can issue a command to transfer this data to the main asset data model, replacing the data that was previously in the data model.

[0079] Входящие в состав системы алгоритмические модули обеспечивают проверку корректности и полноты системы связей между объектами в модели, проверку корректности классификаторов, поиск объектов по классификаторам, формирование новых ракурсов мастер-данных на основе имеющихся в системе данных других ракурсов или на основе внешних данных, формирование отчетности по модели данных и по сделанным в ней корректировкам, а также другие подобные операции. Для выполнения этих функций алгоритмические модули имеют доступ к необходимым для их выполнения элементам отдельных ракурсов модели или мастер-данных об активах в целом. Инициирование работы алгоритмических модулей осуществляет администратор мастер-данных через модуль диалогового интерфейса. Примеры более детально описанных функций, выполняемых алгоритмическими модулями:[0079] Algorithmic modules included in the system provide checking the correctness and completeness of the system of connections between objects in the model, checking the correctness of classifiers, searching for objects by classifiers, generating new views of master data based on data from other views available in the system or based on external data, reporting on the data model and adjustments made in it, as well as other similar operations. To perform these functions, algorithmic modules have access to the elements of individual views of the model or master data about assets as a whole, necessary for their implementation. The initiation of the work of algorithmic modules is carried out by the administrator of the master data through the module of the dialog interface. Examples of more detailed functions performed by algorithmic modules:

• Поиск типа оборудования, который можно использовать для замены другого известного типа оборудования, снятого с производства или недоступного для приобретения. Поиск осуществляется по классификатору оборудования, относящемуся к ракурсу технического обслуживания и ремонта, на основании иерархии и атрибутов классов оборудования.• Search for a type of equipment that can be used to replace another known type of equipment that is discontinued or not available for purchase. The search is carried out by the equipment classifier related to the maintenance and repair view based on the hierarchy and attributes of the equipment classes.

• Формирование предварительной версии ракурса мастер-данных об имуществе на основании ракурса мастер-данных об основных средствах и ракурса мастер-данных об объектах технического обслуживания и ремонта.• Generation of a preliminary version of the asset master data view based on the asset master data view and the maintenance and repair master data view.

[0080] В составе набора алгоритмических модулей обязательно присутствует алгоритмический модуль, который осуществляет проверку корректности и полноты всей совокупности имеющихся в модели данных межракурсных связей между активами. Алгоритм работы этого модуля, представленный на Фиг. 6-6.2 представляет собой один из заявляемых способов (100).[0080] As part of a set of algorithmic modules, an algorithmic module must be present that checks the correctness and completeness of the entire set of inter-view links between assets available in the data model. The operation algorithm of this module, shown in Fig. 6-6.2 is one of the claimed methods (100).

[0081] Алгоритмический модуль на первом шаге своего выполнения (101) осуществляет уничтожение (очистку) всех данных о разметке связей, сформированных во внешней памяти в ходе предыдущего исполнения алгоритма.[0081] The algorithm module, at the first step of its execution (101), deletes (clears) all data about the markup of links formed in the external memory during the previous execution of the algorithm.

[0082] После этого алгоритмический модуль в процессе работы осуществляет обход (102), (136) всех иерархических ракурсов, представленных в структуре активов. В процессе обхода используются располагающиеся в оперативной памяти:[0082] After that, the algorithmic module in the process of work traverses (102), (136) all hierarchical views presented in the asset structure. The crawl process uses the following in RAM:

• стеки Стек1 и Стек2;• stacks Stack1 and Stack2;

• указатели на объекты Указатель1 и Указатель2;• pointers to objects Pointer1 and Pointer2;

• набор межракурсных связей, каждая из которых имеет признак, куда можно ставить отметку о ее прохождении.• a set of inter-view links, each of which has a sign, where you can put a mark about its passage.

[0083] При анализе очередного ракурса по организуется обход всех содержащихся в нем активов с помощью располагающегося в оперативной памяти стека Стек1 и указателя Указатель1, как это представлено на Фиг. 7. Для этого при попадании в очередной ракурс выполняется очистка стека Стек1 и установка значения Указатель1 на верхний узел анализируемой иерархии (103). Затем с помощью цикла (105), (134) и операций (106), (135) производится обход всех узлов иерархии сверху вниз и последовательно по ветвям каждого поддерева. В процессе этого увеличивается и сокращается Стек1, поскольку вся цепочка узлов дерева, через которую стал доступным очередной узел, сохраняется в Стек1.[0083] When analyzing the next view, a traversal of all the assets contained in it is organized using the Stack1 stack and the Pointer1 pointer located in RAM, as shown in FIG. 7. To do this, when hitting the next view, the stack is cleared Stack1 and the Pointer1 value is set to the top node of the analyzed hierarchy (103). Then, using the cycle (105), (134) and operations (106), (135), all nodes of the hierarchy are traversed from top to bottom and sequentially along the branches of each subtree. In the process, Stack1 increases and shrinks, since the entire chain of tree nodes through which the next node became available is stored in Stack1.

[0084] При попадании в очередной узел дерева при обходе дерева выполняются следующие операции:[0084] When hitting the next node of the tree when traversing the tree, the following operations are performed:

• Очистка располагающегося в оперативной памяти стека Стек2 и загрузка в качестве первого элемента Стек2 узла по Указатель1 (107).• Clearing the in-memory stack Stack2 and loading the node at Pointer1 as the first element of Stack2 (107).

• Очистка формируемого в оперативной памяти набора межракурсных связей (108).• Clearing the set of inter-view links formed in the RAM (108).

• Добавление в располагающийся в оперативной памяти набор межракурсных связей всех обязательных связей узла класса первого элемента из Стек2 из атрибутов, содержащихся в классификаторе по п.4 (109).• Adding to the set of inter-view links located in the main memory of all the obligatory links of the class node of the first element from Stack2 from the attributes contained in the classifier according to clause 4 (109).

• Проверка полноты и корректности межракурсных связей этого узла.• Checking the completeness and correctness of the inter-view links of this node.

[0085] Для проверки полноты и корректности межракурсных связей каждого узла осуществляется обход всех колец одной решетки межракурсных связей, существующей во внешней памяти, начинающихся с данного узла. Для этого используется Стек2, представленный на Фиг. 8. Обходя с помощью стека каждое из колец, мы должны вернуться к первоначальному объекту. В этом случае цепочка участвующих в кольце связей будет корректной. Поскольку выполняется перебор всех связей каждого объекта, то автоматически будет реализована проверка корректности как однонаправленных, так и двунаправленых связей.[0085] To check the completeness and correctness of inter-view links of each node, all rings of one lattice of inter-view links existing in external memory are traversed, starting from this node. For this, Stack2 is used, shown in FIG. 8. Traversing each of the rings with the help of the stack, we must return to the original object. In this case, the chain of links participating in the ring will be correct. Since the enumeration of all links of each object is performed, the correctness check of both unidirectional and bidirectional links will be automatically implemented.

[0086] Процесс обхода всех колец одной решетки, реализован таким образом, что используются внутренние номера ракурсов (иерархий) модели данных. Пример решетки, ранее представленной на Фиг. 3, в которой вместо смысловых названий иерархий использованы их внутренние номера, присвоенные им в момент их появления в модели данных, показан на Фиг. 9. При проверке связей в конкретной решетке производится подмена внутренних номеров иерархий таким образом, чтобы узел на вершине Стеке и его иерархия получили номер 1, а номера всех остальных иерархий смещаются в любую сторону по кольцу, сохраняя порядок. На Фиг. 10 показан пример, когда объект, имевший в решетке на Фиг. 9 внутренний номер иерархии 15, получил номер 1, а номера всех остальных иерархий сдвинулись. Для изменения номеров также могут использоваться формулы:[0086] The process of traversing all the rings of one lattice is implemented in such a way that internal view numbers (hierarchies) of the data model are used. An example of the lattice previously shown in FIG. 3, in which instead of the semantic names of the hierarchies, their internal numbers are used, assigned to them at the time of their appearance in the data model, is shown in FIG. 9. When checking the links in a particular lattice, the internal numbers of the hierarchies are substituted so that the node at the top of the Stack and its hierarchy get number 1, and the numbers of all other hierarchies are shifted in any direction along the ring, preserving the order. FIG. 10 shows an example when the object having in the lattice in FIG. 9, the internal hierarchy number 15, received the number 1, and the numbers of all other hierarchies were shifted. Formulas can also be used to change numbers:

Figure 00000001
Figure 00000001

Figure 00000002
Figure 00000002

где:Where:

Nnew - новый номер иерархии,Nnew - new hierarchy number,

Nold - стандартный внутренний номер иерархии,Nold is the standard internal number of the hierarchy,

Nold1 - стандартный внутренний номер иерархии, которая должна получить новый номер, равный 1,Nold1 is the standard internal number of the hierarchy, which should receive a new number equal to 1,

М - число иерархий в модели.M is the number of hierarchies in the model.

[0087] Процесс обхода всех колец одной решетки реализован таким образом, что кольца из узла с номером 1, должны строиться таким образом, чтобы каждый следующий узел в кольце имел номер больше предыдущего или номер 1. Примеры двух правильно построенных колец показаны на Фиг. 11:[0087] The process of traversing all the rings of one lattice is implemented in such a way that the rings from the node with the number 1 must be built in such a way that each next node in the ring has a number greater than the previous one or number 1. Examples of two well-formed rings are shown in Fig. eleven:

1 - 2 - 3 - 4 - 9 - 10 - 11 - 2 - 3 - 4 - 9 - 10 - 1

1 -13 - 15 - 11 -13 - 15 - 1

Примеры недопустимых колец показаны на Фиг. 12.Examples of invalid rings are shown in FIG. 12.

Использование описанного принципа позволяет исключить создание колец произвольной длины. Максимальная длина кольца будет равна М. Межракурсные связи в решетке, которые не будут проверяться при предложенном методе построения колец, будут проверены при обходе колец из объектов других ракурсов, когда другие элементы этой же решетки получат номер 1.Using the described principle makes it possible to exclude the creation of rings of arbitrary length. The maximum ring length will be M. Interview connections in the lattice, which will not be checked with the proposed method for constructing rings, will be checked when traversing rings from objects of other angles, when other elements of the same lattice are numbered 1.

[0088] Непосредственно процесс обхода всех колец одной решетки с помощью стека Стек2 выполняется с помощью цикла (110), (131) и операций (113), (114), (127), (128). Все кольца обходятся последовательно по межракурсным связям каждого объекта. В процессе этого увеличивается и сокращается Стек2, поскольку вся цепочка узлов кольца, через которую стал доступным очередной узел, сохраняется в Стек2.[0088] Directly, the process of traversing all the rings of one lattice using the stack Stack2 is performed using the loop (110), (131) and operations (113), (114), (127), (128). All rings are traversed sequentially along the inter-view links of each object. In the process of this, Stack2 increases and contracts, since the entire chain of nodes of the ring, through which the next node became available, is stored in Stack2.

[0089] Процесс обхода всех колец одной решетки реализован таким образом, чтобы исключить многократный обход одних и тех же колец связей, начиная с разных объектов. Для этого во время выполнения алгоритма (100) используется разметка связей, фиксируемая во внешней памяти (которая ранее очищалась на шаге (101)). Если при обходе колец, мы проходим по какой-то связи, и для следующего перехода нет неотмеченных связей или мы попадаем в начало кольца, то ставим на пройденной связи отметку. При дальнейшей проверке, больше проходить по этой связи будет не нужно. В результате после обхода всех колец, начиная с объекта одного ракурса, для объектов других ракурсов будут проверяться только те связи, которые, которые еще не проверялись. Проверка связей этих объектов не потребует какого-либо повторного обхода колец, которые уже ранее проверялись. Для простановки разметки используются проверки (111) и (126), операции (112), (121), (125), (130).[0089] The process of traversing all rings of one lattice is implemented in such a way as to exclude multiple traversing of the same bond rings, starting from different objects. For this, during the execution of the algorithm (100), the markup of links is used, which is fixed in the external memory (which was previously cleared at step (101)). If, when traversing the rings, we pass along some connection, and for the next transition there are no unmarked connections or we get to the beginning of the ring, then we put a mark on the passed connection. With further verification, you will no longer need to go through this connection. As a result, after traversing all rings, starting with an object of one view, for objects of other views, only those links that have not yet been checked will be checked. Checking the relationships of these objects will not require any repeated traversal of the rings, which were already checked earlier. To establish the markup, checks (111) and (126), operations (112), (121), (125), (130) are used.

[0090] Для первого элемента, внесенного в Стек2 при обходе всех колец одной решетки, выполняются следующие действия:[0090] For the first element added to Stack2 when traversing all the rings of one lattice, the following actions are performed:

• Делается проверка, присутствует ли связь между классом узла по Указатель2 и классом узла в вершине Стек2 в наборе межракурсных связей (116). Если нет, то формируется сообщение о непредполагавшейся связи между узлом по Указатель2 и узлом в Стек2 (117).• A check is made whether there is a link between the class of the node by Pointer2 and the class of the node at the top of Stack2 in the set of inter-view links (116). If not, then a message is generated about an unexpected connection between the node at Pointer2 and the node in Stack2 (117).

• Делается проверка, отмечена ли связь между классом узла по Указатель2 и классом узла в вершине Стек2 в наборе межракурсных связей (118). Если нет, то ставится отметка на связи между классом узла по Указатель2 и классом узла в Стек2 в наборе межракурсных связей (119).• A check is made whether the link between the class of the node by Pointer2 and the class of the node at the top of Stack2 in the set of inter-view links (118) is marked. If not, then a mark is put on the link between the class of the node by Pointer2 and the class of the node in Stack2 in the set of inter-view links (119).

[0091] Затем для очередного элемента кольца при обходе всех колец одной решетки выполняются следующие действия, связанные с проверкой корректности межракурсных связей:[0091] Then, for the next element of the ring, when traversing all the rings of one lattice, the following actions are performed related to checking the correctness of inter-view connections:

• Делается проверка, совпадает ли узел по Указатель2 с узлом по Указатель1 (120), что означает, что кольцо вернулось к исходному узлу. Если да, то ставится отметка на текущую связь в разметке во внешней памяти, чтобы больше по ней не проходить (121).• A check is made to see if the node at Pointer2 matches the node at Pointer1 (120), which means that the ring has returned to the original node. If yes, then a mark is put on the current link in the markup in external memory so that no more traversal through it is made (121).

• Делается проверка, равно ли общее число элементов Стек2 числу иерархий (ракурсов) в модели мастер-данных (122). Если да, то формируется сообщение о сбое связей с указанием всех элементов стека Стек2 (122), ставится отметка на текущую связь в разметке во внешней памяти, чтобы больше по ней не проходить (125), верхний элемент исключается из Стека (128).• A check is made whether the total number of members in Stack2 is equal to the number of hierarchies (views) in the master data model (122). If yes, then a message about a link failure is generated with an indication of all elements of the stack Stack2 (122), a mark is placed on the current link in the markup in external memory so as not to go through it anymore (125), the top element is excluded from the Stack (128).

• Делается проверка, имеются ли межракурсные связи, исходящие из этого узла (т.е. имеется ли в принципе возможность для перехода из узла) (124). Если нет, то формируется сообщение о сбое связей с указанием всех элементов стека Стек2 (129). А если да, то делается проверка, есть ли на следующем переходе связи без разметки во внешней памяти (126). При их наличии узел по Указатель2 добавляется в Стек2, а при отсутствии - ставится отметка на текущую связь в разметке во внешней памяти, чтобы больше по ней не проходить (130).• A check is made whether there are inter-view links originating from this node (ie, is there, in principle, the possibility to move from the node) (124). If not, then a communication failure message is generated indicating all elements of the stack Stack2 (129). And if so, then a check is made whether at the next hop there are connections without markup in external memory (126). If they are present, the node by Pointer2 is added to Stack2, and if they are absent, a mark is put on the current link in the markup in external memory, so that it does not go through it anymore (130).

[0092] После прохождения всех колец одной решетки делается проверка, остались ли не отмеченные связи в наборе межракурсных связей, располагающемся в оперативной памяти (132). Если да, то формируется сообщение о неполноте связей с указанием всех объектов, соответствующих классам узлов решетки и неотмеченных связей решетки (133).[0092] After passing through all the rings of one lattice, a check is made whether unmarked links remain in the set of inter-view links located in the main memory (132). If yes, then a message is generated about the incompleteness of links with an indication of all objects corresponding to the classes of lattice nodes and unmarked lattice links (133).

[0093] После окончания обхода всех иерархий на последнем шаге (137) в составе способа (100) на основании всех сформированных сообщений формируется отчет о нарушенных, отсутствующих и непредполагавшихся связях или о том, что нарушений межракурсных связей нет.[0093] After the end of traversing all hierarchies at the last step (137) as part of method (100), on the basis of all generated messages, a report is generated about broken, missing and unpredicted links or that there are no violations of inter-view links.

[0094] На основе алгоритмического модуля (100) реализованы два алгоритмических модуля, выполняющие более частные операции:[0094] Based on the algorithmic module (100), two algorithmic modules are implemented that perform more specific operations:

• алгоритмический модуль проверки корректности межракурсных связей, алгоритм работы которого представлен на Фиг. 13;• an algorithmic module for checking the correctness of inter-view links, the algorithm of which is shown in Fig. 13;

• алгоритмический модуль проверки полноты межракурсных связей, алгоритм работы которого представлен на Фиг. 14.• an algorithmic module for checking the completeness of inter-view links, the algorithm of which is shown in Fig. fourteen.

[0095] Оба модуля содержат каждый свою специфическую часть операций алгоритма (100). В них нет никаких операций, не представленных в алгоритме (100). Алгоритмический модуль проверки полноты межракурсных связей может выявить все отсутствующие связи в полном объеме только в тех случаях, когда все связи в модели данных корректны. Это достигается выполнением алгоритмического модуля проверки корректности межракурсных связей и последующим исправлением выявленных ошибок в связях.[0095] Both modules each contain its own specific part of the operations of the algorithm (100). There are no operations in them that are not represented in algorithm (100). The algorithmic module for checking the completeness of inter-view links can reveal all missing links in full only in cases where all links in the data model are correct. This is achieved by executing the algorithmic module for checking the correctness of inter-view links and then correcting the identified errors in the links.

[0096] Алгоритмические модули, проверки корректности межракурсных связей и проверки полноты межракурсных связей, представленные на Фиг. 13-13.1 и Фиг. 14-14.2 позволяют организовать диалоговый процесс:[0096] Algorithmic modules, inter-view link validation and inter-view link completeness checks shown in FIG. 13-13.1 and Fig. 14-14.2 allow you to organize a dialogue process:

• сначала выполнить несколько этапов проверки корректности связей с исправлением части ошибок после каждого прогона,• first, perform several stages of checking the correctness of links with correcting some of the errors after each run,

• потом выполнить проверку полноты связей, после которой будут внесены необходимые отсутствовавшие связи,• then check the completeness of the links, after which the necessary missing links will be added,

• потом опять выполнить проверку корректности связей, чтобы исправить внесенные ошибки• then again check the correctness of the links in order to correct the introduced errors

и так далее…etc…

[0097] Последовательное выполнение подряд алгоритмического модуля проверки корректности межракурсных связей и алгоритмического модуля проверки полноты межракурсных связей будет требовать почти вдвое большего времени чем выполнение одного алгоритмического модуля проверки полноты и корректности межракурсных связей, поскольку будет дважды выполняться обход всех иерархий и обход всех колец решеток межракурсных связей каждого объекта.[0097] The sequential execution of the algorithmic module for checking the correctness of inter-view links and the algorithmic module for checking the completeness of inter-view links will require almost twice as long as the execution of one algorithmic module for checking the completeness and correctness of inter-view links, since all hierarchies and all rings of inter-view lattices will be traversed twice. links of each object.

[0098] На Фиг. 15 представлен пример системы (200), которая используется для поддержки патентуемой модели мастер-данных, а также выполнения функций системы управления мастер-данными об активах, включая работу интерфейсных модулей, диалогового модуля и алгоритмических модулей системы.[0098] FIG. 15 shows an example of a system (200) that is used to support the patented master data model, as well as to perform the functions of the asset master data management system, including the operation of interface modules, a dialog module, and algorithmic modules of the system.

[0099] Система (200) включает в себя следующие компоненты:[0099] System (200) includes the following components:

• Оперативную память (ОЗУ) (202), предназначенную для оперативного хранения команд, исполняемых одним или более процессорами (201) и оперативного временного хранения рабочих данных.• Random access memory (RAM) (202), intended for operative storage of instructions executed by one or more processors (201) and operative temporary storage of working data.

• Средство хранения данных (203) во внешней памяти может представлять собой жесткий диск (HDD), твердотельный накопитель (SSD), флэш-память (NAND-flash, EEPROM, Secure Digital и т.п.), оптический диск (CD, DVD, Blue Ray), мини диск или их совокупности.• The storage medium (203) in external memory can be a hard disk drive (HDD), solid state drive (SSD), flash memory (NAND-flash, EEPROM, Secure Digital, etc.), an optical disk (CD, DVD , Blue Ray), mini disc or their combination.

• Интерфейсы ввода/вывода (В/В) (205) представляют собой стандартные порты и средства сопряжения устройств и передачи данных, выбираемые исходя из необходимой конфигурации исполнения системы (200), в частности: USB (2.0, 3.0, USB-C, micro, mini), Ethernet, PCI, AGP, COM, LPT, PS/2, SATA, FireWire, Lightning и т.п.• I / O interfaces (I / O) (205) are standard ports and means of connecting devices and data transfer, selected based on the required system execution configuration (200), in particular: USB (2.0, 3.0, USB-C, micro , mini), Ethernet, PCI, AGP, COM, LPT, PS / 2, SATA, FireWire, Lightning, etc.

• Средства В/В (206) также выбираются из известного спектра различных устройств, например, клавиатура, тачпад, сенсорный дисплей, монитор, проектор, манипулятор мышь, джойстик, трекбол, световое перо, стилус, устройства вывода звука (колонки, наушники, встроенные динамики, зуммер) и т.п.• I / O tools (206) are also selected from a known range of different devices, for example, keyboard, touchpad, touch display, monitor, projector, mouse, joystick, trackball, light pen, stylus, audio output devices (speakers, headphones, built-in speakers, buzzer), etc.

• Средства передачи данных (207) выбираются из устройств, предназначенных для реализации процесса коммуникации между различными устройствами посредством проводной и/или беспроводной связи, в частности, таким устройствами могут быть: GSM модем, Wi-Fi приемопередатчик, Bluetooth или BLE модуль, GPS модуль, Глонасс модуль, NFC, Ethernet модуль и т.п.• Data transmission means (207) are selected from devices designed to implement the process of communication between various devices via wired and / or wireless communication, in particular, such devices can be: GSM modem, Wi-Fi transceiver, Bluetooth or BLE module, GPS module , Glonass module, NFC, Ethernet module, etc.

• Компоненты системы (200) сопряжены посредством общей шины передачи данных (204).• The system components (200) are interconnected via a common data bus (204).

[0100] В совокупности система (200) представляет собой серверную платформу, обеспечивающую необходимые вычисления при реализации системы управления мастер-данными об активах. В предпочтительном варианте эта серверная платформа должна быть оснащена инструментарием, имеющим следующие возможности:[0100] Collectively, system (200) is a server platform that provides the necessary computations when implementing a master asset data management system. In the preferred embodiment, this server platform should be equipped with tools that have the following capabilities:

• Инструментарий должен обладать возможностями графовой базы данных [13]. Это обеспечит существенные преимущества при работе с графами за счет увеличения скорости разработки и сокращения объема кода при обходе цепочек связей, по сравнению с традиционным SQL, а также будет требовать меньших ресурсов для работы прототипа.• The toolkit must have the capabilities of a graph database [13]. This will provide significant advantages when working with graphs by increasing the speed of development and reducing the amount of code when traversing chains of links, compared to traditional SQL, and will also require less resources for the prototype.

• Инструментарий должен обладать возможностями графовых энджинов [14], выполняющих сложные алгоритмы над большим графом в целом, даже если его фрагменты хранятся на разных серверах, входящих в кластер серверов.• The toolkit should have the capabilities of graph engines [14], which perform complex algorithms on a large graph as a whole, even if its fragments are stored on different servers included in the server cluster.

Источники информации:Information sources:

1. Wolter R., Haselden K. The What, Why, and How of Master Data Management. Microsoft Corporation, November 2006, URL: https://msdn.microsoft.com/en-us/library/bb190163.aspx?f=255&MSPPError=-21472173961. Wolter R., Haselden K. The What, Why, and How of Master Data Management. Microsoft Corporation, November 2006, URL: https://msdn.microsoft.com/en-us/library/bb190163.aspx?f=255&MSPPError=-2147217396

2. Otto В., Schmidt A. Enterprise Master Data Architecture: Design Decisions and Options. Institute of Information Management, University of St. Gallen, 13 p. URL: http://mitiq.mit.edu/ICIQ/Documents/IQ%20Conference%202010/Papers/2B1_EnterpriseMasterDataArchitecture.pdf2. Otto B., Schmidt A. Enterprise Master Data Architecture: Design Decisions and Options. Institute of Information Management, University of St. Gallen, 13 p. URL: http://mitiq.mit.edu/ICIQ/Documents/IQ%20Conference%202010/Papers/2B1_EnterpriseMasterDataArchitecture.pdf

3. Equipment as Units of Tangible Assets. SAP Help Portal. URL: http://help.sap.com/saphelp_ppm400/helpdata/en/01/d545f84ab311d189740000e8322d00/frameset.htm3. Equipment as Units of Tangible Assets. SAP Help Portal. URL: http://help.sap.com/saphelp_ppm400/helpdata/en/01/d545f84ab311d189740000e8322d00/frameset.htm

4. Creating an Architectural Object. SAP Help Portal. URL:4. Creating an Architectural Object. SAP Help Portal. Url:

http://help.sap.com/saphelp_erp60_sp/helpdata/en/fb/5ad0531d8b4208e10000000a174cb4/frameset.htmhttp://help.sap.com/saphelp_erp60_sp/helpdata/en/fb/5ad0531d8b4208e10000000a174cb4/frameset.htm

5. Система управления мастер-данными об активах. ООО «Оптимальное Управление». URL: http://optimalmngmnt.com/page34ru.htm5. Management system for master data on assets. LLC "Optimal Management". URL: http://optimalmngmnt.com/page34ru.htm

6. РАО «ЕЭС РОССИИ». ГОДОВОЙ ОТЧЕТ ЗА 2006 ГОД. URL: http://www.fsk-ees.ru/media/File/stockholders/otchet/decisions/VOSA_otchet/RAO/03_RAO_GO_2006.pdf6. RAO "UES OF RUSSIA". ANNUAL REPORT 2006. URL: http://www.fsk-ees.ru/media/File/stockholders/otchet/decisions/VOSA_otchet/RAO/03_RAO_GO_2006.pdf

7. Master data management. Wikipedia. URL: https://en.wikipedia.org/wiki/Master_data_management7. Master data management. Wikipedia. URL: https://en.wikipedia.org/wiki/Master_data_management

8. What is Master Data. TechTarget. SearchDataManagement. URL: http://searchdatamanagement.techtarget.com/definition/master-data-management8. What is Master Data. TechTarget. SearchDataManagement. URL: http://searchdatamanagement.techtarget.com/definition/master-data-management

9. Wolter R. Master Data Management (MDM) Hub Architecture. Microsoft Corporation, April 2007, URL: https://msdn.microsoft.com/en-us/library/bb410798.aspx?f=255&MSPPError=-21472173969. Wolter R. Master Data Management (MDM) Hub Architecture. Microsoft Corporation, April 2007, URL: https://msdn.microsoft.com/en-us/library/bb410798.aspx?f=255&MSPPError=-2147217396

10. Barrenechea M.J., Jenkins T. Enterprise Information Management: The Next Generation of Enterprise Software / Open Text Corporation, Waterloo (Canada), 2013, 288 p.10. Barrenechea M.J., Jenkins T. Enterprise Information Management: The Next Generation of Enterprise Software / Open Text Corporation, Waterloo (Canada), 2013, 288 p.

11. Magic Quadrant for Master Data Management Solutions. Gartner / Analysts: O'Kane В., Palanca T., Moran M.P., 19 January 2017, ID: G00305598. URL: https://www.gartner.com/doc/reprints?id=1-3RH2O6C&ct=170120&st=sb11. Magic Quadrant for Master Data Management Solutions. Gartner / Analysts: O'Kane B., Palanca T., Moran M. P., 19 January 2017, ID: G00305598. URL: https://www.gartner.com/doc/reprints?id=1-3RH2O6C&ct=170120&st=sb

12. The Forrester Wave™: Master Data Management, Q1 2016 // Forrester / Goetz M., March 16, 2016, 17 p.12. The Forrester Wave ™: Master Data Management, Q1 2016 // Forrester / Goetz M., March 16, 2016, 17 p.

13. Robinson I., Webber J., Eifrem E. Graph Databases. O'Reilly Media, 2-nd ed., 2015, 238 p.13. Robinson I., Webber J., Eifrem E. Graph Databases. O'Reilly Media, 2nd ed., 2015, 238 p.

14. Обработка больших объемов графовых данных: путеводитель по современным технологиям. IBM / Сакр Ш., URL: http://www.ibm.com/developerworks/ru/library/os-giraph/index.html14. Processing large volumes of graph data: a guide to modern technologies. IBM / Sacr S., URL: http://www.ibm.com/developerworks/ru/library/os-giraph/index.html

Claims (50)

1. Система управления мастер-данными об активах, содержащая:1. A master asset data management system containing: • ядро системы, поддерживающее создание, модификацию и хранение в памяти модели мастер-данных об активах:• the core of the system, which supports the creation, modification and storage of the master asset data model in memory: • модель мастер-данных об активах, обязательно включающую в себя:• model of master data on assets, necessarily including: - по меньшей мере, три иерархически организованных ракурса, соответствующих некоторым представлениям имеющегося парка активов, каждому из которых поставлен в соответствие, по меньшей мере, один входящий в состав модели уникальный родовидовой классификатор мастер-данных об активах;- at least three hierarchically organized views corresponding to some representations of the available asset park, each of which is associated with at least one unique generic classifier of asset master data included in the model; - родовидовые классификаторы, каждый из которых представляет собой иерархическую систему классов, построенных на основе принципов наследования и инкапсуляции, при этом класс каждого объекта мастер-данных об активах в классификаторе полностью определяет все атрибуты соответствующего объекта этого класса и все типы его связей с объектами других ракурсов;- generic classifiers, each of which is a hierarchical system of classes built on the basis of the principles of inheritance and encapsulation, while the class of each object of the master data on assets in the classifier completely defines all the attributes of the corresponding object of this class and all types of its connections with objects of other angles ; - наборы связей каждого объекта любого из ракурсов с объектами других ракурсов для перехода между разными представлениями одного и того же актива;- sets of links of each object of any of the angles with objects of other angles for transition between different representations of the same asset; для каждого иерархически организованного ракурса:for each hierarchically organized view: - набор неиерархических (сетевых) связей между активами, принадлежащими к одному и тому же ракурсу, отображающих специфические для ракурса отношения между активами;- a set of non-hierarchical (network) links between assets belonging to the same view, displaying view-specific relationships between assets; - набор структурных моделей мастер-данных об активах, описывающих внутренние взаимосвязи и компонентный состав конкретных типов активов;- a set of structural models of asset master data describing the internal relationships and component composition of specific types of assets; - набор функциональных моделей мастер-данных об активах, построенных на основе алгоритмов и на основе математических моделей, использующих значения атрибутов отдельных экземпляров мастер-данных об активах и атрибутов взаимосвязанных с ними экземпляров мастер-данных об активах для того, чтобы проверить полноту ввода данных об активе или идентифицировать тип актива в зависимости от значений атрибутов;- a set of functional models of the master asset data, built on the basis of algorithms and based on mathematical models using the values of the attributes of individual instances of the master asset data and the attributes of the related instances of the master asset data in order to check the completeness of the data entry on asset or identify the type of asset depending on the values of the attributes; • по меньшей мере, три интерфейсных модуля, которые связаны с ядром системы, каждый из которых обеспечивает взаимодействие ядра системы с одним приложением или с одним функциональным модулем ERP-системы, каждый интерфейсный модуль выполнен с возможностью выгрузки по запросам, поступающим от внешних приложений и/или модулей ERP, запрошенного фрагмента мастер-данных об активах, относящегося к конкретному ракурсу мастер-данных, с которым работает запрашивающий модуль или приложение;• at least three interface modules that are associated with the system core, each of which provides interaction of the system core with one application or with one functional module of the ERP system, each interface module is designed to be unloaded upon requests from external applications and / or ERP modules, a requested piece of master data about assets related to a particular view of the master data with which the requesting module or application is working; • по меньшей мере, один алгоритмический модуль, связанный с ядром системы и выполненный с возможностью обработки всей модели мастер-данных об активах и/или отдельных ракурсов модели мастер-данных об активах, обеспечивающий выполнение операций из следующего списка:• at least one algorithmic module associated with the system core and configured to process the entire asset master data model and / or individual views of the asset master data model, providing operations from the following list: - проверка корректности и полноты системы межракурсных связей между объектами в модели, причем указанная проверка выполняется по алгоритму, в процессе выполнения которого: для проверки полноты и корректности межракурсных связей каждого узла осуществляется обход всех колец одной решетки межракурсных связей, существующей во внешней памяти, начинающихся с данного узла, при выполнении которого для исключения многократного обхода одних и тех же колец связей выполняют разметку связей во внешней памяти, при этом в процессе выполнения обхода выявляют наличие не предполагавшихся связей или нарушенных связей посредством использования набора межракурсных связей из модели мастер-данных, причем, после завершения обхода, в случае возврата к первоначальному узлу определяют, что цепочка связей данного узла является корректной, в случае если остались неразмеченные связи в наборе межракурсных связей, определяют наличие отсутствующих связей;- checking the correctness and completeness of the system of inter-view links between objects in the model, and this check is performed according to an algorithm, in the process of which: to check the completeness and correctness of inter-view links of each node, all rings of one lattice of inter-view links existing in external memory are traversed, starting with of a given node, when executing which, to exclude multiple traversal of the same rings of links, markup of links in external memory is performed, while in the process of performing the traversal, the presence of unpredicted links or broken links is revealed by using a set of inter-view links from the master data model, moreover, after the completion of the traversal, in the case of returning to the original node, it is determined that the chain of links of this node is correct, if there are unmarked links in the set of inter-view links, the presence of missing links is determined; - проверка корректности классификаторов;- checking the correctness of classifiers; - поиск объектов по классификаторам;- search for objects by classifiers; - формирование новых ракурсов мастер-данных на основе имеющихся в системе данных других ракурсов или на основе внешних данных;- formation of new views of the master data based on the data of other views available in the system or on the basis of external data; - формирование отчётности по модели данных и по сделанным в ней корректировкам;- formation of reports on the data model and on the adjustments made in it; • модуль диалогового интерфейса, связанный с ядром системы и обеспечивающий создание и корректировку мастер-данных администратором мастер-данных в режиме диалога.• a module of the dialog interface, connected with the core of the system and providing the creation and correction of the master data by the administrator of the master data in the dialog mode. 2. Система по п. 1, отличающаяся тем, что каждый иерархически организованный ракурс модели отображает принадлежность активов (вхождение объектов в объекты более высокого уровня).2. The system according to claim 1, characterized in that each hierarchically organized view of the model reflects the ownership of assets (the entry of objects into higher-level objects). 3. Система по п. 1, отличающаяся тем, что если неиерархические (сетевые) связи между активами одного ракурса имеют различные типы, то для них модель мастер-данных об активах обязательно содержит относящийся к этому ракурсу классификатор связей, представляющий собой иерархическую систему классов, построенную на принципах полиморфизма и инкапсуляции, который при необходимости может определить все атрибуты каждого типа сетевых связей данного ракурса.3. The system according to claim 1, characterized in that if non-hierarchical (network) links between assets of the same view are of different types, then for them the master data model of assets necessarily contains a link classifier related to this view, which is a hierarchical system of classes, built on the principles of polymorphism and encapsulation, which, if necessary, can determine all the attributes of each type of network links of a given view. 4. Система по п. 1, отличающаяся тем, что интерфейсные модули могут обладать:4. The system according to claim 1, characterized in that the interface modules may have: • возможностью выгрузки иерархий, классификаторов, сетевых связей, структурных и функциональных моделей, относящихся к объектам конкретного ракурса, с которым работает этот интерфейсный модуль, а также имеющихся связей с объектами других ракурсов;• the ability to unload hierarchies, classifiers, network links, structural and functional models related to objects of a specific view, with which this interface module works, as well as existing links with objects of other views; • возможностью загрузки данных модели в систему управления мастер-данными, но эти данные не могут использоваться, пока не будут подтверждены администратором мастер-данных.• the ability to load model data into the master data management system, but this data cannot be used until confirmed by the master data administrator. 5. Система по п. 1, отличающаяся тем, что модуль диалогового интерфейса может выполнять корректировку мастер-данных об активах, полученных из интерфейсных модулей, подтверждение правильности этих мастер-данных и перенос их в основную модель мастер-данных об активах.5. The system according to claim 1, characterized in that the dialog interface module can correct the master asset data obtained from the interface modules, confirm the correctness of this master data and transfer it to the main asset master data model. 6. Система по п. 1, отличающаяся тем, что:6. The system according to claim 1, characterized in that: • в системе имеется, по меньшей мере, один алгоритмический модуль, реализующий проверку корректности и полноты системы межракурсных связей между объектами в модели;• the system has at least one algorithmic module that checks the correctness and completeness of the system of inter-view connections between objects in the model; • или в системе могут быть два алгоритмических модуля, один из которых выполняет проверку корректности имеющихся в системе межракурсных связей между активами, а второй - проверку полноты системы межракурсных связей между активами.• or the system can have two algorithmic modules, one of which checks the correctness of the inter-view links between assets in the system, and the second checks the completeness of the system of inter-view links between assets. 7. Способ проверки корректности и полноты межракурсных связей между активами, реализуемый системой по п. 1, включает следующие операции:7. The method for checking the correctness and completeness of inter-view links between assets, implemented by the system according to claim 1, includes the following operations: • очистка всех данных о разметке связей, сформированных во внешней памяти в ходе предыдущего исполнения алгоритма;• clearing all data on the markup of links formed in the external memory during the previous execution of the algorithm; • посредством располагающихся в оперативной памяти стеков и указателей осуществляется: обход в цикле всех иерархических ракурсов, представленных в структуре активов и обход всех узлов каждой иерархии сверху вниз и последовательно по ветвям каждого поддерева;• by means of stacks and pointers located in the main memory: traversal in a cycle of all hierarchical views presented in the structure of assets and traversal of all nodes of each hierarchy from top to bottom and sequentially along the branches of each subtree; • при попадании в очередной узел иерархии:• when hitting the next node of the hierarchy: очистка располагающегося в оперативной памяти второго стека и загрузка текущего узла иерархии в качестве первого элемента второго стека;clearing the second stack in memory and loading the current hierarchy node as the first member of the second stack; очистка формируемого в оперативной памяти набора межракурсных связей и добавление в этот набор межракурсных связей всех обязательных связей узла класса первого элемента второго стека из атрибутов, содержащихся в классификаторе;clearing the set of inter-view links formed in RAM and adding to this set of inter-view links all the obligatory links of the class node of the first element of the second stack from the attributes contained in the classifier; проверка корректности и полноты межракурсных связей этого узла;checking the correctness and completeness of the inter-view links of this node; • формирование отчёта о нарушенных, отсутствующих и не предполагавшихся связях или о том, что нарушений межракурсных связей нет, причем• formation of a report on broken, absent and not supposed connections or that there are no violations of inter-perspective connections, and • для исключения многократного обхода одних и тех же колец связей выполняют разметку связей во внешней памяти, при этом в процессе выполнения обхода выявляют наличие не предполагавшихся связей или нарушенных связей посредством использования набора межракурсных связей из модели мастер-данных, а после завершения обхода, в случае возврата к первоначальному узлу, определяют, что цепочка связей данного узла является корректной, в случае если остались неразмеченные связи в наборе межракурсных связей, определяют наличие отсутствующих связей.• to exclude multiple traversal of the same rings of links, markup of links in external memory is performed, while in the process of traversal, the presence of unpredicted links or broken links is revealed by using a set of inter-view links from the master data model, and after the traversal is completed, in the case of return to the original node, determine that the chain of links of this node is correct, if there are unmarked links in the set of inter-view links, determine the presence of missing links. 8. Способ по п. 7, отличающийся тем, что при проверке корректности и полноты межракурсных связей конкретного узла осуществляется обход всех начинающихся с данного узла колец имеющейся решётки межракурсных связей, существующих во внешней памяти.8. The method according to claim 7, characterized in that when checking the correctness and completeness of inter-view links of a particular node, all rings of the existing lattice of inter-view links existing in external memory are traversed from this node. 9. Способ по п. 8, отличающийся тем, что при проверке корректности и полноты межракурсных связей конкретного узла используются внутренние номера ракурсов модели данных и при проверке связей в конкретной решётке производят подмену внутренних номеров иерархий таким образом, чтобы узел на вершине второго стека и его иерархия получили номер 1, а номера всех остальных иерархий смещаются в любую сторону по кольцу, сохраняя порядок.9. The method according to claim 8, characterized in that when checking the correctness and completeness of inter-view links of a particular node, the internal numbers of the views of the data model are used, and when checking the links in a particular lattice, the internal numbers of the hierarchies are substituted so that the node at the top of the second stack and its the hierarchy received the number 1, and the numbers of all other hierarchies are shifted in any direction along the ring, maintaining the order. 10. Способ по п. 9, отличающийся тем, что при проверке корректности и полноты межракурсных связей конкретного узла осуществляется обход всех колец решётки таким образом, что кольца из узла с номером 1 строят так, чтобы каждый следующий узел в кольце имел номер больше предыдущего или номер 1.10. The method according to claim 9, characterized in that when checking the correctness and completeness of inter-view connections of a particular node, all the rings of the lattice are traversed in such a way that the rings from the node with number 1 are constructed so that each next node in the ring has a number greater than the previous one or number 1. 11. Способ по п. 10, отличающийся тем, что при осуществлении обхода всех колец решётки кольца обходятся последовательно по межракурсным связям каждого объекта, а вся цепочка узлов кольца, через которую стал доступным очередной узел, сохраняется во второй стек.11. The method according to claim 10, characterized in that when traversing all the rings, the lattices of the rings are traversed sequentially along the inter-view connections of each object, and the entire chain of ring nodes through which the next node became available is stored in the second stack. 12. Способ по п. 10, отличающийся тем, что при осуществлении обхода всех колец решётки для того, чтобы не проходить каждое кольцо многократно, используется разметка связей, фиксируемая во внешней памяти, если при обходе колец выполняется переход по какой-то связи, и для следующего перехода нет неотмеченных связей или происходит попадание в начало кольца, то на пройденной связи ставится отметка, по отмеченным связям переход не производится.12. The method according to claim 10, characterized in that when traversing all the rings of the lattice, in order not to traverse each ring repeatedly, the markup of connections is used, which is fixed in external memory, if when traversing the rings, a transition is made along some connection, and for the next transition there are no unmarked links or the beginning of the ring occurs, then a mark is placed on the passed link, the transition is not made along the marked links. 13. Способ по п. 10, отличающийся тем, что при осуществлении обхода всех колец решётки для выбора нового элемента текущего кольца используется второй указатель.13. The method according to claim 10, characterized in that when traversing all the rings of the lattice, a second pointer is used to select a new element of the current ring. 14. Способ по п. 10, отличающийся тем, что для верхнего элемента, внесенного во второй стек при обходе всех колец одной решётки, выполняются проверки:14. The method according to claim 10, characterized in that for the upper element introduced into the second stack when traversing all the rings of one lattice, the following checks are performed: • присутствует ли связь между классом узла по второму указателю и классом узла в вершине второго стека в наборе межракурсных связей, если нет, то регистрируется сообщение об ошибке;• is there a link between the class of the node by the second pointer and the class of the node at the top of the second stack in the set of inter-view links, if not, then an error message is logged; • отмечена ли связь между классом узла по второму указателю и классом узла в вершине второго стека в наборе межракурсных связей, если нет, то на ней ставится отметка.• whether the link between the class of the node according to the second pointer and the class of the node at the top of the second stack in the set of inter-view links is marked, if not, then a mark is put on it. 15. Способ по п. 10, отличающийся тем, что для очередного элемента кольца при обходе всех колец одной решётки выполняются проверки:15. The method according to claim 10, characterized in that for the next element of the ring, when traversing all the rings of one lattice, the following checks are performed: • совпадает ли узел по первому указателю с узлом по второму указателю, если да, то на связь между узлами ставится отметка, чтобы больше по ней не проходить;• whether the node by the first pointer coincides with the node by the second pointer, if yes, then a mark is put on the link between the nodes so that you do not go through it anymore; • равно ли общее число элементов второго стека числу иерархий в модели мастер-данных об активах, если да, то регистрируется сообщение об ошибке;• is the total number of members of the second stack equal to the number of hierarchies in the master asset data model, if so, an error message is logged; • имеются ли межракурсные связи, исходящие из узла по второму указателю, если нет, то регистрируется сообщение об ошибке, если да, то делается проверка, есть ли на следующем переходе связи без разметки во внешней памяти, при их наличии узел по второму указателю добавляется во второй стек, а при отсутствии - ставится отметка на связь между узлом во втором стеке и узлом по второму указателю, чтобы больше по ней не проходить.• whether there are inter-view links outgoing from the node by the second pointer, if not, then an error message is recorded, if yes, then a check is made whether there are links at the next hop without marking in external memory, if there are any, the node by the second pointer is added to the second stack, and if it is absent, a mark is put on the link between the node in the second stack and the node at the second pointer, so as not to go through it anymore. 16. Способ по п. 10, отличающийся тем, что по окончании обхода всех колец данной решётки выполняется проверка, остались ли не отмеченные связи в наборе межракурсных связей, располагающемся в оперативной памяти, если да, то формируется сообщение об ошибке.16. The method according to claim 10, characterized in that after the traversal of all the rings of this lattice is completed, a check is made whether unmarked links remain in the set of inter-view links located in the RAM, if so, an error message is generated.
RU2018130478A 2017-02-27 2017-02-27 Asset master data management system RU2748741C2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2017/000096 WO2018156043A1 (en) 2017-02-27 2017-02-27 System for managing asset master data

Publications (3)

Publication Number Publication Date
RU2018130478A3 RU2018130478A3 (en) 2021-03-29
RU2018130478A RU2018130478A (en) 2021-03-29
RU2748741C2 true RU2748741C2 (en) 2021-05-31

Family

ID=63253350

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018130478A RU2748741C2 (en) 2017-02-27 2017-02-27 Asset master data management system

Country Status (2)

Country Link
RU (1) RU2748741C2 (en)
WO (1) WO2018156043A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116010376B (en) * 2022-12-30 2023-07-25 北京三维天地科技股份有限公司 Main data modeling method based on inheritance strategy

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185569B1 (en) * 1998-06-29 2001-02-06 Microsoft Corporation Linked data structure integrity verification system which verifies actual node information with expected node information stored in a table
US20050080757A1 (en) * 2003-10-08 2005-04-14 Dinesh Sharma Management of hierarchical reference data
US8150803B2 (en) * 2006-01-03 2012-04-03 Informatica Corporation Relationship data management
US20120303692A1 (en) * 2011-05-27 2012-11-29 International Business Machines Corporation Federation of master data management systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185569B1 (en) * 1998-06-29 2001-02-06 Microsoft Corporation Linked data structure integrity verification system which verifies actual node information with expected node information stored in a table
US20050080757A1 (en) * 2003-10-08 2005-04-14 Dinesh Sharma Management of hierarchical reference data
US8150803B2 (en) * 2006-01-03 2012-04-03 Informatica Corporation Relationship data management
US20120303692A1 (en) * 2011-05-27 2012-11-29 International Business Machines Corporation Federation of master data management systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
И. КОСЯКОВ, "Master Data Services для управления НСИ", 25.07.2015, доступно по URL: https://web.archive.org/web/20150725160507/https://microsoftbi.ru/basics/eim/mds/. *

Also Published As

Publication number Publication date
RU2018130478A3 (en) 2021-03-29
RU2018130478A (en) 2021-03-29
WO2018156043A1 (en) 2018-08-30

Similar Documents

Publication Publication Date Title
Marmo et al. Building performance and maintenance information model based on IFC schema
JP6846356B2 (en) Systems and methods for automatically inferring the cube schema used in a multidimensional database environment from tabular data
Reeve Managing data in motion: data integration best practice techniques and technologies
CN102341781A (en) Software test bed generation
US20160217537A1 (en) Real estate data management system
US20140229223A1 (en) Integrated erp based planning
Powell Mastering Microsoft Power BI: expert techniques for effective data analytics and business intelligence
Jupp et al. BIM-FM and information requirements management: missing links in the AEC and FM interface
Gui et al. IFC-based partial data model retrieval for distributed collaborative design
US8291380B2 (en) Methods for configuring software package
Ait-Lamallam et al. IFCInfra4OM: An ontology to integrate operation and maintenance information in highway information modelling
Wang et al. Adopting BIM to facilitate dispute management in the construction industry: A conceptual framework development
US10430413B2 (en) Data information framework
RU2748741C2 (en) Asset master data management system
Jawadekar A case study of the use of BIM and construction operations building information exchange (COBie) for facility management
Amirebrahimi et al. An integrated web-based 3D modeling and visualization platform to support sustainable cities
US20150363711A1 (en) Device for rapid operational visibility and analytics automation
Rome et al. Risk-based analysis of the vulnerability of urban infrastructure to the consequences of climate change
Trad A Relational DataBase based Enterprise Transformation Projects
Behbahani Nejad et al. A novel architecture based on business intelligence approach to exploit big data
Planting Developing a data repository for the Climate Adaptive City Enschede
KR20080001248A (en) System for quality control of database
Isikdag et al. Data integration capability evaluation of ERP systems: A construction industry perspective
O'Donnell et al. Geospatial considerations for a multiorganizational, landscape-scale program
Verney et al. RESQML version 2 uses new technologies to improve data exchange for subsurface modeling processes