Version analysis methods, devices, equipment, media, and program products based on business architecture

By incorporating the mapping relationship between information technology architecture and business architecture into software version analysis, the loopholes in the audit process caused by the requirement-oriented approach in existing technologies are resolved, enabling more efficient and accurate version analysis and ensuring software quality and security.

CN114691192BActive Publication Date: 2025-10-31INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210314677.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-28
Publication Date
2025-10-31
Estimated Expiration
2042-03-28

AI Technical Summary

Technical Problem

In existing technologies, version analysis methods that are solely demand-oriented have the problem of developers circumventing review processes, making it difficult to identify updates that are not in demand, leading to security risks, and making it difficult to ensure that software versions meet actual needs.

Method used

By obtaining identifiers and information technology services from the software documentation to be tested, a mapping relationship is formed. Combined with the relationship between the information technology architecture model and the business architecture model, the mapping relationship between code and requirements is obtained, and the matching rate is calculated to objectively compare the code version with the software requirements.

Benefits of technology

It improves software development efficiency and quality, ensures that software versions meet actual needs, reduces manpower and time costs, and improves the accuracy and efficiency of version analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114691192B_ABST
    Figure CN114691192B_ABST
Patent Text Reader

Abstract

This disclosure provides a version analysis method based on business architecture, applicable to the field of computer technology. The method includes: acquiring a software document to be tested; extracting a first identifier and a first information technology service from the software document to form a first mapping relationship between the first identifier and the first information technology service; acquiring a code mapping relationship based on a preset association relationship between an information technology architecture model and a business architecture model and the first mapping relationship, wherein the code mapping relationship includes a mapping relationship between the first identifier and the first business architecture model; acquiring a requirement mapping relationship, wherein the requirement mapping relationship includes a mapping relationship between a second identifier and a second business architecture model; and comparing the code mapping relationship and the requirement mapping relationship to calculate a matching rate. This disclosure also provides a version analysis device, equipment, storage medium, and program product based on business architecture.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, specifically to the field of information technology, and more specifically to a version analysis method, apparatus, device, medium, and program product based on business architecture. Background Technology

[0002] As large enterprises continue to evolve, structured business architectures, through top-down descriptions, provide a unified representation of the enterprise's production and operation architecture, business processes, and systems. Therefore, business architecture models are crucial for evaluating the operational status of enterprise information systems. However, with agile development and rapid iteration projects becoming important methods for business system development and deployment, information system updates are becoming increasingly frequent and fragmented.

[0003] Therefore, how to improve the quality of software versions, ensure that software version delivery meets the requirements specification, and improve the efficiency of business acceptance are technical problems that need to be solved by those skilled in the art. Summary of the Invention

[0004] In view of the above problems, this disclosure provides a business architecture-based version analysis method, apparatus, device, media, and program product to improve the efficiency and accuracy of business acceptance.

[0005] According to a first aspect of this disclosure, a version analysis method based on business architecture is provided, comprising: obtaining a software document to be tested; extracting a first identifier and a first information technology service from the software document to be tested, forming a first mapping relationship between the first identifier and the first information technology service; obtaining a code mapping relationship based on a preset association relationship between an information technology architecture model and a business architecture model and the first mapping relationship, wherein the code mapping relationship includes a mapping relationship between the first identifier and the first business architecture model; obtaining a requirement mapping relationship, wherein the requirement mapping relationship includes a mapping relationship between a second identifier and a second business architecture model; and comparing the code mapping relationship and the requirement mapping relationship to calculate a matching rate.

[0006] According to an embodiment of this disclosure, the step of extracting a first identifier and a first information technology service from the software document to be tested to form a first mapping relationship between the first identifier and the first information technology service includes: extracting multiple first identifiers from the code corresponding to the first information technology service based on a preset identifier extraction rule; and obtaining the first mapping relationship based on the correspondence between the multiple first identifiers and the first information technology service.

[0007] According to embodiments of this disclosure, the information technology architecture model includes multiple information technology service models, the business architecture model includes multiple process models and multiple entity models, and the preset association relationships between the information technology architecture model and the business architecture model include a first association relationship and a second association relationship. The first association relationship includes the association relationship between the process model and the information technology service model, and the second association relationship includes the association relationship between the entity model and the information technology service model.

[0008] According to embodiments of this disclosure, the first business architecture model includes a first process model and a first entity model, the code mapping relationship includes a third mapping relationship and a fourth mapping relationship, the third mapping relationship includes a mapping relationship between the first process model and the first identifier, the fourth mapping relationship includes a mapping relationship between the first entity model and the first identifier, and the step of obtaining the code mapping relationship based on the preset association relationship between the information technology architecture model and the business architecture model and the first mapping relationship includes: for the third mapping relationship, determining the first association relationship by matching the same information technology service model based on the first information technology service; obtaining the third mapping relationship between the first process model and the first identifier based on the first association relationship and the first mapping relationship; for the fourth mapping relationship, determining the second association relationship by matching the same information technology service model based on the first information technology service; and obtaining the fourth mapping relationship between the first entity model and the first identifier based on the second association relationship and the first mapping relationship.

[0009] According to embodiments of this disclosure, the requirement mapping relationship is obtained, which includes a mapping relationship between a second identifier and a second business architecture model, wherein the second business architecture model includes a second process model and a second entity model, and the requirement mapping relationship includes a fifth mapping relationship and a sixth mapping relationship. The fifth mapping relationship includes a mapping relationship between the second process model and the second identifier, and the sixth mapping relationship includes a mapping relationship between the second entity model and the second identifier.

[0010] According to embodiments of this disclosure, the step of comparing the code mapping relationship and the requirement mapping relationship to calculate the matching rate includes: comparing the consistency between the first entity model and the second entity model; comparing the consistency between the first process model and the second process model; comparing the consistency between the first identifier and the second identifier; generating a matching list and a non-matching list; and calculating the list matching rate based on the matching list and the non-matching list.

[0011] A second aspect of this disclosure provides a version analysis device based on business architecture, comprising: a software version acquisition module, a version code manifest extraction module, a code matching architecture manifest acquisition module, a requirement matching architecture manifest acquisition module, and a manifest matching rate calculation module. The software version acquisition module is used to acquire a software document to be inspected; the version code manifest extraction module is used to extract a first identifier and a first information technology service from the software document to be inspected, forming a first mapping relationship between the first identifier and the first information technology service; the code matching architecture manifest acquisition module is used to acquire a code mapping relationship based on a preset association relationship between an information technology architecture model and a business architecture model and the first mapping relationship, the code mapping relationship including a mapping relationship between the first identifier and the first business architecture model; the requirement matching architecture manifest acquisition module is used to acquire a requirement mapping relationship, the requirement mapping relationship including a mapping relationship between a second identifier and a second business architecture model; and the manifest matching rate calculation module is used to compare the code mapping relationship and the requirement mapping relationship to calculate a matching rate.

[0012] A third aspect of this disclosure provides an electronic device comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors perform the aforementioned business architecture-based version analysis method.

[0013] A fourth aspect of this disclosure also provides a computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the above-described business architecture-based version analysis method.

[0014] A fifth aspect of this disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described business architecture-based version analysis method. Attached Figure Description

[0015] The foregoing contents, as well as other objects, features, and advantages of this disclosure, will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:

[0016] Figure 1 The illustration schematically depicts an application scenario of a business architecture-based version analysis method, apparatus, device, medium, and program product according to embodiments of the present disclosure.

[0017] Figure 2A A schematic diagram of a business architecture model according to an embodiment of the present disclosure is shown.

[0018] Figure 2BA schematic diagram of an information technology architecture model according to an embodiment of the present disclosure is shown.

[0019] Figure 3 A flowchart illustrating a version analysis method based on business architecture according to an embodiment of this disclosure is shown schematically.

[0020] Figure 4 A flowchart illustrating a method for extracting identifiers according to an embodiment of the present disclosure is shown schematically.

[0021] Figure 5 The illustration schematically depicts a method for establishing relationships between different architectures according to embodiments of the present disclosure.

[0022] Figure 6 The diagram illustrates the entire process of a business architecture-based version analysis method applied to an automation scenario according to an embodiment of the present disclosure.

[0023] Figure 7 A schematic block diagram of a business architecture-based version analysis apparatus according to an embodiment of the present disclosure is shown.

[0024] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a business architecture-based version analysis method according to an embodiment of the present disclosure. Detailed Implementation

[0025] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.

[0026] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0027] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.

[0028] When using expressions such as "at least one of A, B, and C", they should generally be interpreted in accordance with the meaning that is commonly understood by a person skilled in the art (e.g., "a system having at least one of A, B, and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B, and C, etc.).

[0029] The following explains the technologies used in the embodiments of this disclosure one by one:

[0030] Identifiers are symbols used to identify a piece of code, and they have different meanings in different application contexts. In computer programming languages, identifiers are the names used by users when programming, used to name variables, constants, functions, statement blocks, etc., to establish the relationship between names and usage. Identifiers are usually composed of letters, numbers, and other characters.

[0031] Information Technology (IT) mainly involves the design, development, installation, and implementation of information systems and application software through the application of computer science and communication technologies.

[0032] Business architecture model: A business architecture model is a top-down, structured model that describes a company's business. It includes textual descriptions and relationships of process models, product models, and entity models currently used by the company.

[0033] Information technology architecture model: The information technology architecture model that corresponds to the business architecture model. It is a top-down, structured model that describes the business of an enterprise through code. The information technology architecture model includes multiple information technology service models with different granularities.

[0034] Information technology service model: Corresponding to the process model, product model and entity model in the business architecture model, it describes the process model, product model and entity model at different granularities (different levels) through code.

[0035] Information technology service: A service achieved using information technology.

[0036] In existing technologies, version analysis methods are mostly based solely on requirements. For example, when a new requirement is added, developers update the software version according to that requirement, adding code to make the updated software have the functionality required for the new requirement. Then, before the software version goes live, reviewers can determine whether the developers have completed the update by checking whether the corresponding identifiers for that code have been added, thus passing the review and going live. However, the inventors have found in practice that current version analysis methods based solely on requirements have many problems. For example, developers can circumvent the review by adding a few key identifiers, but the corresponding code does not actually implement the functionality required by the requirement. Furthermore, in version analysis methods based solely on requirements, it is difficult to identify updates that are not required after developers update the code, leading to software versions with security vulnerabilities being released.

[0037] To address the technical problems existing in the prior art, embodiments of this disclosure provide a version analysis method based on business architecture, comprising: obtaining a software document to be tested; extracting a first identifier and a first information technology service from the software document to be tested, forming a first mapping relationship between the first identifier and the first information technology service; obtaining a code mapping relationship based on a preset association relationship between an information technology architecture model and a business architecture model and the first mapping relationship, wherein the code mapping relationship includes a mapping relationship between the first identifier and the first business architecture model; obtaining a requirement mapping relationship, wherein the requirement mapping relationship includes a mapping relationship between a second identifier and a second business architecture model; and comparing the code mapping relationship and the requirement mapping relationship to calculate a matching rate.

[0038] In the embodiments of this disclosure, a new approach and method for code version analysis is provided by using business architecture as a bridge for requirement matching and analysis. It outputs the business scope affected by code versions through an objective and reliable method, comparing code versions with software requirements specifications using a business architecture model. This is particularly beneficial in scenarios requiring the verification of numerous software versions, saving manpower and time costs, improving software development efficiency and quality, and enhancing objectivity and accuracy.

[0039] Figure 1 The diagram illustrates an application scenario of the version analysis method based on business architecture according to an embodiment of the present disclosure.

[0040] like Figure 1As shown, application scenario 100 according to this embodiment may include terminal devices 101, 102, and 103, network 104, and server 105. Network 104 is used as a medium to provide a communication link between terminal devices 101, 102, and 103 and server 105. Network 104 may include various connection types, such as wired or wireless communication links or fiber optic cables, etc.

[0041] Users can use terminal devices 101, 102, and 103 to interact with server 105 via network 104 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 101, 102, and 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).

[0042] Terminal devices 101, 102, and 103 can be various electronic devices with displays and web browsing capabilities, including but not limited to smartphones, tablets, laptops, and desktop computers.

[0043] Server 105 can be a server that provides various services, such as a backend management server that supports websites browsed by users using terminal devices 101, 102, and 103 (for example only). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.

[0044] It should be noted that the version analysis method based on business architecture provided in this disclosure embodiment can generally be executed by server 105. Correspondingly, the version analysis device for business architecture provided in this disclosure embodiment can generally be located in server 105. The version analysis method for business architecture provided in this disclosure embodiment can also be executed by a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105. Correspondingly, the version analysis device for business architecture provided in this disclosure embodiment can also be located in a server or server cluster that is different from server 105 and capable of communicating with terminal devices 101, 102, 103 and / or server 105.

[0045] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.

[0046] The following will be based on Figure 1 The described scene, through Figures 2A to 6 The version analysis method based on business architecture of the disclosed embodiments is described in detail.

[0047] Figure 2A A schematic diagram of a business architecture model according to an embodiment of the present disclosure is shown.

[0048] like Figure 2A The business architecture model, as described above, is a top-down, structured model that describes an enterprise's business operations. It includes textual descriptions and relationships of process models, product models, and entity models currently used within the enterprise. The business architecture model comprises at least multiple product models, multiple process models, and multiple entity models.

[0049] A process model refers to the division of business operations across different business domains based on the planning, execution, and monitoring value streams. Each value stream is divided into different activities, and each activity is further broken down into different tasks. Tasks are then decomposed into steps according to business rules and conditions, and finally, a process description is provided. In other words, a process model includes five levels: Business Domain - Value Stream - Activity - Task - Step.

[0050] A process model can be understood as a model that views business from a process perspective, and it can be applied to business areas across different industries. Taking banking as an example, in a process model:

[0051] Business areas generally include, but are not limited to: personal deposits, personal accounts, credit cards, and personal loans.

[0052] Value streams generally include, but are not limited to: business planning, business preparation, and customer service.

[0053] Activities generally include, but are not limited to: developing management systems, issuing credit cards, withdrawing credit card funds, and repaying credit card debts.

[0054] Tasks typically include, but are not limited to: identifying individual customers, monitoring real-time fraud risks, processing credit card withdrawal requests, and settling foreign exchange.

[0055] It is understandable that in a business architecture model, the process model and the different levels within the process model can be seen as dividing the business into different levels of granularity from a process perspective.

[0056] Entity model: refers to the business content of different business objects. Each business object contains a core entity, lifecycle (the state of the core entity), subordinate entities (description of the attribute information of the core entity), relationships between business objects, and constraints.

[0057] An entity model can be understood as a model that views business from the perspective of entities, and it can be applied to business areas in different industries. Taking banking business as an example, in the entity model:

[0058] Business objects generally include, but are not limited to: participant information, participant lifecycle, account information, media information, etc.

[0059] A product model is a standard structure for defining a company's products, which includes product lines, product groups, base products, marketable products, and the relationships between products.

[0060] A product model can be understood as a method of viewing business from a product perspective, and it can be applied to business areas in different industries. Taking banking business as an example, product models generally include, but are not limited to: debit cards, credit cards, quasi-credit cards, international debit cards, etc.

[0061] It should be noted that, in the embodiments of this disclosure, the product model is not a necessary condition for implementing the version analysis method based on business architecture in the embodiments of this disclosure. The purpose of describing it here is only to provide a more complete explanation of the business architecture model.

[0062] Figure 2B A schematic diagram of an information technology architecture model according to an embodiment of the present disclosure is shown.

[0063] like Figure 2B The information technology architecture model includes multiple different information technology service models. Each service model includes multiple code segments, and each code segment contains multiple identifiers to identify the function of that code segment.

[0064] It should be noted that, in Figure 2B The text does not provide structural relationships between different information technology service models within the information technology architecture model, but this does not mean that there are no structural relationships between different information technology service models.

[0065] Figure 3 A flowchart illustrating a version analysis method based on business architecture according to an embodiment of this disclosure is shown schematically.

[0066] like Figure 3 As shown, the version analysis method based on business architecture in this embodiment includes operations S310 to S350, and the version analysis method based on business architecture can be executed by server 105.

[0067] Using S310, obtain the software documentation to be tested.

[0068] Specifically, before updating the software, the software documentation to be tested needs to be checked to see if it meets the expected requirements. The software documentation to be tested includes complete code.

[0069] It should be noted that, based on the business architecture model mentioned in this disclosure, the expected requirements exist in the form of business architecture model-code. Generally, reviewers will not review the entire code segment, but will extract keywords to identify the code segment. Therefore, it is necessary to extract identifiers from the code.

[0070] In operation S320, the first identifier and the first information technology service are extracted from the software document to be tested, and a first mapping relationship between the first identifier and the first information technology service is formed.

[0071] Specifically, the operation involves extracting first identifiers and first information technology services from the complete code in the software document to be tested, forming a first mapping relationship between the first identifiers and the first information technology services. In other words, the complete code can be divided into multiple first information technology services, each of which includes multiple code segments, and one or more first identifiers can be extracted from each code segment. Therefore, the first mapping relationship is that one first information technology service corresponds to multiple first identifiers. The purpose of operation S320 is to clarify the information technology service model and the logic of the complete code in the software document to be tested, so that it can be matched with models of different granularities in the business architecture in the future.

[0072] Figure 4 A flowchart illustrating a method for extracting identifiers according to an embodiment of the present disclosure is shown schematically.

[0073] like Figure 4 As shown, the identifier extraction method of this embodiment corresponds to operation S320, which includes operations S410 to S420. This identifier extraction method can be executed by server 105.

[0074] In operation S410, based on preset identifier extraction rules, multiple first identifiers are extracted from the code corresponding to the first information technology service.

[0075] Specifically, the preset identifier extraction rules are implemented based on different programming languages. Therefore, before extracting identifiers, it is necessary to identify the programming language of the code. The programming language can be a common programming language such as C, C++, C#, Java, or HTML. Different programming languages ​​have different extraction rules. For example, for C++, the preset identifier extraction rule could be to perform word segmentation after reading the version to be verified, and extract reserved words, numbers, operators, and delimiters.

[0076] In operation S420, the first mapping relationship is obtained based on the correspondence between multiple first identifiers and the first information technology service.

[0077] In operation S330, based on the preset association relationship between the information technology architecture model and the business architecture model and the first mapping relationship, a code mapping relationship is obtained, wherein the code mapping relationship includes the mapping relationship between the first identifier and the first business architecture model.

[0078] According to embodiments of this disclosure, the association between the information technology architecture model and the business architecture model includes at least a first association and a second association. The first association includes the association between the process model and the information technology service model, and the second association includes the association between the entity model and the information technology service model.

[0079] It should be noted that, based on information technology service models of different granularities, one information technology service model can correspond to different levels of models in the business architecture model. Specifically, based on information technology service models of different granularities, the first association relationship can also include the association relationship between the business domain model and the information technology service model, the association relationship between the value stream model and the information technology service model, the association relationship between the activity model and the information technology service model, and the association relationship between the task model and the information technology service model; or, the association relationship between the business object model and the information technology service model.

[0080] Combination Figure 2A and Figure 2B As shown, the business architecture model also includes one-to-one or one-to-many relationships between the various levels in the above major models. Connecting models at different granularities can reflect logical business relationships, as well as the logical relationship between the actual program code and the business logic.

[0081] Taking banking operations as an example, according to the business architecture model design, the "Issuing Credit Cards" activity (belonging to the credit card domain) needs to call tasks such as "Identifying Individual Customers" (belonging to the customer management domain), "Creating Individual Customer Information" (belonging to the customer management domain), "Calculating Individual Credit Limits" (belonging to the personal loan domain), and "Creating Bank Cards" (belonging to the credit card domain). Based on the information technology service models (codes or identifiers) associated with tasks such as "Identifying Individual Customers," from the perspective of the information technology service models, the "Issuing Credit Cards" activity needs to call the various information technology service models corresponding to "Identifying Individual Customers," "Creating Individual Customer Information," "Calculating Individual Credit Limits," and "Creating Bank Cards," which can further be mapped to the various codes and identifiers under each information technology service name.

[0082] Therefore, it can be concluded that the relationship between the business architecture model and the information technology architecture model (such as the process model and the information technology service model) can be used to reflect the potential business connections between the code and the business architecture model. Furthermore, it can be used to analyze the relationship between the code version to be inspected released by developers and the business architecture model.

[0083] Figure 5 The illustration schematically depicts a method for establishing relationships between different architectures according to embodiments of the present disclosure.

[0084] like Figure 5 As shown, the method for establishing relationships between different architectures in this embodiment corresponds to operation S330, which includes operations S510 to S540.

[0085] According to embodiments of this disclosure, the first business architecture model includes a first process model and a first entity model, the code mapping relationship includes a third mapping relationship and a fourth mapping relationship, the third mapping relationship includes the mapping relationship between the first process model and the first identifier, and the fourth mapping relationship includes the mapping relationship between the first entity model and the first identifier.

[0086] Optionally, the third mapping relationship also includes the mapping relationship between the model with finer granularity in the first process model and the first identifier, and the fourth mapping relationship also includes the mapping relationship between the model with finer granularity in the first entity model and the first identifier.

[0087] In operation S510, for the third mapping relationship, the first association relationship is determined by matching the same information technology service model as the first information technology service.

[0088] In operation S520, based on the first association relationship and the first mapping relationship, the third mapping relationship between the first process model and the first identifier is obtained.

[0089] Specifically, by retrieving the information technology service model from the business architecture model database, a match is made between the information technology service models in the database whose business names match the business name of the first information technology service. For example, if both the information technology service model and the business name of the first information technology service are "make bank cards", then the match is successful. The first process model corresponding to the information technology service model is obtained, and then a third mapping relationship between the first identifier and the first process model is directly established.

[0090] In operation S530, for the fourth mapping relationship, the second association relationship is determined by matching the same information technology service model as the first information technology service.

[0091] In operation S540, based on the second association relationship and the first mapping relationship, the fourth mapping relationship between the first entity model and the first identifier is obtained.

[0092] Specifically, the method for obtaining the fourth mapping relationship is based on the same principle as the method for obtaining the third mapping relationship, and will not be described again here.

[0093] In the embodiments disclosed herein, by means of matching and substitution, based on the interrelationships of multiple mapping relationships and association relationships, a mapping relationship of process-code and entity-code is formed, which facilitates later comparison and analysis with requirements.

[0094] In operation S340, the requirement mapping relationship is obtained, which includes the mapping relationship between the second identifier and the second business architecture model.

[0095] According to embodiments of this disclosure, the requirement mapping relationship is obtained, which includes a mapping relationship between a second identifier and a second business architecture model, wherein the second business architecture model includes a second process model and a second entity model, and the requirement mapping relationship includes a fifth mapping relationship and a sixth mapping relationship. The fifth mapping relationship includes a mapping relationship between the second process model and the second identifier, and the sixth mapping relationship includes a mapping relationship between the second entity model and the second identifier.

[0096] Specifically, the requirement mapping relationship can be understood as a requirement list for this development task. In practice, before the complete code in the software documentation to be tested is officially released, it is determined whether it meets the initial development requirements. The fifth and sixth mapping relationships mentioned above are used to verify the first and second identifiers by comparing them with the third and fourth mapping relationships.

[0097] It should be noted that the above operations S310 and S340 do not mean that S340 must be executed after operation S310; their execution order is arbitrary. This will not be elaborated further here.

[0098] In operation S350, the version code list and the requirement matching architecture list are traversed to complete the comparison and calculate the list matching rate.

[0099] According to embodiments of this disclosure, the step of comparing the code mapping relationship and the requirement mapping relationship to calculate the matching rate includes: comparing the consistency between the first entity model and the second entity model; comparing the consistency between the first process model and the second process model; comparing the consistency between the first identifier and the second identifier; generating a matching list and a non-matching list; and calculating the list matching rate based on the matching list and the non-matching list.

[0100] Specifically, by taking the consistency check of the entity model as one dimension, the consistency check of the process model as another dimension, and the check of the identifier as yet another dimension, a total of three dimensions of matching and non-matching lists can be generated, and then the matching rate of each list can be calculated.

[0101] Optionally, the matching and non-matching lists from the above three dimensions can be combined to form a combined list matching rate based on the analysis requirements.

[0102] In the embodiments of this disclosure, a new approach and method for code version analysis is provided by using business architecture as a bridge for requirement matching and analysis. It outputs the business scope affected by code versions through an objective and reliable method, comparing code versions with software requirements specifications using a business architecture model. This is particularly beneficial in scenarios requiring the verification of numerous software versions, saving manpower and time costs, improving software development efficiency and quality, and enhancing objectivity and accuracy.

[0103] Figure 6 The diagram illustrates the entire process of a business architecture-based version analysis method applied to an automation scenario according to an embodiment of the present disclosure.

[0104] like Figure 6 The diagram shows the complete process of the business architecture-based version analysis method applied to automation scenarios in this embodiment.

[0105] For the code-to-business architecture list, the input documents first include the software version to be verified (i.e., the software document to be verified mentioned earlier, containing complete code) and the software requirements specification (containing a list of business architecture model components corresponding to the requirements). Then, identifiers and internet services are extracted from the code in the software version, forming a list of identifiers and internet services involved in the software code (referred to as the version code list). The content of the version code list is matched against the relationships between process models and internet service models, entity models and IT service models stored in the business architecture model database, generating a "code-business architecture model" matching result (referred to as the code-to-business architecture list), which contains all business architecture model components involved in the software version.

[0106] The requirement matching architecture list is generated by performing business architecture analysis on the business architecture model component list in the software requirements specification, resulting in a "code-business architecture model" requirement matching architecture list.

[0107] Compare the code matching architecture list with the requirement matching architecture list to generate a matching list and a non-matching list.

[0108] Based on the above-described version analysis method based on business architecture, this disclosure also provides a version analysis device based on business architecture. The following will combine... Figure 7 The device is described in detail.

[0109] Figure 7 A schematic block diagram of a business architecture-based version analysis apparatus according to an embodiment of the present disclosure is shown.

[0110] like Figure 7 As shown, the business architecture-based version analysis device 700 of this embodiment includes a software version acquisition module 710, a version code list extraction module 720, a code matching architecture list acquisition module 730, a requirement matching architecture list acquisition module 740, and a list matching rate calculation module 750.

[0111] The software version acquisition module 710 is used to acquire the software document to be tested. In one embodiment, the software version acquisition module 710 can be used to perform the operation S310 described above, which will not be repeated here.

[0112] The version code listing extraction module 720 is used to extract the first identifier and the first information technology service from the software document to be tested, forming a first mapping relationship between the first identifier and the first information technology service. In one embodiment, the version code listing extraction module 720 can be used to perform the operation S320 described above, which will not be repeated here.

[0113] The code matching architecture list acquisition module 730 is used to acquire a code mapping relationship based on a preset association relationship between the information technology architecture model and the business architecture model and the first mapping relationship. The code mapping relationship includes a mapping relationship between a first identifier and a first business architecture model. In one embodiment, the code matching architecture list acquisition module 730 can be used to perform the operation S330 described above, which will not be repeated here.

[0114] The requirement matching architecture list acquisition module 740 is used to acquire requirement mapping relationships, which include the mapping relationship between the second identifier and the second business architecture model. The requirement matching architecture list acquisition module 740 can be used to execute the operation S340 described above, and will not be repeated here.

[0115] The manifest matching rate calculation module 750 is used to compare the code mapping relationship and the requirement mapping relationship to calculate the matching rate. The manifest matching rate calculation module 750 can be used to perform the operation S350 described above, which will not be repeated here.

[0116] This disclosure provides a novel approach and method for code version analysis. It outputs the business scope affected by code versions using an objective and reliable method, and compares the code versions with the software requirements specification using a business architecture model as a bridge. This saves manpower and time costs, improves software development efficiency and quality, and enhances objectivity and accuracy.

[0117] According to embodiments of this disclosure, any and multiple modules among the software version acquisition module 710, the version code listing extraction module 720, the code matching architecture listing acquisition module 730, the requirement matching architecture listing acquisition module 740, and the listing matching rate calculation module 750 can be combined into one module, or any one of these modules can be split into multiple modules. Alternatively, at least some of the functions of one or more of these modules can be combined with at least some of the functions of other modules and implemented in one module. According to embodiments of this disclosure, at least one of the software version acquisition module 710, the version code listing extraction module 720, the code matching architecture listing acquisition module 730, the requirement matching architecture listing acquisition module 740, and the listing matching rate calculation module 750 can be at least partially implemented as hardware circuits, such as field-programmable gate arrays (FPGAs), programmable logic arrays (PLAs), systems-on-a-chip, systems-on-a-substrate, systems-on-package, application-specific integrated circuits (ASICs), or implemented in hardware or firmware through any other reasonable means of integrating or packaging circuits, or implemented in any one of software, hardware, and firmware methods, or in a suitable combination of any of these. Alternatively, at least one of the software version acquisition module 710, the version code listing extraction module 720, the code matching architecture listing acquisition module 730, the requirement matching architecture listing acquisition module 740, and the listing matching rate calculation module 750 can be at least partially implemented as computer program modules, which can perform corresponding functions when the computer program module is run.

[0118] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a business architecture-based version analysis method according to an embodiment of the present disclosure.

[0119] like Figure 8As shown, an electronic device 800 according to an embodiment of this disclosure includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage portion 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of this disclosure.

[0120] RAM 803 stores various programs and data required for the operation of electronic device 800. Processor 801, ROM 802, and RAM 803 are interconnected via bus 804. Processor 801 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 802 and / or RAM 803. It should be noted that the programs may also be stored in one or more memories other than ROM 802 and RAM 803. Processor 801 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.

[0121] According to embodiments of this disclosure, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to a bus 804. The electronic device 800 may also include one or more of the following components connected to the I / O interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.

[0122] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs that, when executed, implement the method according to the embodiments of this disclosure.

[0123] According to embodiments of this disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, such as including, but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this disclosure, the computer-readable storage medium may include ROM 802 and / or RAM 803 and / or one or more memories other than ROM 802 and RAM 803 described above.

[0124] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code is used to cause the computer system to implement the item recommendation method provided in the embodiments of this disclosure.

[0125] When the computer program is executed by the processor 801, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0126] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and may be downloaded and installed via the communication section 809, and / or installed from a removable medium 811. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.

[0127] In such an embodiment, the computer program can be downloaded and installed from a network via communication section 809, and / or installed from removable medium 811. When the computer program is executed by processor 801, it performs the functions defined in the system of this disclosure embodiment. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0128] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0129] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0130] Those skilled in the art will understand that the features described in the various embodiments and / or claims of this disclosure can be combined or combined in various ways, even if such combinations or combinations are not explicitly described in this disclosure. In particular, the features described in the various embodiments and / or claims of this disclosure can be combined or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.

[0131] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. The scope of this disclosure is defined by the appended claims and their equivalents. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.

Claims

1. A version analysis method based on business architecture, characterized in that, include: Obtain the documentation for the software to be tested; Extract the first identifier and the first information technology service from the software document to be tested, and form a first mapping relationship between the first identifier and the first information technology service, wherein the first mapping relationship is used to match models of different granularities in the business architecture; Based on the preset association between the information technology architecture model and the business architecture model and the first mapping relationship, a code mapping relationship is obtained, wherein the code mapping relationship includes the mapping relationship between the first identifier and the first business architecture model; Obtain the requirement mapping relationship, which includes the mapping relationship between the second identifier and the second business architecture model; and Compare the code mapping relationship with the requirement mapping relationship, and calculate the matching rate. in, The information technology architecture model includes multiple information technology service models, and the business architecture model includes multiple process models and multiple entity models. The preset association relationships between the information technology architecture model and the business architecture model include a first association relationship and a second association relationship. The first association relationship includes the association relationship between the process model and the information technology service model, and the second association relationship includes the association relationship between the entity model and the information technology service model.

2. The method according to claim 1, characterized in that, The step of extracting the first identifier and the first information technology service from the software document to be tested, and forming a first mapping relationship between the first identifier and the first information technology service, includes: Based on preset identifier extraction rules, extract multiple first identifiers from the code corresponding to the first information technology service; The first mapping relationship is obtained based on the correspondence between multiple first identifiers and the first information technology service.

3. The method according to claim 1, characterized in that, in, The first business architecture model includes a first process model and a first entity model. The code mapping relationship includes a third mapping relationship and a fourth mapping relationship. The third mapping relationship includes the mapping relationship between the first process model and the first identifier, and the fourth mapping relationship includes the mapping relationship between the first entity model and the first identifier. The process of obtaining the code mapping relationship based on the preset association relationship between the information technology architecture model and the business architecture model and the first mapping relationship includes: For the third mapping relationship, the first association relationship is determined by matching the same information technology service model as the first information technology service. Based on the first association relationship and the first mapping relationship, the third mapping relationship between the first process model and the first identifier is obtained; For the fourth mapping relationship, the second association relationship is determined based on matching the same information technology service model as the first information technology service; and Based on the second association relationship and the first mapping relationship, the fourth mapping relationship between the first entity model and the first identifier is obtained.

4. The method according to claim 3, characterized in that The process of obtaining the requirement mapping relationship includes the mapping relationship between the second identifier and the second business architecture model. The second business architecture model includes a second process model and a second entity model. The requirement mapping relationship includes a fifth mapping relationship and a sixth mapping relationship. The fifth mapping relationship includes the mapping relationship between the second process model and the second identifier. The sixth mapping relationship includes the mapping relationship between the second entity model and the second identifier.

5. The method according to claim 4, characterized in that, The step of comparing the code mapping relationship and the requirement mapping relationship to calculate the matching rate includes: Compare the consistency between the first entity model and the second entity model; Compare the consistency between the first process model and the second process model; Compare the first identifier and the second identifier for consistency; Generate a list of matches and a list of non-matches; and Calculate the list matching rate based on the matching list and the non-matching list.

6. A version analysis device based on business architecture, characterized in that, include: The software version acquisition module, version code manifest extraction module, code matching architecture manifest acquisition module, requirement matching architecture manifest acquisition module, and manifest matching rate calculation module are all included. in, The software version acquisition module is used to acquire the software document to be tested; The version code listing extraction module is used to extract the first identifier and the first information technology service from the software document to be tested, and form a first mapping relationship between the first identifier and the first information technology service, wherein the first mapping relationship is used to match models of different granularities in the business architecture. The code matching architecture list acquisition module is used to obtain a code mapping relationship based on the preset association relationship between the information technology architecture model and the business architecture model and the first mapping relationship. The code mapping relationship includes the mapping relationship between the first identifier and the first business architecture model. The requirement matching architecture list acquisition module is used to obtain requirement mapping relationships, which include the mapping relationship between the second identifier and the second business architecture model; and The list matching rate calculation module is used to compare the code mapping relationship and the requirement mapping relationship to calculate the matching rate. in, The information technology architecture model includes multiple information technology service models, and the business architecture model includes multiple process models and multiple entity models. The preset association relationships between the information technology architecture model and the business architecture model include a first association relationship and a second association relationship. The first association relationship includes the association relationship between the process model and the information technology service model, and the second association relationship includes the association relationship between the entity model and the information technology service model.

7. An electronic device, comprising: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors perform the method according to any one of claims 1 to 5.

8. A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to perform the method according to any one of claims 1 to 5.

9. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method and apparatus for generating business rule model

    CN105335133A

  • Software demand and code mapping method and system

    CN113791757A