WO2023185581A1 - 基于鱼骨模型的系统工程设计与验证方法及系统 - Google Patents

基于鱼骨模型的系统工程设计与验证方法及系统 Download PDF

Info

Publication number
WO2023185581A1
WO2023185581A1 PCT/CN2023/083076 CN2023083076W WO2023185581A1 WO 2023185581 A1 WO2023185581 A1 WO 2023185581A1 CN 2023083076 W CN2023083076 W CN 2023083076W WO 2023185581 A1 WO2023185581 A1 WO 2023185581A1
Authority
WO
WIPO (PCT)
Prior art keywords
static
software
software function
fishbone
task
Prior art date
Application number
PCT/CN2023/083076
Other languages
English (en)
French (fr)
Inventor
冯济舟
吴亮
赵洪立
杨雪亚
董世友
钮俊清
Original Assignee
中国电子科技集团公司第三十八研究所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中国电子科技集团公司第三十八研究所 filed Critical 中国电子科技集团公司第三十八研究所
Publication of WO2023185581A1 publication Critical patent/WO2023185581A1/zh
Priority to US18/672,647 priority Critical patent/US20240311197A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Definitions

  • the invention relates to the technical field of system engineering, and specifically relates to a system engineering design and verification method and system based on the fishbone model.
  • Model-Based Systems Engineering emerged as the times require, which places models in the entire
  • the center of the engineering process, starting from the requirements stage, is to realize the system design of the product through the continuous evolution and iteration of the model.
  • MBSE has many advantages, including strengthening communication between investors and team members, improving the ability to acquire knowledge, having better information traceability, enhancing artifact reuse, and reducing development risks, etc.
  • the International Society for Systems Engineering points out that model-driven system design methods "are expected to replace the document-centric approach used by systems engineers for many years and eventually be fully integrated into the systems engineering process.”
  • the model-based systems engineering method simplifies complex problems and achieves dimensionality reduction by describing a certain aspect of the problem; the model-based systems engineering method provides a clear and comprehensive description of complex problems through the "connection" of multi-perspective models; Model-based systems engineering methods ignore unimportant details to reveal the essence of the problem; model-based systems engineering methods express problems in a form that is easier to observe and understand, enhancing knowledge acquisition, analysis intensity and completeness; model-based systems The engineering method realizes the capture of knowledge and the maintenance of contact information through the establishment of multi-perspective models. This solves the problem of insufficient knowledge management capabilities and insufficient auxiliary decision-making role of document-based requirements engineering methods.
  • the invention patent application with publication number CN 101847170 A discloses an auxiliary design or verification method for system engineering, including: decomposing it into smaller subsystems layer by layer according to the system's specifications or requirements; And decompose the elements of the smallest functional unit; analyze the attributes and corresponding attribute values contained in the elements, and then calculate the system System or subsystem, element and attribute tags, resources, resource characteristics and mutual structural information; all elements are paired in pairs and the relationship between the paired elements is defined and all aspects of the relationship are described.
  • the invention patent application with publication number CN 112560213 A discloses a system modeling method and system based on model system engineering and super network theory.
  • the system modeling system based on model system engineering and super network theory includes: application scenario determination Module, architecture determination module, architecture verification module, indicator determination module, weight determination module, central control module, architecture model modification module, data acquisition module, data processing module, data reference module, system model output module and model conversion output module.
  • the indicators of the quantitative analysis system structure can ensure the integrity and effectiveness of the sorted data through top-to-bottom sorting and bottom-to-top integration. This method is aimed at a specific field.
  • the input of the system is to establish an application scenario.
  • the form of establishing the application scenario and what elements need to be given are not specifically defined. It is not easy for implementers and users to understand and use, resulting in Confusion and errors in operational information.
  • a scene library and an architecture model library need to be established, and the attributes and quantities of the corresponding architecture models need to be understood. Therefore, establishing the two libraries requires a lot of specialized work and is not very universal.
  • the technical problem to be solved by the present invention is how to provide a simple and accurate system engineering design and verification method and system based on the fishbone model.
  • the present invention proposes a system engineering design and verification method based on the fish bone model.
  • the method includes:
  • modeling information which includes system-level static information, system task-level static information, and system task-level dynamic data flows;
  • system task-level dynamic data flow is represented as a system function point dynamic data flow chart
  • Consistency adjustment is performed on the software function modules in the static set and the software function modules in the dynamic set until the software function modules in the static set and the software function modules in the dynamic set are consistent.
  • the present invention adopts a system engineering method based on the fishbone model. Compared with the learning threshold problem of the existing MBSE method, it is easier for engineers to get started, understand and use it. Moreover, the static composition diagram of system functions based on the fishbone model, the static composition diagram of each system function, and the dynamic data flow diagram of system function points based on the fishbone model can make the structure of the system simple and clear, and can virtualize the actual system and simulate its use. Effectively verify the design of scenarios, systems and their implementation software, which is conducive to the early exposure and discovery of system design issues.
  • system-level static information includes system name primitives and system task primitives
  • the system task-level static information includes the name primitives of the system tasks and the name primitives of the software function modules;
  • the system task-level dynamic data flow includes the name graphic element of the system task, the name graphic element of the software, and the name graphic element of the software function module.
  • composition structure diagram including:
  • the name element of the system task is placed at the end point of the horizontal straight line in a fishbone diagram as the fishbone head, and the software functions used to implement the system task are
  • the module name element column and the diagonal segment of the fishbone diagram form a structure diagram of the system task composition.
  • system task-level dynamic data flow is represented as a system function point dynamic data flow diagram, including:
  • the corresponding fishbone diagram is a fishbone diagram in which the name primitives of the corresponding system tasks are the fishbone parts;
  • the name primitives of the software function modules are listed on the diagonal segments in the corresponding bone diagram, and the corresponding fishbone diagram is a fishbone diagram in which the name primitives of the corresponding software are the fish bone parts.
  • the order of the name primitives of the system task, the name primitives of the software, and the name primitives of the software function modules is consistent with the execution order of the system;
  • a static set A k of each software function module of the system is established, where k represents the static set The total number of software function modules in the state collection;
  • a dynamic set A n of each software function module of the system is established, where n represents the total number of software function modules in the dynamic set.
  • the software function modules in the static set and the software function modules in the dynamic set are adjusted for consistency until the software function modules in the static set and the software function modules in the dynamic set are Consistent, including:
  • a weight determination model is used to determine the weight of each software function module, where the formula of the weight determination model is expressed as:
  • a k represents a static set
  • m 1 , m 2 ,..., m k respectively represent the weight of each software function module in the static set
  • k represents the total number of software function modules in the static set
  • consistency determination model consistency adjustment is performed on the software function modules in the static set and the software function modules in the dynamic set.
  • the formula of the consistency determination model is expressed as:
  • n and k are both positive integers, and n represents the total number of software function modules in the dynamic collection, Indicates the weight of each corresponding software function module in the static set;
  • weight determination model is used to determine the weight of each software function module according to the priority ranking of each software function module in the static set, including:
  • m i m 1 *1/k i-1 , i ⁇ 1, and i ⁇ k.
  • the method also includes:
  • the present invention also proposes a system engineering design and verification system based on the fish bone model.
  • the system includes:
  • An information acquisition module used to acquire modeling information, which includes system-level static information, system task-level static information, and system task-level dynamic data flows;
  • a first information representation module configured to represent the system-level static information and the system task-level static information as a system static composition structure diagram based on a fishbone diagram and correspond to each system task in the system static composition structure diagram.
  • System task composition structure diagram ;
  • the second information representation module is used to represent the system task-level dynamic data flow as a system function point dynamic data flow chart based on the fishbone diagram;
  • the set determination module is used to establish a static set of each software function module of the system based on the system task composition structure diagram, and to establish a dynamic set of each software function module of the system based on the dynamic data flow chart of the system function point;
  • a consistency determination module used to adjust the consistency of the software function modules in the static set and the software function modules in the dynamic set until the software function modules in the static set and the software in the dynamic set The functional modules are consistent.
  • the present invention adopts a system engineering method based on the fishbone model. Compared with the learning threshold problem of the existing MBSE method, it is easier for engineers to get started, understand and use it. Moreover, the static composition diagram of system functions based on the fishbone model, the static composition diagram of each system function, and the dynamic data flow diagram of system function points based on the fishbone model can make the structure of the system simple and clear, and can virtualize the actual system and simulate its use. Effectively verify the design of scenarios, systems and their implementation software, which is conducive to the early exposure and discovery of system design issues.
  • Figure 1 is a schematic flow chart of the system engineering design and verification method based on the fish bone model in the present invention
  • Figure 2 is a schematic diagram of the static composition structure of the model-based system function in the present invention.
  • Figure 3 is a schematic diagram of the static composition of each system function in the present invention.
  • Figure 4 is a schematic diagram of the dynamic data flow based on system function points in the present invention.
  • Figure 5 is a schematic diagram of the definition set of icon meanings in the present invention.
  • Figure 6 is a schematic diagram of the static composition structure of the link communication system in the present invention.
  • Figure 7 is a schematic diagram of the static composition structure of the link communication system tasks in the present invention.
  • Figure 8 is a schematic diagram of the dynamic data flow of link communication system tasks in the present invention.
  • Figure 9 is a schematic diagram of the static composition of the parking access control system in the present invention.
  • Figure 10 is a schematic structural diagram of the static composition of the parking access control system tasks in the present invention.
  • Figure 11 is a schematic diagram of the dynamic data flow of the parking access control system tasks in the present invention.
  • Figure 12 is a schematic structural diagram of the system engineering design and verification system based on the fish bone model in the present invention.
  • one embodiment of the present invention proposes a system engineering design and verification method based on the fishbone model.
  • the method includes the following steps:
  • modeling information which includes system-level static information, system task-level static information, and system task-level dynamic data flow;
  • S50 Adjust the consistency of the software function modules in the static set and the software function modules in the dynamic set until the software function modules in the static set are consistent with the software function modules in the dynamic set.
  • the present invention adopts a system engineering method based on the fishbone model. Compared with the learning threshold problem of the existing MBSE method, it is easier for engineers to get started, understand and use it. Moreover, the static composition diagram of system functions based on the fishbone model, the static composition diagram of each system function, and the dynamic data flow diagram of system function points based on the fishbone model can make the structure of the system simple and clear, and can virtualize the actual system and simulate its use. Effectively verify the design of scenarios, systems and their implementation software, which is conducive to the early exposure and discovery of system design issues.
  • the system-level static information includes the name primitive of the system and the primitive of the system task
  • the system task-level static information includes the name primitives of the system tasks and the name primitives of the software function modules;
  • the system task-level dynamic data flow includes the name graphic element of the system task, the name graphic element of the software, and the name graphic element of the software function module.
  • Qt's GraphicsView framework structure is used to provide model view programming based on primitives.
  • the framework includes three main classes, namely QGraphicsScene scene class, QGraphicsView view class and QGraphItem primitive class.
  • a scene can be represented by multiple views, and a scene includes Multiple geometric figures use Qt's GraphicsView framework structure to define and generate system primitives.
  • step S20 includes the following steps:
  • the unified architecture can be expressed as: the name element of the software is represented by a horizontal straight line, and the name element of the software function module is connected by It is represented by a diagonal segment on the horizontal straight line to the software's name primitive.
  • the specific modeling is as follows:
  • the system-level static information is composed of the system and the tasks that the system needs to complete.
  • the name diagram of the system is placed at the head of the fish bone as the end point of the horizontal straight line, and the name diagram of the system task that the system needs to complete is placed. Listed on the fish bones represented by the diagonal segments.
  • the system task-level static information consists of the system tasks that the system needs to complete and the software and functions that make up the system.
  • the name element of the system task is placed on the head of the fish bone as the end point of the horizontal straight line. List the software required for the task and the functional name elements of certain aspects it implements on the fish bones represented by the diagonal segments.
  • step S30 includes the following steps:
  • the corresponding fishbone diagram is a fishbone diagram in which the name primitives of the corresponding system tasks are the fishbone parts. ;
  • the corresponding fishbone diagram is a fishbone diagram in which the name primitives of the corresponding software are the fish bone parts. .
  • the system task-level dynamic data flow is expressed as a system function point dynamic data flow chart based on the fishbone model. Its unified architecture can be expressed as: the tasks that the system needs to complete are represented by a line pointing from left to right. It is represented by a horizontal straight line with arrows; each software that makes up the system is represented by a point on the horizontal straight line with arrows that leads diagonally to the straight line; each functional module that implements the software is represented by a point diagonally outside the software line segment that makes up the system. Represented by a line segment with an arrow leading to it.
  • the name primitives of the functional modules are listed on the fishbone represented by the diagonal segment and headed by the software name primitive.
  • the order of the name graphic elements of the system task, the name graphic element of the software, and the name graphic elements of the software function module is consistent with the execution order of the system
  • each software or the name elements of each functional module of the software connected by the dotted line part represent a parallel relationship in time series, that is, there is no order of input and output of its function points.
  • the output messages between each software are represented by numerical codes, and the final output of the system task is identified by the output message name.
  • the input messages between each software are identified by "the numerical code of the associated output message + the name of the input message".
  • the initial input of the system task is identified by the name of the input message.
  • step S40 includes the following steps:
  • a dynamic set A n of each software function module of the system is established, where n represents the total number of software function modules in the dynamic set.
  • k and n both represent positive integers.
  • step S50 includes the following steps:
  • a k represents a static set
  • m 1 , m 2 ,..., m k respectively represent the weight of each software function module in the static set
  • k represents the total number of software function modules in the static set
  • the priorities of the software function modules are automatically or artificially sorted.
  • the automatic sorting of priorities can be understood as composing the structure diagram according to the priority of the software function modules during the construction process of the system task composition structure diagram. , those with high priority are placed in front, and those with low priority are placed in the back; artificial prioritization can be determined by expert evaluation methods, such as determining the priority of software function modules based on the number of times they appear in each system task. level, the more times it appears, the higher its priority; secondly, for software function modules that appear the same number of times, their priority is determined according to the order of appearance of the software function modules.
  • n and k are both positive integers, and n represents the total number of software function modules in the dynamic collection, Indicates the weight of each corresponding software function module in the static set;
  • the weight value m 1 of each software implementation module set in the static composition information is given to it. , m 2 ,..., m k , here we use express.
  • the total number k of software function modules in the static set is directly used as a penalty factor and assigned to the software function modules that exist in the dynamic set but do not exist in the static set.
  • the penalty factor is set to the total number of software function modules. The purpose is that when the weighted sum is greater than 1, it means that the dynamic design functions must have functions that are not included in the static design function set.
  • the extra functions may bring problems to the system. Greater risks, such as failures, crashes, etc., will inevitably bring redundancy to the system. Therefore, the handling of extra functions must be paid attention to and carefully.
  • the extra functions in dynamic design need to be analyzed to ensure that the system Design consistency.
  • the consistency and completeness of the two sets can be determined through the weighted sum. If it is 1, it can be determined that the dynamic design function is consistent and complete with the static design function, and there are no redundant functions or missing functions; if it is greater than 1, it can be concluded that there must be redundant functions in the dynamic design function, and you need to go back to In the static design process, analyze and find the cause of the problem, modify the static design drawing or dynamic design drawing until it is 1; if it is less than 1, it can be concluded that there must be a missing function in the dynamic design function, and you need to go back to the static design process, analyze and Find the cause of the problem and modify the static design drawing or dynamic design drawing until it reaches 1.
  • step S51 is specifically:
  • each software function module in the static set is reduced in a 1/k ratio according to the priority order, and the weight of each software function module is determined as:
  • m i m 1 *1/k i-1 , i ⁇ 1, and i ⁇ k.
  • the current consistency and integrity verification is usually judged by observing whether the dynamic execution of all state diagrams can reach the end.
  • This dynamic verification method increases the complexity of the operation when used, and when in order to achieve Dynamic verification of the effect requires a lot of work.
  • the advantage of using the convergent normalization idea is that firstly, the consistency of the elements of the dynamic design process set and the static design process set can be accurately determined. And it omits the additional operations to be performed in order to build dynamic execution, and avoids the problems and impacts caused by building dynamic execution operations. It greatly reduces the designer's workload and improves work efficiency.
  • the method further includes the following steps:
  • This embodiment is designed with a lightweight and versatile system engineering design method.
  • System designers only need to follow the method of this patent to sequentially establish a schematic diagram of the static composition of the system based on the fishbone model and realize the static composition of the system's system functions.
  • Structural diagrams and dynamic data flow diagrams based on system function points are sufficient, which conform to the development process and design ideas and do not add additional work.
  • by combining the fishbone diagram often used in engineering as a carrier its application meaning is adaptively transformed, and its specific expression form and meaning are strictly defined, thereby realizing a system suitable for various situations of system engineering design.
  • a collection of fishbone-based models This unifies concepts and understanding and facilitates the implementation of subsequent data processing.
  • This patent uses static analysis to sequentially establish a schematic diagram of the system's static composition structure, a static composition structure diagram of the system's system functions, and a dynamic data flow diagram based on the system's function points based on the fishbone model without adding additional work. Inconsistencies and incompleteness issues can be analyzed, reducing workload. Moreover, the method proposed in this embodiment can be used and implemented during the system engineering design process stage.
  • the link communication system consists of link communication tasks.
  • the system name i.e., link communication system
  • the system task name (link communication function) is listed in the slash segment. on the fishbone;
  • the system name icon is represented by a horizontal straight line, and the system task name icon is represented by a diagonal segment connected to the horizontal straight line of the system name icon;
  • the link communication system task diagram consists of various software and software functions that implement the system tasks.
  • the link communication system task name is placed at the head of the fish bone as the end point of the horizontal straight line.
  • the names and functions of each software that implement the system tasks are Software function names are listed on the fish bones represented by slashed segments.
  • the task composition structure diagram of the link communication system consists of the names of each software (monitoring software, data management software, control software and data processing software) and software function point names (link function of monitoring software, link function of data management software, control software
  • the link function and the link function of the data processing software is placed at the head of the fish bone as the end point of the horizontal straight line, and the software function point names are listed on the fish bone represented by the diagonal segment;
  • the dynamic data flow icon of the link communication system task includes the system task name (link communication system task), each software name (monitoring sub-software, data management software, control software and data processing software), software function point name (monitoring software Link function, link function of data management software, link function of control software and link function of data processing software) and software function point input and output (monitoring software input: link query; data management software input: link query ; Control software input: link query and signal processing software input: link query; and monitoring software output: link response; data management software output: link response; control software output: link response and signal processing software output: link road response).
  • the system task name (link communication system task) icon is represented by a horizontal straight line with an arrow pointing from left to right.
  • the icons of each software name are represented by points on the straight line leading diagonally to the straight line.
  • the link function and the link function of the data processing software) icon is represented by an arrow line segment from a point on the arrow line segment of each software name icon leading to the respective software name icon.
  • Each software function point input (monitoring software link function input: link query; data management software link function input: link query; control software link function input: link query and signal processing software link function input: link Query) icon is represented by an arrowed line segment leading to the software function point name icon.
  • Software function point output icon (monitoring software link function output: link response; data management software link function output: link response; control software link function output: link response and signal processing software link function output: link Response) is represented by an arrowed line segment leading to the software function point name icon.
  • the dotted line part in the straight line of the system task name icon indicates that the software function points connected on the dotted line are in a parallel relationship in timing, that is, the input and output of the function points are not sequential.
  • the design and verification steps include:
  • the parking access control system consists of entry control and exit control.
  • the system name i.e. parking access control system
  • the system task name is listed on the diagonal On the fishbone represented by the line segment; the system name icon is represented by a horizontal straight line, and the system task name icon is represented by a diagonal segment connected to the horizontal straight line of the system name icon;
  • the entry control system task diagram consists of various software and software functions that realize the system tasks.
  • the entry control system task name is placed on the head of the fish bone as the end point of the horizontal straight line.
  • the software names and software functions that will realize the system tasks are Names are listed on the fish bones represented by slashed segments.
  • the entry control system task composition structure diagram consists of the name of each software (monitoring software and control software) and the name of the software function point (visitor arrival identification function, opening access control function and parking space full prompt function).
  • the entry control system task name is placed in the fish
  • the head of the bone is used as the end point of the horizontal straight line, and the names of the software function points are listed on the fish bones represented by the diagonal segments;
  • the structure diagram of the task composition of the control system consists of the name of each software (monitoring software and control software) and the name of the software function point (visitor Arrival recognition function, and access control function), the task name of leaving the control system is placed on the head of the fish bone as the end point of the horizontal straight line, and the software function point names are listed on the fish bone represented by the diagonal segment;
  • Dynamic data flow icons for parking access control system tasks include system task names (entry control system tasks and exit control system), each software name (monitoring software and control software), software function point name (visitor arrival identification function, opening access control function and parking space full prompt function) and software function point input and output (monitoring software input: scanning to visitor arrival ;Control software input: visitor arrival information; and monitoring software output: visitor arrival information; control software output: open access control or prompt is full).
  • system task name entering the control system task and leaving the control system
  • the system task name exit control system
  • each software name monitoring software and control software
  • software function point name visitor arrival identification function, opening access control function and parking space full prompt function
  • software function point input and output monitoring software input: scanning to visitor arrival ;
  • Control software input visitor arrival information
  • monitoring software output visitor arrival information
  • control software output open access control or prompt is full.
  • the system task name (entering the control system task and leaving the control system) icon is represented by a horizontal straight line with an arrow pointing from left to right.
  • the icons of each software name are represented by the points on the straight line diagonally leading to the straight line.
  • the icons of the software function points are represented by the names of each software The points on the icon arrow segments lead to the arrow segment representation of each software name icon.
  • the icons of each software function point input (monitoring software input: scanning to visitor arrival; control software input: visitor arrival information) are represented by arrowed line segments leading to the software function point name icon.
  • the software function point output icon (monitoring software output: visitor arrival information; control software output: opening access control or prompting that it is full) is represented by an arrowed line segment leading to the software function point name icon.
  • the dotted line part in the straight line of the system task name icon indicates that the software function points connected on the dotted line are in a parallel relationship in timing, that is, the input and output of the function points are not sequential.
  • this embodiment solves the arbitrariness of the retrospective association between the system and the software that implements the system tasks, and ensures the system function and implementation Integrity and consistency between the software of the system tasks; by comparing the dynamic data flow of each system function based on the fishbone model and the static composition structure diagram of each system function, the design of the system and its implementation software can be carried out Effective verification ensures that the design is rigorous and unambiguous, has a reasonable structure, and is easy to maintain and upgrade in the future.
  • the system engineering method based on the fishbone model solves the learning threshold of the existing MBSE method, making it easier for engineers to get started, understand and use it.
  • the static composition diagram of system functions based on the fishbone model, the static composition diagram of each system function, and the dynamic data flow diagram of system function points based on the fishbone model can make the structure of the system simple and clear, and can virtualize the actual system and simulate usage scenarios. , verify the system design logic and impact, which is conducive to the early exposure and discovery of system design issues.
  • FIG. 12 Another embodiment of the present invention also proposes a system engineering design and verification system based on the fishbone model.
  • the system includes:
  • Information acquisition module 10 is used to acquire modeling information, which includes system-level static information, system tasks Service-level static information and system task-level dynamic data flow;
  • the first information representation module 20 is configured to represent the system-level static information and the system task-level static information as a system static composition structure diagram and each system task in the system static composition structure diagram based on the fishbone diagram. Corresponding system task structure diagram;
  • the second information representation module 30 is used to represent the system task-level dynamic data flow as a system function point dynamic data flow chart based on the fishbone diagram;
  • the set determination module 40 is used to establish a static set of each software function module of the system based on the system task composition structure diagram, and establish a dynamic set of each software function module of the system based on the system function point dynamic data flow chart;
  • the consistency determination module 50 is used to adjust the consistency of the software function modules in the static set and the software function modules in the dynamic set until the software function modules in the static set and the software function modules in the dynamic set The software function modules are consistent.
  • the modeling information obtained by the information acquisition module 10 is specifically: the system-level static information includes the name primitive of the system and the primitive of the system task;
  • the system task-level static information includes the name primitives of the system tasks and the name primitives of the software function modules;
  • the system task-level dynamic data flow includes the name graphic element of the system task, the name graphic element of the software, and the name graphic element of the software function module.
  • the first information representation module 20 specifically includes:
  • the static composition representation unit of the system is used to place the name graphic element of the system at the end point of the horizontal straight line in a fishbone diagram as the head of the fishbone, and to list the name graphic element of the system task in the diagonal segment of the fishbone diagram. above, forming a static composition structure diagram of the system;
  • the system task composition representation unit is used for each system task in the static composition structure diagram of the system, placing the name element of the system task at the end point of the horizontal straight line in a fishbone diagram as the fishbone head, and The name primitive column of the software function module used to realize the system task and the diagonal segment of the fishbone diagram form the system task composition structure diagram.
  • the second information representation module 30 specifically includes:
  • the first representation unit is used to represent the system task with a horizontal straight line with an arrow, and place the name graphic element of the system task at the end point of the horizontal straight line in a fishbone diagram as the fishbone;
  • the second representation unit is used to list the name primitives of the software on the diagonal segments in the corresponding fishbone diagram.
  • the corresponding fishbone diagram is based on the name primitives of the corresponding system tasks as the fish bone parts.
  • the third representation unit is used to list the name primitives of the software function modules on the diagonal segments in the corresponding bone diagram.
  • the corresponding fishbone diagram uses the corresponding name primitives of the software as the fish bone part. Fishbone diagram of.
  • the order of the name graphic elements of the system task, the name graphic element of the software, and the name graphic elements of the software function module is consistent with the execution order of the system
  • each software or the name elements of each functional module of the software connected by the dotted line part represent a parallel relationship in time series, that is, there is no order of input and output of its function points.
  • the input and output messages between each software functional module in the data flow chart are represented by numerical codes for the output messages between each software, and the final output of the system task is identified by the output message name.
  • the input messages between each software are identified by "the numerical code of the associated output message + the name of the input message”.
  • the initial input of the system task is identified by the name of the input message.
  • the set determination module 40 specifically includes:
  • a static set determination unit is used to establish a static set A k of each software function module of the system based on the system task composition structure diagram, where k represents the total number of software function modules in the static set;
  • the dynamic set determination unit is used to establish a dynamic set A n of each software function module of the system based on the dynamic data flow chart of the system function point, where n represents the total number of software function modules in the dynamic set.
  • the consistency determination module 50 specifically includes:
  • the weight assignment module is used to determine the weight of each software function module by using a weight determination model according to the priority ranking of each software function module in the static collection, wherein the formula of the weight determination model is expressed as:
  • a k represents a static set
  • m 1 , m 2 ,..., m k respectively represent the weight of each software function module in the static set
  • k represents the total number of software function modules in the static set
  • the dynamic function module is calibrated with the weight value assigned in the static set. If it does not exist in the static function module set with a weight value , then calibrated as the total number of software function modules in the static collection.
  • the consistency and completeness of the two sets can be determined through the weighted sum. If it is 1, it can be determined that the dynamic design function is consistent and complete with the static design function, and there are no redundant functions or missing functions; if it is greater than 1, it can be concluded that there must be redundant functions in the dynamic design function, and you need to go back to In the static design process, analyze and find the cause of the problem, modify the static design drawing or dynamic design drawing until it is 1; if it is less than 1, it can be concluded that there must be a missing function in the dynamic design function, and you need to go back to the static design process, analyze and Find the cause of the problem and modify the static design drawing or dynamic design drawing until it reaches 1.
  • the priorities of the software function modules are automatically or artificially sorted.
  • the automatic sorting of priorities can be understood as composing the structure diagram according to the priority of the software function modules during the construction process of the system task composition structure diagram. , those with high priority are placed in front, and those with low priority are placed in the back; artificial prioritization can be determined by expert evaluation methods, such as determining the priority of software function modules based on the number of times they appear in each system task. level, the more times it appears, the higher its priority; secondly, for software function modules that appear the same number of times, their priority is determined according to the order of appearance of the software function modules.
  • the consistency determination unit is used to adjust the consistency of the software function modules in the static set and the software function modules in the dynamic set according to the consistency determination model.
  • the formula of the consistency determination model is expressed as:
  • n and k are both positive integers, and n represents the total number of software function modules in the dynamic collection, Indicates the weight of each corresponding software function module in the static set;
  • the weight value m 1 of each software implementation module set in the static composition information is given to it. , m 2 ,..., m k , here we use express.
  • the total number k of software function modules in the static set is directly used as a penalty factor and assigned to the software function modules that exist in the dynamic set but do not exist in the static set.
  • the penalty factor is set to the total number of software function modules. The purpose is that when the weighted sum is greater than 1, it means that the dynamic design functions must have functions that are not included in the static design function set.
  • the extra functions may bring problems to the system. Greater risks, such as failures, crashes, etc., will inevitably bring redundancy to the system. Therefore, the handling of extra functions must be paid attention to and carefully.
  • the extra functions in dynamic design need to be analyzed to ensure that the system Design consistency.
  • the weight assignment unit is specifically used for:
  • the current common consistency and integrity verification is to judge whether the dynamic execution of all state diagrams can reach the end.
  • This dynamic verification method increases the complexity of the operation when used, and in order to achieve the dynamic verification effect, it is necessary to After doing a lot of work, once there is a problem in the operation process, rather than a design problem, it will also lead to the failure of all state diagrams to be executed to the end, which will bring difficulties in locating and troubleshooting the problem.
  • the advantage of using the convergent normalization idea is that firstly, the consistency of the elements of the dynamic design process set and the static design process set can be accurately determined. And it omits the additional operations to be performed in order to build dynamic execution, and avoids the problems and impacts caused by building dynamic execution operations. It greatly reduces the designer's workload and improves work efficiency.
  • each software function module in the static set is reduced in a 1/k ratio according to the priority order, and the weight of each software function module is determined as:
  • m i m 1 *1/k i-1 , i ⁇ 1, and i ⁇ k.
  • the system further includes an adjustment module, specifically used for:
  • first and second are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the quantity of indicated technical features. Therefore, features defined as “first” and “second” may explicitly or implicitly include at least one of these features.
  • “plurality” means at least two, such as two, three, etc., unless otherwise expressly and specifically limited.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Structural Engineering (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Civil Engineering (AREA)
  • Architecture (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开一种基于鱼骨模型的系统工程设计与验证方法及系统,方法包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流:基于鱼骨图,将系统级静态信息和系统任务级静态信息表示为系统静态组成结构图以及与系统静态组成结构图中每一系统任务对应的系统任务组成结构图:基于鱼骨图,将系统任务级动态数据流表示为系统功能点动态数据流程图:基于系统任务组成结构图和系统功能点动态数据流程图,建立系统各软件功能模块的静态集合和动态集合:对静态集合中的软件功能模块和动态集合中的软件功能模块进行一致性调整。本发明更容易上手、理解和使用,且保证了系统功能与实现系统任务各软件之间的完整性、一致性,有效提高系统可靠性。

Description

基于鱼骨模型的系统工程设计与验证方法及系统 技术领域
本发明涉及系统工程技术领域,具体涉及一种基于鱼骨模型的系统工程设计与验证方法及系统。
背景技术
随着人们所研制的工程系统越来越复杂,传统系统工程(Traditional Systems Engineering,TSE)越来越难以应对。传统系统工程中,系统工程活动的产出是一系列基于自然语言的文档,比如用户的需求、设计方案。这个文档又是″文本格式的″,所以也可以说传统的系统工程是″基于文本的系统工程″。在这种模式下,要把散落在各个论证报告、设计报告、分析报告、试验报告中的工程系统的信息集成关联在一起,费时费力且容易出错。而且随着信息技术的发展,现代系统的复杂程度和规模不断增加,传统的以文档为中心的系统工程由于无法保证数据一致性、更改困难、难以描述活动等诸多缺陷,已越来越无法满足工程的需要。
与此同时,以模型化为代表的信息技术也在快速发展,因此在需求牵引和技术推动下,基于模型的系统工程(Model-Based Systems Engineering,MBSE)应运而生,其将模型置于整个工程过程的中心,从需求阶段开始即通过模型的不断演化、迭代递增而实现产品的系统设计。相对于传统以文档为中心的系统工程,MBSE具有诸多优势,主要包括加强投资者与团队成员之间沟通,提高知识获取的能力,具有更好的信息追溯性,增强工件重用以及降低开发风险等。国际系统工程学会指出,模型驱动的系统设计方法“被寄予希望能够取代多年来被系统工程师所运用的文档中心方法,并最终被完整的集成进系统工程过程”。
基于模型的系统工程方法通过对问题某一方面的描述,将复杂问题简单化,实现降维;基于模型的系统工程方法通过多视角模型“联系”,对复杂问题给出清晰、全面的描述;基于模型的系统工程方法忽略了不重要细节从而揭示问题本质;基于模型的系统工程方法将问题以更容易观察和理解的形式表述出来,增强了知识获取、分析强度与完备性;基于模型的系统工程方法通过多视角模型的建立,实现了对知识的捕获以及联系信息的维护。从而解决了基于文档的需求工程方法对知识管理能力不足及辅助决策作用不足的问题。
目前,主流应用的MBSE方法共有6种,分别为Harmony、RUP、OOSEM、MagicGrid、OPM、Arcadia和Vitech。这些方法分别采用了UML、SysML、OPL、Arcadia和SDL系统建模语言进行建模。但是,实践证明,针对复杂系统设计,由于UML、SysML、OPL、Arcadia和SDL的语法过于复杂,对专业设计师掌握方法论和工具的熟练程度要求较高,设计师需耗费较长时间学习和理解。而且,实现系统工程方法的建模工具定制能力有限、图形繁多以及建模过程较为灵活,往往会导致工程师在架构设计时产生混淆与混乱。
相关技术中,公开号为CN 101847170 A的发明专利申请公开了一种系统工程的辅助设计或验证方法,包括:根据系统的规格说明或需求说明,将其逐层分解出更小的子系统;并分解出最小功能单元的元素;分析元素所含有的属性及对应的属性值,然后统计出系 统或子系统、元素及属性的标签、资源、资源特征及相互之间的结构信息;所有元素进行两两配对并对配对的元素之间的关系进行定义及所述关系的各方面进行描述,然后统计出配对、关系、方面的标签、资源、资源特征及相互之间的结构信息;将配对及其关系整合为部件后进行选择性重组及打包成组合流,并统计出部件、作为选择条件的约束、组合流及其内部成分的标签、资源、资源特征及相互之间的结构信息。以此实现对系统的全面完整分析。此方法根据系统的规格说明或需求说明,分解出更小的子系统和最小功能单元元素,而文字表述内容可能有二义性,因此分解出的最小功能单元元素的正确性不能保证。其次,对于系统设计阶段,无论是该方法是自动化实现还是需要设计师人工参与,其分解、分析和统计的过程都过于复杂,在系统设计阶段所能达到的功能的抽象层次,其所分析元素所含有的属性及对应的属性值的合理性会大打折扣。且如此复杂频繁的分解、分析、统计、一维分析比较和二维分析比较,对系统的运行效率也是很大的考验。最后,对于该方法的实例化流程验证,将设计因素模拟从开始到结束的实例化仿真执行,不仅增加了系统运行负担,且再复杂的仿真,都无法替代和复现真实情况,然而辅助设计得这么复杂,失去了辅助的意义。
公开号为CN 112560213 A的发明专利申请公开了一种基于模型系统工程和超网络理论的体系建模方法及系统,所述基于模型系统工程和超网络理论的体系建模系统包括:应用场景确定模块、体系结构确定模块、体系结构验证模块、指标确定模块、权重确定模块、中央控制模块、体系结构模型修正模块、数据采集模块、数据处理模块、数据引用模块、体系模型输出模块以及模型转换输出模块。通过将构建的体系模型组转换为超网络模型,分析各个视角间的体系模型映射关系,对已生成的体系超网络模型组进行组合,最终生成体系结构的多层超网络模型,便于运用数学工具量化分析体系结构的指标,通过从上到下的梳理和从下到上的集成,能够保证所梳理数据的完整性和有效性。此方法针对特定领域,在使用时,系统的输入是建立应用场景,然而建立应用场景的形式,需要给出哪些要素,并未给出具体定义,不易于实施者和使用者理解和使用,造成操作信息的混乱和错误。其次,需要建立场景库和体系结构模型库,需要了解对应的体系结构模型的属性和数量,因此建立两库,需要大量的专业化工作,普适性不强。
发明内容
本发明所要解决的技术问题在于如何提供一种简单准确的基于鱼骨模型的系统工程设计与验证方法及系统。
本发明通过以下技术手段实现解决上述技术问题的:
一方面,本发明提出了一种基于鱼骨模型的系统工程设计与验证方法,所述方法包括:
获取建模信息,所述建模信息包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流;
基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
本发明采用基于鱼骨模型的系统工程方法,相较于现有MBSE方法的学习门槛的问题,工程人员更容易上手、理解和使用。而且基于鱼骨模型的系统功能静态组成图、各系统功能的静态组成图和基于鱼骨模型的系统功能点动态数据流程图,可以使系统的结构简单、清晰,并可虚拟实际系统,模拟使用场景,系统及其实现软件的设计进行有效地验证,有利于尽早暴露发现系统的设计问题。通过对基于鱼骨模型的各系统功能的动态数据流与各系统功能静态组成结构图的比对,保证了系统功能与实现系统任务的各软件之间的完整性、一致性及追溯的充分必要性,加强对系统数据流的验证,有利于软件问题的及早发现,可以有效地提高系统的可靠性。
进一步地,所述系统级静态信息包括系统的名称图元和系统任务的图元;
所述系统任务级静态信息包括所述系统任务的名称图元和软件功能模块的名称图元;
所述系统任务级动态数据流包括所述系统任务的名称图元、软件的名称图元和软件功能模块的名称图元。
进一步地,所述基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图,包括:
将所述系统的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将所述系统任务的名称图元列于该鱼骨图的斜线段上,形成所述系统静态组成结构图;
对于所述系统静态组成结构图中的每一系统任务,将该系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将用于实现所述系统任务的软件功能模块的名称图元列与该鱼骨图的斜线段上,形成所述系统任务组成结构图。
进一步地,所述基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图,包括:
用一条横向带箭头的直线表示所述系统任务,将所述系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部;
将所述软件的名称图元列在相应的鱼骨图中的斜线段上,该相应的鱼骨图为以相应的所述系统任务的名称图元为鱼骨头部的的鱼骨图;
将所述软件功能模块的名称图元列在相应的骨图中的斜线段上,该相应的鱼骨图为以相应的所述软件的名称图元为鱼骨头部的的鱼骨图。
进一步地,所述系统任务的名称图元、所述软件的名称图元和所述软件功能模块的名称图元的先后顺序与所述系统的执行顺序一致;
在所述软件或所述软件功能模块在时序上为并列关系时,连接所述软件或连接所述软件功能模块的横线带箭头直线采用虚线表示。
进一步地,所述基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合,包括:
基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合Ak,k表示静 态集合中软件功能模块的总数量;
基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合An,n表示动态集合中软件功能模块的总数量。
进一步地,所述对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,包括:
根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,其中,所述权重判定模型的公式表示为:
mi∈Ak,且m1>m2>...>mk
其中,Ak表示静态集合,m1,m2,...,mk分别表示所述静态集合中各软件功能模块的权重,k表示所述静态集合中软件功能模块的总数量;
按照一致性判定模型,对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,所述一致性判定模型的公式表示为:


其中,n,k均为正整数,n表示所述动态集合中软件功能模块的总数量,表示所述静态集合中各相应软件功能模块的权重;
在满足Z=1时,确定所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,进行系统工程级评审。
进一步地,所述根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,包括:
基于收敛思想,将所述静态集合中各软件功能模块按照优先级次序以1/k比例递减,确定各所述软件功能模块的权重为:
m1=(k-1)*kk-1/kk-1,i=1
mi=m1*1/ki-1,i≠1,且i≤k。
进一步地,所述方法还包括:
在Z>1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z≤1;
在Z<1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z=1。
此外,本发明还提出了一种基于鱼骨模型的系统工程设计与验证系统,所述系统包括:
信息获取模块,用于获取建模信息,所述建模信息包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流;
第一信息表示模块,用于基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
第二信息表示模块,用于基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
集合确定模块,用于基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
一致性判定模块,用于对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
本发明的优点在于:
(1)本发明采用基于鱼骨模型的系统工程方法,相较于现有MBSE方法的学习门槛的问题,工程人员更容易上手、理解和使用。而且基于鱼骨模型的系统功能静态组成图、各系统功能的静态组成图和基于鱼骨模型的系统功能点动态数据流程图,可以使系统的结构简单、清晰,并可虚拟实际系统,模拟使用场景,系统及其实现软件的设计进行有效地验证,有利于尽早暴露发现系统的设计问题。通过对基于鱼骨模型的各系统功能的动态数据流与各系统功能静态组成结构图的比对,保证了系统功能与实现系统任务的各软件之间的完整性、一致性及追溯的充分必要性,加强对系统数据流的验证,有利于软件问题的及早发现,可以有效地提高系统的可靠性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1是本发明中基于鱼骨模型的系统工程设计与验证方法的流程示意图;
图2是本发明中基于模型的系统功能静态组成结构示意图;
图3是本发明中各系统功能的静态组成结构示意图;
图4是本发明中基于系统功能点的动态数据流程示意图;
图5是本发明中图标含义规定集示意图;
图6是本发明中链路通信系统级静态组成结构示意图;
图7是本发明中链路通信系统任务静态组成结构示意图;
图8是本发明中链路通信系统任务的动态数据流程示意图;
图9是本发明中停车门禁系统静态组成示意图;
图10是本发明中停车门禁系统任务静态组成结构示意图;
图11是本发明中停车门禁系统任务的动态数据流程示意图;
图12是本发明中基于鱼骨模型的系统工程设计与验证系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例, 对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,本发明一实施例提出了一种基于鱼骨模型的系统工程设计与验证方法,所述方法包括以下步骤:
S10、获取建模信息,所述建模信息包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流;
S20、基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
S30、基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
S40、基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
S50、对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
需要说明的是,本发明采用基于鱼骨模型的系统工程方法,相较于现有MBSE方法的学习门槛的问题,工程人员更容易上手、理解和使用。而且基于鱼骨模型的系统功能静态组成图、各系统功能的静态组成图和基于鱼骨模型的系统功能点动态数据流程图,可以使系统的结构简单、清晰,并可虚拟实际系统,模拟使用场景,系统及其实现软件的设计进行有效地验证,有利于尽早暴露发现系统的设计问题。通过对基于鱼骨模型的各系统功能的动态数据流与各系统功能静态组成结构图的比对,保证了系统功能与实现系统任务的各软件之间的完整性、一致性及追溯的充分必要性,加强对系统数据流的验证,有利于软件问题的及早发现,可以有效地提高系统的可靠性。
在一实施例中,所述步骤S10中,所述系统级静态信息包括系统的名称图元和系统任务的图元;
所述系统任务级静态信息包括所述系统任务的名称图元和软件功能模块的名称图元;
所述系统任务级动态数据流包括所述系统任务的名称图元、软件的名称图元和软件功能模块的名称图元。
需要说明的是,本实施例中的建模信息可以为自开发工具中的图元。采用Qt的GraphicsView框架结构提供基于图元的模型视图编程,该框架包括三个主要类,分别为QGraphicsScene场景类、QGraphicsView视图类和QGraphItem图元类,一个场景可以通过多个视图表现,一个场景包括多个几何图形,使用Qt的GraphicsView框架结构实现定义和生成系统的图元。
在一实施例中,所述步骤S20,包括以下步骤:
S21、将所述系统的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将所述系统任务的名称图元列于该鱼骨图的斜线段上,形成所述系统静态组成结构图;
S22、对于所述系统静态组成结构图中的每一系统任务,将该系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将用于实现所述系统任务的软件功能模块的名称图元列与该鱼骨图的斜线段上,形成所述系统任务组成结构图。
需要说明的是,,基于鱼骨模型建立系统功能及其软件组成的各要素信息数据,其统一架构可表示为,软件的名称图元以一条横向直线表示,软件功能模块的名称图元以连接到软件的名称图元的横向直线上的斜线段表示。具体建模如下:
参照图2,所述系统级静态信息由系统和系统需要完成的任务组成,其系统的名称图元放在鱼骨的头部作为横向直线的终点,将系统需要完成的系统任务的名称图元列在斜线段表示的鱼骨上。
参照图3,所述系统任务级静态信息由系统需要完成的系统任务和组成该系统的各软件及其功能组成,其系统任务的名称图元放在鱼骨的头部作为横向直线的终点,将该任务所需要的软件及其实现的某方面功能名称图元列在斜线段表示的鱼骨上。
在一实施例中,所述步骤S30,包括以下步骤:
S31、用一条横向带箭头的直线表示所述系统任务,将所述系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部;
S32、将所述软件的名称图元列在相应的鱼骨图中的斜线段上,该相应的鱼骨图为以相应的所述系统任务的名称图元为鱼骨头部的的鱼骨图;
S33、将所述软件功能模块的名称图元列在相应的骨图中的斜线段上,该相应的鱼骨图为以相应的所述软件的名称图元为鱼骨头部的的鱼骨图。
需要说明的是,参照图4,基于鱼骨模型将系统任务级动态数据流表示为系统功能点动态数据流程图,其统一架构可表示为:系统需要完成的任务以一条自左向右指向的横向带箭头直线表示;组成该系统的各软件由横向带箭头直线上的点斜向引向该直线的带箭头的线段表示;实现软件的各功能模块由组成该系统的软件线段外一点斜向引向该线段的带箭头的线段表示。将系统任务的名称图元放在鱼骨的头部作为横向直线的终点;将所需软件的名称图元列在斜线段表示的以系统任务的名称图元为头的鱼骨上;将软件功能模块的名称图元列在斜线段表示的以软件的名称图元为头的鱼骨上。
在一实施例中,所述系统任务的名称图元、所述软件的名称图元和所述软件功能模块的名称图元的先后顺序与所述系统的执行顺序一致;
在所述软件或所述软件功能模块在时序上为并列关系时,连接所述软件或连接所述软件功能模块的横线带箭头直线采用虚线表示。
需要说明的是,虚线部分所连接的各软件的名称图元或软件的各功能模块的名称图元,表示时序上的并列关系,即其功能点的输入和输出并无先后之分。对于系统任务动态数据流程图中各软件功能模块之间的输入输出报文,对于各软件之间的输出报文,以数字代号表示,而系统任务的最终输出以输出报文名称来标识。各软件之间的输入报文,由“关联输出报文的数字代号+输入报文名称”来标识,系统任务最开始的输入以输入报文名称来标识。
在一实施例中,所述步骤S40,包括以下步骤:
基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合Ak,k表示静态集合中软件功能模块的总数量;
基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合An,n表示动态集合中软件功能模块的总数量。
需要说明的是,这里的k和n均表示正整数。
在一实施例中,所述步骤S50,包括以下步骤:
S51、根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,其中,所述权重判定模型的公式表示为:
mi∈Ak,且m1>m2>...>mk
其中,Ak表示静态集合,m1,m2,...,mk分别表示所述静态集合中各软件功能模块的权重,k表示所述静态集合中软件功能模块的总数量;
需要说明的是,该处的软件功能模块的优先级是自动或人为排序的,优先级的自动排序可以理解为在系统任务组成结构图的构建过程中,按照软件功能模块优先级的高低进行构图,优先级高的放置在前,优先级低的放置在后;人为的优先级排序可以是通过专家评估方法确定优先级,比如根据软件功能模块在各系统任务出现的次数确定软件功能模块的优先级,出现次数越多,其优先级越高;其次,对于出现次数相同的软件功能模块,则根据软件功能模块的出现次序,确定其优先级。具体的,若软件功能模块出现在不同的系统任务鱼骨图的话,哪个系统任务鱼骨图先出现,就认定其优先级高;若软件功能模块出现在同一系统任务鱼骨图的话,则时序次序在前面的软件功能模块,则认定其优先级高。
S52、按照一致性判定模型,对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,所述一致性判定模型的公式表示为:


其中,n,k均为正整数,n表示所述动态集合中软件功能模块的总数量,表示所述静态集合中各相应软件功能模块的权重;
需要说明的是,对于动态集合中的软件功能模块存在于静态集合中的,即mi∈Ak且i≤n,则赋予其在静态组成信息中设置的各软件实现模块的权重值m1,m2,...,mk,这里用表示。对于动态集合中的软件功能模块不存在于静态集合中的,直接将静态集合中软件功能模块的总数量k作为惩罚因子,赋值给存在动态集合中但不存在与静态集合中的软件功能模块。将惩罚因子设置为软件功能模块总数量值,其目的在于,在加权和大于1时,说明动态设计的功能中一定出现了静态设计功能集合中没有的功能,多出的功能,可能带给系统更大的风险,如故障、崩溃等,也必然给系统带来了冗余,因此对多出功能的处理,一定要重视和仔细,需要对动态设计中多出的功能进行分析,以确保系统设计的一致性。
S53、在满足Z=1时,确定所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,进行系统工程级评审。
需要说明的是,当Z=1时,表示系统功能逻辑设计完整、一致,可进行系统工程级 评审,评审通过后可进行系统详细设计及实现工作。
本实施例中,对静态集合中各功能模块设置权重值后再与动态集合中的各功能模块进行比较,才能判断出静态设计的各功能模块与动态设计的各功能模块的一致性。当动态集合中的功能模块,已存在于具有权重值的静态功能模块集合中,则给此动态功能模块标定为静态集合中赋予的权重值,如果不存在于具有权重值的静态功能模块集合中,则标定为静态集合中软件功能模块的总数量值。
如此,即可通过加权和判定两个集合的一致性和完整性。若为1,则可判定动态设计的功能与静态设计功能一致且完整,未出现多余功能,也未缺失功能;若大于1,则可断定动态设计功能中一定出现了多余功能,则需要回溯到静态设计过程,分析和查找问题原因,修改静态设计图或者动态设计图,直至为1;若小于1,则可断定动态设计功能中一定出现了缺失功能,则需要回溯到静态设计过程,分析和查找问题原因,修改静态设计图或者动态设计图,直至为1。
在一实施例中,所述步骤S51,具体为:
基于收敛归一化思想,将所述静态集合中各软件功能模块按照优先级次序以1/k比例递减,确定各所述软件功能模块的权重为:
m1=(k-1)*kk-1/kk-1,i=1
mi=m1*1/ki-1,i≠1,且i≤k。
需要说明的是,按照收敛思想,可将其关键程度按照优先级次序以1/k比例递减,即m1权重最高,其关键程度因子值为(k-1)*kk-1/kk-1,mk权重最低,其关键程度因子值为m1*1/kk-1,其他mi∈A的mi的权重计算公式为m1*1/ki-1;规定k=1时,则m1=1。
需要说明的是,目前通常的一致和完整性验证,是通过观察所有状态图的动态执行是否能到达结束来判断,此种动态验证方法,在使用时增加了操作的复杂度,且当为了达到动态验证效果,需要做很多工作,一旦操作过程出现问题,而非设计问题,也将导致所有状态图无法执行到结束的效果,对问题的定位和排查带来了困难。采用收敛归一化思想和的好处在于,首先可以准确的判定动态设计过程集合和静态设计过程集合要素的一致性。且省略了为了构建动态执行所要执行的额外操作,避免了由构建动态执行操作,所导致的问题及影响。大大减轻了设计师的工作量,提高了工作效率。
在一实施例中,所述方法还包括以下步骤:
在Z>1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z≤1;
在Z<1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z=1。
需要说明的是,当Z>1时,表示系统功能逻辑设计不合理,即各系统功能的动态数据流信息中的软件功能,并给出可能的出错点元素,即An-{An∩Ak}集合中的元素,即信息元素中只在各系统功能的动态数据流信息中出现,而未在各系统任务静态组成信息中出现的元素。根据争议点进行人工处理,更改各系统功能的动态数据流信息或各系统功能的动态数据流信息,直至Z≤1为止;当Z<1时,表示系统功能逻辑设计不合理,即各系统功能的动态数据流信息中的软件功能,并给出各系统功能的动态数据流信息中缺少的信息元素,即Ak-An集合中的元素,即信息元素中只在各系统任务静态组成信息中出现,而未在各系统功能 的动态数据流信息中出现的元素。根据争议点进行人工处理,更改各系统功能的动态数据流信息或各系统功能的动态数据流信息,直至Z=1为止。
本实施例设计的是轻量化、通用性的系统工程设计方法,系统设计人员只需按照本专利的方法,在基于鱼骨模型上顺次建立系统静态组成结构示意图、实现系统的系统功能静态组成结构图和基于系统功能点的动态数据流图即可,符合开发流程和设计思想,未增加额外工作。针对此问题,通过结合工程上经常使用的鱼骨图作为载体,对其应用含义进行适应性改造,对其具体表现形式及含义进行了严格的定义,从而实现了适用于系统工程设计各种情况的基于鱼骨的模型集。使概念和理解得到了统一,方便后续数据处理的实现。本专利通过静态分析方式,在不增加额外工作的情况下,在基于鱼骨模型上顺次建立系统静态组成结构示意图、实现系统的系统功能静态组成结构图和基于系统功能点的动态数据流图即可分析出不一致和不完整问题,减少了工作量。且本实施例提出的方法可在系统工程设计过程阶段进行使用实施。
应当理解的是,本实施提出的基于鱼骨模型的系统工程设计与验证方法与MBSE的应用场景相同,以下通过链路通信系统工程的设计和停车门禁系统的设计这两个具体实例进行说明,设计与验证步骤包括:
实施例1:
(1)在自开发工具上,构建链路通信系统级静态组成结构示意图,如图6所示,其图标含义规定集示意图如图5所示。其中链路通信系统由链路通信任务组成,其系统名称(即链路通信系统)放在鱼骨的头部作为横向直线的终点,将系统任务名称(链路通信功能)列在斜线段表示的鱼骨上;其中系统名称图标以一条横向直线表示,系统任务名称图标以连接到系统名称图标的横向直线上的斜线段表示;
(2)在自开发工具上,构建链路通信系统任务静态组成结构示意图,如图7所示。其中链路通信系统任务图由实现该系统任务的各软件及软件功能组成,其链路通信系统任务名称放在鱼骨的头部作为横向直线的终点,将实现该系统任务的各软件名称及软件功能名称列在斜线段表示的鱼骨上。链路通信系统任务组成结构图由各软件名称(监控软件、数据管理软件、控制软件和数据处理软件)和软件功能点名称(监控软件的链路功能、数据管理软件的链路功能、控制软件的链路功能和数据处理软件的链路功能)组成,其链路通信系统任务名称放在鱼骨的头部作为横向直线的终点,将软件功能点名称列在斜线段表示的鱼骨上;
(3)在自开发工具上,构建链路通信系统任务的动态数据流程示意图,如图8所示。链路通信系统任务的动态数据流程图标包括系统任务名称(链路通信系统任务)、各软件名称(监控子软件、数据管理软件、控制软件和数据处理软件)、软件功能点名称(监控软件的链路功能、数据管理软件的链路功能、控制软件的链路功能和数据处理软件的链路功能)和软件功能点输入输出(监控软件输入:链路询问;数据管理软件输入:链路询问;控制软件输入:链路询问和信号处理软件输入:链路询问;以及监控软件输出:链路应答;数据管理软件输出:链路应答;控制软件输出:链路应答和信号处理软件输出:链路应答)。其中,系统任务名称(链路通信系统任务)图标以一条自左向右指向的横向带箭头直线表示。各软件名称(监控软件、数据管理软件、控制软件和数据处理软件)图标由直线上的点斜向引向直线的线段表示,软件功能点名称(监控软件的链路功能、数据管理软件的链路功能、控制软件的 链路功能和数据处理软件的链路功能)图标由各软件名称图标箭头线段上的点引向各软件名称图标的箭头线段表示。各软件功能点输入(监控软件链路功能输入:链路询问;数据管理软件链路功能输入:链路询问;控制软件链路功能输入:链路询问和信号处理软件链路功能输入:链路询问)图标以引向软件功能点名称图标的带箭头线段表示。软件功能点输出图标(监控软件链路功能输出:链路应答;数据管理软件链路功能输出:链路应答;控制软件链路功能输出:链路应答和信号处理软件链路功能输出:链路应答)以引出软件功能点名称图标的带箭头线段表示。另外,系统任务名称图标直线中的虚线部分表示虚线上所连接的各软件功能点处于时序上的并列关系,即其功能点的输入和输出并无先后之分。
(4)根据抽取的系统任务静态组成信息,自动完成各软件实现模块的优先级排序,并根据优先级次序,确立各软件实现模块的权重设置。其中,自动各软件模块优先级排序实现方法,根据建立的各系统任务的静态组成信息,建立系统各软件功能模块静态集合A4={监控软件的链路功能,控制软件的链路功能,数据管理软件的链路功能,数据处理软件的链路功能}。因为各软件功能点在鱼骨模型中出现次数相同,因此根据软件功能的出现次序,确定其优先级,并得到各软件功能点的权值:m监控软件的链路功能=192/255、m控制软件的链路功能=48/255、m数据管理软件的链路功能=12/255、m数据处理软件的链路功能=3/255。
(5)根据抽取的各系统功能的动态数据流信息,进行逻辑正确性判定。
按照原则,对其进行将按各系统功能的动态数据流信息中的系统功能权值累加,其值为Z=1,因此系统功能与实现系统任务的各软件之间满足了的完整性和一致性要求,系统设计逻辑合理,影响范围可控。
实施例2
以下通过停车门禁系统的设计这一具体实例进行说明,设计与验证步骤包括:
(1)在自开发工具上,构建停车门禁系统级静态组成结构示意图,如图9所示。其中停车门禁系统由进入控制和离开控制组成,其系统名称(即停车门禁系统)放在鱼骨的头部作为横向直线的终点,将系统任务名称(进入控制功能和离开控制功能)列在斜线段表示的鱼骨上;其中系统名称图标以一条横向直线表示,系统任务名称图标以连接到系统名称图标的横向直线上的斜线段表示;
(2)在自开发工具上,构建停车门禁系统任务静态组成结构示意图,如图10所示。其中进入控制系统任务图由实现该系统任务的各软件及软件功能组成,其进入控制系统任务名称放在鱼骨的头部作为横向直线的终点,将实现该系统任务的各软件名称及软件功能名称列在斜线段表示的鱼骨上。进入控制系统任务组成结构图由各软件名称(监视软件和控制软件)和软件功能点名称(访客到达识别功能、打开门禁功能和提示车位已满功能)组成,其进入控制系统任务名称放在鱼骨的头部作为横向直线的终点,将软件功能点名称列在斜线段表示的鱼骨上;离开控制系统任务组成结构图由各软件名称(监视软件和控制软件)和软件功能点名称(访客到达识别功能、和打开门禁功能)组成,其离开控制系统任务名称放在鱼骨的头部作为横向直线的终点,将软件功能点名称列在斜线段表示的鱼骨上;
(3)在自开发工具上,构建停车门禁系统任务的动态数据流程示意图,如图10所示。停车门禁系统任务的动态数据流程图标包括系统任务名称(进入控制系统任务和离开 控制系统)、各软件名称(监视软件和控制软件)、软件功能点名称(访客到达识别功能、打开门禁功能和提示车位已满功能)和软件功能点输入输出(监视软件输入:扫描到访客到达;控制软件输入:访客到达信息;以及监控软件输出:访客到达信息;控制软件输出:打开门禁或提示已满)。其中,系统任务名称(进入控制系统任务和离开控制系统)图标以一条自左向右指向的横向带箭头直线表示。各软件名称(监视软件和控制软件)图标由直线上的点斜向引向直线的线段表示,软件功能点名称(访客到达识别功能、打开门禁功能和提示车位已满功能)图标由各软件名称图标箭头线段上的点引向各软件名称图标的箭头线段表示。各软件功能点输入(监视软件输入:扫描到访客到达;控制软件输入:访客到达信息)图标以引向软件功能点名称图标的带箭头线段表示。软件功能点输出图标(监控软件输出:访客到达信息;控制软件输出:打开门禁或提示已满)以引出软件功能点名称图标的带箭头线段表示。另外,系统任务名称图标直线中的虚线部分表示虚线上所连接的各软件功能点处于时序上的并列关系,即其功能点的输入和输出并无先后之分。
(4)根据抽取的系统任务静态组成信息,自动完成各软件实现模块的优先级排序,并根据优先级次序,确立各软件实现模块的权重设置。其中,自动各软件模块优先级排序实现方法,根据建立的各系统任务的静态组成信息,建立系统各软件功能模块静态集合A4={监视软件的访客到达识别功能,控制软件的余位识别功能,控制软件的有余位时打开门禁功能,控制软件的无余位时提示已满功能,控制软件的打开门禁功能}。因为各软件功能点在鱼骨模型中出现次数相同,因此根据软件功能的出现次序,确定其优先级,并得到各软件功能点的权值:m监视软件的访客到达识别功能=2500/3124、m控制软件的余位识别功能=500/3124、m控制软件的有余位时打开门禁功能=100/3124、m控制软件的无余位时提示已满功能=20/3124、m控制软件的打开门禁功能=4/3124。
(5)根据抽取的各系统功能的动态数据流信息,进行逻辑正确性判定。按照原则,对其进行将按各系统功能的动态数据流信息中的系统功能权值累加,其值为Z=1,因此系统功能与实现系统任务的各软件之间满足了的完整性和一致性要求,系统设计逻辑合理,影响范围可控。
本实施例通过基于系统任务的动态数据流分析、系统任务静态组成结构分析和系统静态组成结构分析,解决了系统、实现系统任务的各软件之间追溯关联的随意性,保证了系统功能与实现系统任务的各软件之间的完整性和一致性;通过对基于鱼骨模型的各系统功能的动态数据流与各系统功能静态组成结构图的比对,可以对系统及其实现软件的设计进行有效地验证,确保了设计的严谨性和无二义性,结构合理,易于日后维护和升级。
而且采用基于鱼骨模型的系统工程方法,解决了现有MBSE方法的学习门槛,使工程人员更容易上手、理解和使用。基于鱼骨模型的系统功能静态组成图、各系统功能的静态组成图和基于鱼骨模型的系统功能点动态数据流程图,可以使系统的结构简单、清晰,并可虚拟实际系统,模拟使用场景,对系统设计逻辑及影响进行验证,有利于尽早暴露发现系统的设计问题。
此外,参照图12,本发明另一实施例还提出了一种基于鱼骨模型的系统工程设计与验证系统,所述系统包括:
信息获取模块10,用于获取建模信息,所述建模信息包括系统级静态信息、系统任 务级静态信息以及系统任务级动态数据流;
第一信息表示模块20,用于基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
第二信息表示模块30,用于基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
集合确定模块40,用于基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
一致性判定模块50,用于对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
在一实施例中,所述信息获取模块10获取的建模信息具体为:所述系统级静态信息包括系统的名称图元和系统任务的图元;
所述系统任务级静态信息包括所述系统任务的名称图元和软件功能模块的名称图元;
所述系统任务级动态数据流包括所述系统任务的名称图元、软件的名称图元和软件功能模块的名称图元。
在一实施例中,所述第一信息表示模块20,具体包括:
系统静态组成表示单元,用于将所述系统的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将所述系统任务的名称图元列于该鱼骨图的斜线段上,形成所述系统静态组成结构图;
系统任务组成表示单元,用于用于对于所述系统静态组成结构图中的每一系统任务,将该系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将用于实现所述系统任务的软件功能模块的名称图元列与该鱼骨图的斜线段上,形成所述系统任务组成结构图。
在一实施例中,所述第二信息表示模块30,具体包括:
第一表示单元,用于用一条横向带箭头的直线表示所述系统任务,将所述系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部;
第二表示单元,用于将所述软件的名称图元列在相应的鱼骨图中的斜线段上,该相应的鱼骨图为以相应的所述系统任务的名称图元为鱼骨头部的的鱼骨图;
第三表示单元,用于将所述软件功能模块的名称图元列在相应的骨图中的斜线段上,该相应的鱼骨图为以相应的所述软件的名称图元为鱼骨头部的的鱼骨图。
在一实施例中,所述所述系统任务的名称图元、所述软件的名称图元和所述软件功能模块的名称图元的先后顺序与所述系统的执行顺序一致;
在所述软件或所述软件功能模块在时序上为并列关系时,连接所述软件或连接所述软件功能模块的横线带箭头直线采用虚线表示。
需要说明的是,虚线部分所连接的各软件的名称图元或软件的各功能模块的名称图元,表示时序上的并列关系,即其功能点的输入和输出并无先后之分。对于系统任务动态 数据流程图中各软件功能模块之间的输入输出报文,对于各软件之间的输出报文,以数字代号表示,而系统任务的最终输出以输出报文名称来标识。各软件之间的输入报文,由“关联输出报文的数字代号+输入报文名称”来标识,系统任务最开始的输入以输入报文名称来标识。
在一实施例中,所述集合确定模块40,具体包括:
静态集合确定单元,用于基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合Ak,k表示静态集合中软件功能模块的总数量;
动态集合确定单元,用于基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合An,n表示动态集合中软件功能模块的总数量。
在一实施例中,所述一致性判定模块50,具体包括:
权重赋值模块,用于根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,其中,所述权重判定模型的公式表示为:
mi∈Ak,且m1>m2>...>mk
其中,Ak表示静态集合,m1,m2,...,mk分别表示所述静态集合中各软件功能模块的权重,k表示所述静态集合中软件功能模块的总数量;
对静态集合中各功能模块设置权重值后再与动态集合中的各功能模块进行比较,才能判断出静态设计的各功能模块与动态设计的各功能模块的一致性。当动态集合中的功能模块,已存在于具有权重值的静态功能模块集合中,则给此动态功能模块标定为静态集合中赋予的权重值,如果不存在于具有权重值的静态功能模块集合中,则标定为静态集合中软件功能模块的总数量值。
如此,即可通过加权和判定两个集合的一致性和完整性。若为1,则可判定动态设计的功能与静态设计功能一致且完整,未出现多余功能,也未缺失功能;若大于1,则可断定动态设计功能中一定出现了多余功能,则需要回溯到静态设计过程,分析和查找问题原因,修改静态设计图或者动态设计图,直至为1;若小于1,则可断定动态设计功能中一定出现了缺失功能,则需要回溯到静态设计过程,分析和查找问题原因,修改静态设计图或者动态设计图,直至为1。
需要说明的是,该处的软件功能模块的优先级是自动或人为排序的,优先级的自动排序可以理解为在系统任务组成结构图的构建过程中,按照软件功能模块优先级的高低进行构图,优先级高的放置在前,优先级低的放置在后;人为的优先级排序可以是通过专家评估方法确定优先级,比如根据软件功能模块在各系统任务出现的次数确定软件功能模块的优先级,出现次数越多,其优先级越高;其次,对于出现次数相同的软件功能模块,则根据软件功能模块的出现次序,确定其优先级。具体的,若软件功能模块出现在不同的系统任务鱼骨图的话,哪个系统任务鱼骨图先出现,就认定其优先级高;若软件功能模块出现在同一系统任务鱼骨图的话,则时序次序在前面的软件功能模块,则认定其优先级高。
一致性判定单元,用于按照一致性判定模型,对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,所述一致性判定模型的公式表示为:


其中,n,k均为正整数,n表示所述动态集合中软件功能模块的总数量,表示所述静态集合中各相应软件功能模块的权重;
需要说明的是,对于动态集合中的软件功能模块存在于静态集合中的,即mi∈Ak且i≤n,则赋予其在静态组成信息中设置的各软件实现模块的权重值m1,m2,...,mk,这里用表示。对于动态集合中的软件功能模块不存在于静态集合中的,直接将静态集合中软件功能模块的总数量k作为惩罚因子,赋值给存在动态集合中但不存在与静态集合中的软件功能模块。将惩罚因子设置为软件功能模块总数量值,其目的在于,在加权和大于1时,说明动态设计的功能中一定出现了静态设计功能集合中没有的功能,多出的功能,可能带给系统更大的风险,如故障、崩溃等,也必然给系统带来了冗余,因此对多出功能的处理,一定要重视和仔细,需要对动态设计中多出的功能进行分析,以确保系统设计的一致性。
确定单元,用于在满足Z=1时,确定所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,进行系统工程级评审。
需要说明的是,当Z=1时,表示系统功能逻辑设计完整、一致,可进行系统工程级评审,评审通过后可进行系统详细设计及实现工作。
在一实施例中,所述权重赋值单元,具体用于:
目前通常的一致和完整性验证,是通过观察所有状态图的动态执行是否能到达结束来判断,此种动态验证方法,在使用时增加了操作的复杂度,且当为了达到动态验证效果,需要做很多工作,一旦操作过程出现问题,而非设计问题,也将导致所有状态图无法执行到结束的效果,对问题的定位和排查带来了困难。采用收敛归一化思想和的好处在于,首先可以准确的判定动态设计过程集合和静态设计过程集合要素的一致性。且省略了为了构建动态执行所要执行的额外操作,避免了由构建动态执行操作,所导致的问题及影响。大大减轻了设计师的工作量,提高了工作效率。
基于收敛思想,将所述静态集合中各软件功能模块按照优先级次序以1/k比例递减,确定各所述软件功能模块的权重为:
m1=(k-1)*kk-1/kk-1,i=1
mi=m1*1/ki-1,i≠1,且i≤k。
需要说明的是,按照收敛思想,可将其关键程度按照优先级次序以1/k比例递减,即m1权重最高,其关键程度因子值为(k-1)*kk-1/kk-1,mk权重最低,其关键程度因子值为m1*1/kk-1,其他mi∈A的mi的权重计算公式为m1*1/ki-1;规定k=1时,则m1=1。
在一实施例中,所述系统还包括调整模块,具体用于:
在Z>1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z≤1;
在Z<1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z=1。
需要说明的是,当Z>1时,表示系统功能逻辑设计不合理,即各系统功能的动态数据流信息中的软件功能,并给出可能的出错点元素,即An-{An∩Ak}集合中的元素,即信息元素中只在各系统功能的动态数据流信息中出现,而未在各系统任务静态组成信息中出现的元素。根据争议点进行人工处理,更改各系统功能的动态数据流信息或各系统功能的动态数据流信息,直至Z≤1为止;当Z<1时,表示系统功能逻辑设计不合理,即各系统功能的动态数据流信息中的软件功能,并给出各系统功能的动态数据流信息中缺少的信息元素,即Ak-An集合中的元素,即信息元素中只在各系统任务静态组成信息中出现,而未在各系统功能的动态数据流信息中出现的元素。根据争议点进行人工处理,更改各系统功能的动态数据流信息或各系统功能的动态数据流信息,直至Z=1为止。
需要说明的是,本发明所述基于鱼骨模型的系统工程设计与验证系统的其他实施例或具有实现方法可参照上述各方法实施例,此处不再赘余。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

  1. 一种基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述方法包括:
    获取建模信息,所述建模信息包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流;
    基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
    基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
    基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
    对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
  2. 如权利要求1所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述系统级静态信息包括系统的名称图元和系统任务的名称图元;
    所述系统任务级静态信息包括所述系统任务的名称图元和软件功能模块的名称图元;
    所述系统任务级动态数据流包括所述系统任务的名称图元、软件的名称图元和软件功能模块的名称图元。
  3. 如权利要求2所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图,包括:
    将所述系统的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将所述系统任务的名称图元列于该鱼骨图的斜线段上,形成所述系统静态组成结构图;
    对于所述系统静态组成结构图中的每一系统任务,将该系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部,将用于实现所述系统任务的软件功能模块的名称图元列与该鱼骨图的斜线段上,形成所述系统任务组成结构图。
  4. 如权利要求1所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图,包括:
    用一条横向带箭头的直线表示所述系统任务,将所述系统任务的名称图元置于一鱼骨图中横向直线的终点作为鱼骨头部;
    将所述软件的名称图元列在相应的鱼骨图中的斜线段上,该相应的鱼骨图为以相应的所述系统任务的名称图元为鱼骨头部的的鱼骨图;
    将所述软件功能模块的名称图元列在相应的骨图中的斜线段上,该相应的鱼骨图为以相应的所述软件的名称图元为鱼骨头部的的鱼骨图。
  5. 如权利要求4所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述系统任务的名称图元、所述软件的名称图元和所述软件功能模块的名称图元的先后顺序与所述系统的执行顺序一致;
    在所述软件或所述软件功能模块在时序上为并列关系时,连接所述软件或连接所述软件功能模块的横线带箭头直线采用虚线表示。
  6. 如权利要求1所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合,包括:
    基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合Ak,k表示静态集合中软件功能模块的总数量;
    基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合An,n表示动态集合中软件功能模块的总数量。
  7. 如权利要求1所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,包括:
    根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,其中,所述权重判定模型的公式表示为:

    mi∈Ak,且m1>m2>…>mk
    其中,Ak表示静态集合,m1,m2,…,mk分别表示所述静态集合中各软件功能模块的权重,k表示所述静态集合中软件功能模块的总数量;
    按照一致性判定模型,对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,所述一致性判定模型的公式表示为:


    其中,n,k均为正整数,n表示所述动态集合中软件功能模块的总数量,表示所述静态集合中各相应软件功能模块的权重;
    在满足Z=1时,确定所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致,进行系统工程级评审。
  8. 如权利要求7所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述根据所述静态集合中各所述软件功能模块的优先级排序,采用权重判定模型,确定各所述软件功能模块的权重,包括:
    基于收敛思想,将所述静态集合中各软件功能模块按照优先级次序以1/k比例递减,确定各所述软件功能模块的权重为:
    m1=(k-1)*kk-1/kk-1,i=1
    mi=m1*1/ki-1,i≠1,且i≤k。
  9. 如权利要求7所述的基于鱼骨模型的系统工程设计与验证方法,其特征在于,所述方法还包括:
    在Z>1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z≤1;
    在Z<1时,更改所述静态集合中的功能模块或所述动态集合中的功能模块,直至满足Z=1。
  10. 一种基于鱼骨模型的系统工程设计与验证系统,其特征在于,所述系统包括:
    信息获取模块,用于获取建模信息,所述建模信息包括系统级静态信息、系统任务级静态信息以及系统任务级动态数据流;
    第一信息表示模块,用于基于鱼骨图,将所述系统级静态信息和所述系统任务级静态信息表示为系统静态组成结构图以及与所述系统静态组成结构图中每一系统任务对应的系统任务组成结构图;
    第二信息表示模块,用于基于鱼骨图,将所述系统任务级动态数据流表示为系统功能点动态数据流程图;
    集合确定模块,用于基于所述系统任务组成结构图,建立系统各软件功能模块的静态集合,以及基于所述系统功能点动态数据流程图,建立系统各软件功能模块的动态集合;
    一致性判定模块,用于对所述静态集合中的软件功能模块和所述动态集合中的软件功能模块进行一致性调整,直至所述静态集合中的软件功能模块和所述动态集合中的软件功能模块一致。
PCT/CN2023/083076 2022-03-29 2023-03-22 基于鱼骨模型的系统工程设计与验证方法及系统 WO2023185581A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/672,647 US20240311197A1 (en) 2022-03-29 2024-05-23 Method and system for designing and verifying system engineering based on fishbone model

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210318439.3A CN114638042A (zh) 2022-03-29 2022-03-29 基于鱼骨模型的系统工程设计与验证方法及系统
CN202210318439.3 2022-03-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/672,647 Continuation US20240311197A1 (en) 2022-03-29 2024-05-23 Method and system for designing and verifying system engineering based on fishbone model

Publications (1)

Publication Number Publication Date
WO2023185581A1 true WO2023185581A1 (zh) 2023-10-05

Family

ID=81951239

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/083076 WO2023185581A1 (zh) 2022-03-29 2023-03-22 基于鱼骨模型的系统工程设计与验证方法及系统

Country Status (3)

Country Link
US (1) US20240311197A1 (zh)
CN (1) CN114638042A (zh)
WO (1) WO2023185581A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114638042A (zh) * 2022-03-29 2022-06-17 中国电子科技集团公司第三十八研究所 基于鱼骨模型的系统工程设计与验证方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102780264A (zh) * 2011-05-09 2012-11-14 中国石油化工股份有限公司 基于通信系统的模块化电网静态安全分析系统
US20190116198A1 (en) * 2017-10-16 2019-04-18 Wise Network Science and Technology Consultancy Limited Method For Model Checking On The Design Of Security checking software Of Safety-critical Distributed Storage System
US20200241949A1 (en) * 2019-01-29 2020-07-30 SmartQED, Inc Methods and systems for collaborative evidence-based problem investigation and resolution
CN112783475A (zh) * 2021-02-06 2021-05-11 陕西烽火电子股份有限公司 一种嵌入式软件需求分析方法
CN114638042A (zh) * 2022-03-29 2022-06-17 中国电子科技集团公司第三十八研究所 基于鱼骨模型的系统工程设计与验证方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170136760A (ko) * 2016-06-02 2017-12-12 주식회사 이음데이터 공공데이터와 공개응용프로그램 인터페이스 지도를 활용한 소셜네트워크서비스 기반 맞춤형 관광투어맵 시스템 및 그 운용방법
CN110895729A (zh) * 2019-11-28 2020-03-20 国网福建省电力有限公司 一种输电线路工程建设工期的预测方法
CN112149890A (zh) * 2020-09-16 2020-12-29 国网山东省电力公司经济技术研究院 基于用户用能标签的综合能源负荷预测方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102780264A (zh) * 2011-05-09 2012-11-14 中国石油化工股份有限公司 基于通信系统的模块化电网静态安全分析系统
US20190116198A1 (en) * 2017-10-16 2019-04-18 Wise Network Science and Technology Consultancy Limited Method For Model Checking On The Design Of Security checking software Of Safety-critical Distributed Storage System
US20200241949A1 (en) * 2019-01-29 2020-07-30 SmartQED, Inc Methods and systems for collaborative evidence-based problem investigation and resolution
CN112783475A (zh) * 2021-02-06 2021-05-11 陕西烽火电子股份有限公司 一种嵌入式软件需求分析方法
CN114638042A (zh) * 2022-03-29 2022-06-17 中国电子科技集团公司第三十八研究所 基于鱼骨模型的系统工程设计与验证方法及系统

Also Published As

Publication number Publication date
CN114638042A (zh) 2022-06-17
US20240311197A1 (en) 2024-09-19

Similar Documents

Publication Publication Date Title
US20240311197A1 (en) Method and system for designing and verifying system engineering based on fishbone model
US20170139685A1 (en) Visual software modeling method to construct software views based on a software meta view
WO2006017453A2 (en) Method apparatus and system for visualization of probabilistic models
Cheng et al. Modeling resource management in the building design process by information constraint Petri nets
US20060020931A1 (en) Method and apparatus for managing complex processes
Kim et al. A framework for analytics and simulation of accounting information systems: A Petri net modeling primer
CN111176613A (zh) 基于体系结构模型的协同任务自动分解系统
Lu et al. Model-based systems engineering tool-chain for automated parameter value selection
van Hee et al. Yasper: a tool for workflow modeling and analysis
Handley et al. Maintaining the consistency of sysml model exports to XML metadata interchange (XMI)
Fu et al. Modeling and performance analysis of product development process network
Dietsch et al. Formal requirements in an informal world
Dhiman Reassessment of Software Development Life Cycle Models
Bicevskis et al. Practitioners view on domain specific business process modeling
MacKenzie et al. Verification technology potential with different modeling and simulation development and implementation paradigms
Sundar Software engineering
Goedicke et al. Towards integrating multiple perspectives by distributed graph transformation
Barber et al. Tool support for systematic class identification in object-oriented software architectures
Smith Origins of software performance engineering: Highlights and outstanding problems
Pérez-Toledano et al. Titan: a framework for aspect oriented system evolution
JP2006106888A (ja) プラントモデル作成システム
CN117827619B (zh) 异构算力的耗时预测仿真方法、装置、设备、介质及系统
Schots et al. A Study on the Application of the PREViA Approach in Modeling Education
Beebe A Complete Bibliography of Publications in the Journal of Systems and Software (1979–1999)
CN116756005A (zh) 一种考虑模型间和标准一致性的SysML模型校验方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23777952

Country of ref document: EP

Kind code of ref document: A1