RU2748741C2 - Asset master data management system - Google Patents
Asset master data management system Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Economics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
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
[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
где: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
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)
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 |
---|---|
RU2018130478A RU2018130478A (en) | 2021-03-29 |
RU2018130478A3 RU2018130478A3 (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)
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)
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 |
-
2017
- 2017-02-27 RU RU2018130478A patent/RU2748741C2/en active
- 2017-02-27 WO PCT/RU2017/000096 patent/WO2018156043A1/en active Application Filing
Patent Citations (4)
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)
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 |
---|---|
WO2018156043A1 (en) | 2018-08-30 |
RU2018130478A (en) | 2021-03-29 |
RU2018130478A3 (en) | 2021-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Marmo et al. | Building performance and maintenance information model based on IFC schema | |
US10838982B2 (en) | System and method for aggregating values through risk dimension hierarchies in a multidimensional database environment | |
JP6846356B2 (en) | Systems and methods for automatically inferring the cube schema used in a multidimensional database environment from tabular data | |
US20160004741A1 (en) | Method and apparatus for managing corporate data | |
Reeve | Managing data in motion: data integration best practice techniques and technologies | |
Tupper | Data architecture: from zen to reality | |
US20230409648A1 (en) | Composite index on hierarchical nodes in the hierarchical data model within case model | |
CN102341781A (en) | Software test bed generation | |
Powell | Mastering Microsoft Power BI: expert techniques for effective data analytics and business intelligence | |
US20140229223A1 (en) | Integrated erp based planning | |
Jupp et al. | BIM-FM and information requirements management: missing links in the AEC and FM interface | |
US8291380B2 (en) | Methods for configuring software package | |
US20170270163A1 (en) | Data Information Framework | |
Orlovskyi et al. | Enterprise architecture modeling support based on data extraction from business process models. | |
RU2748741C2 (en) | Asset master data management system | |
US20150363711A1 (en) | Device for rapid operational visibility and analytics automation | |
Trad | A Relational DataBase based Enterprise Transformation Projects | |
Amirebrahimi et al. | An integrated web-based 3D modeling and visualization platform to support sustainable cities | |
Rome et al. | Risk-based analysis of the vulnerability of urban infrastructure to the consequences of climate change | |
Lakhe et al. | Practical Hadoop Migration | |
KR100796905B1 (en) | System for Quality Control of DataBase | |
M’baba et al. | Process mining for artifact-centric blockchain applications | |
Behbahani Nejad et al. | A novel architecture based on business intelligence approach to exploit big data | |
Roessing et al. | A Comparative Analysis of Smart Cities Frameworks based on Data Lifecycle Requirements. | |
Isikdag et al. | Data integration capability evaluation of ERP systems: A construction industry perspective |