WO2019218724A1 - 软件模块标准化开发方法及软件系统开发方法 - Google Patents

软件模块标准化开发方法及软件系统开发方法 Download PDF

Info

Publication number
WO2019218724A1
WO2019218724A1 PCT/CN2019/073449 CN2019073449W WO2019218724A1 WO 2019218724 A1 WO2019218724 A1 WO 2019218724A1 CN 2019073449 W CN2019073449 W CN 2019073449W WO 2019218724 A1 WO2019218724 A1 WO 2019218724A1
Authority
WO
WIPO (PCT)
Prior art keywords
standardized
software module
software
development method
announcement
Prior art date
Application number
PCT/CN2019/073449
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 上海旺谷计算机科技有限公司
Priority to US16/652,848 priority Critical patent/US20200233647A1/en
Publication of WO2019218724A1 publication Critical patent/WO2019218724A1/zh

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse

Definitions

  • the invention belongs to the technical field of software, and particularly relates to a software module standardization development method and a software system development method.
  • a component is a software entity that has relatively independent functions in the software system, can be clearly identified, interfaces are specified by contracts, and contexts have obvious dependencies, can be deployed independently, and can be assembled.
  • the current major component standards include the following:
  • J2EE is a Java enterprise computing platform specification and technology launched by Sun Corporation (now belonging to Oracle Corporation), and a component-based solution for distributed application development for enterprises.
  • the component model is well-structured and supported by a mature development environment. It is one of the mainstream distributed component technologies.
  • the disadvantage is that the J2EE specification is relatively large and complex, development and deployment is too cumbersome, and has a high learning curve for software developers.
  • the Spring and Hibernate development frameworks are more flexible, simple, and faster than J2EE.
  • CORBA component standards CORBA is a component specification developed by the OMG organization for the development and configuration of server distributed applications.
  • the CORBA standard is divided into three levels: object requesting agents, public object services, and public facilities.
  • CORBA features are large and comprehensive, with good interoperability and development. The disadvantages are large and complex, and the learning curve is very steep.
  • the CORBA technology and standards update is relatively slow. The time it takes for the CORBA specification to upgrade from 1.0 to 2.0 is very short, and the release of the previous version is relatively slow, and it has not been widely used.
  • COM/.NET component standard COM (Component Object Model) is a component object model proposed by Microsoft Corporation and is a set of interface implementation specifications. The COM component is to solve the problem that the C++ dynamic library release lacks the binary level standard, and the interface and the implementation are separated by the interface specification standard.
  • Microsoft defines two exchange formats that support COM, Interface Definition Language (IDL) and Type Library (TLB). The two exchange formats make COM lack of standardization and make COM lack of scalability, which is also a fatal problem for COM.
  • Microsoft has expanded DCOM (distributed COM) and transaction server MTS via COM technology, and is collectively referred to as COM+. On this basis, Microsoft has further developed a new generation of component development and execution environment .NET framework.
  • the framework consists of three parts: the common language runtime (CLR), the service framework, and the upper two types of application templates - traditional Windows application templates and ASP.NET-based web-oriented networks.
  • the .NET component model is one of the mainstream distributed component technologies, with a mature development environment and extensive use. The main problem with the .NET component model is that it is primarily for Windows operating platforms and is not supported for embedded systems and other operating systems. In addition, the .NET component model specification is also more complex, mainly for professional software developers.
  • Software reuse means that software assets can only be applied to different products if they have sufficient variability.
  • This software unit can be reused on a large scale only when the software unit satisfies a common definition and implementation standard, and the software unit must have sufficient variability. This is also a key point in software product line engineering practice.
  • the variability requirements of the components are not reflected in the three mainstream component standards mentioned above. More from the perspective of satisfying the software development, the main participants are also positioned in the professional software developers. The standards are also too complex, which is not conducive to the participation of other non-computer professionals.
  • the software product line engineering is relatively perfect in theory. It is more to guide the software development process from the perspective of software engineering. In terms of specific implementation, developers need to specifically select the technical system of the shadow to implement. This creates a dilemma. When companies want to implement software product line engineering, they find that using traditional component systems is too complicated and difficult to implement. At present, there is a lack of a simple, easy to implement and reusable software module in the field of software product line engineering.
  • the present invention has been made to solve the above problems, and aims to provide a simple and easy implementation, and can solve the problem of large-scale reusability of software, reduce software development cost, improve software development quality and efficiency, and realize software specialization.
  • the invention provides a software module standardization development method, which is characterized in that: the standardized software module defines eight elements: attributes, service methods, plugs, slots, signals, signal slots, announcements, announcement slots,
  • attributes, service methods and announcements are represented by text.
  • the announcement slot is used to subscribe to announcements issued by other standardized software modules.
  • Each standardized software module includes a plug representing the software itself, and at least one of the eight elements,
  • a number of standardized software modules are assembled to form a new standardized software module.
  • the slot includes: a single-slot slot for connecting only one plug, and a plurality of plugs for connecting a plurality of plugs Example slot.
  • the software module may also have the feature that the standardized software module can issue a network transparent announcement, and the standardized software module subscribes to the localization of the local machine and other devices on the network through the announcement slot.
  • each standardized software module can be visually displayed.
  • each element in the standardized software module can be single or multiple.
  • the invention also provides a software system development method, characterized in that the software system is formed by orderly combining standardized software modules developed by a plurality of the above-mentioned software module standardized development methods.
  • the standardized software module defines eight elements, and each standardized software module includes a plug representing the software itself and at least one of the eight elements, and different standardized software modules can be Hard connection through plug and slot, flexible connection through signal and signal slot, loose dynamic association through announcement and announcement slot, the standardized software module as the basic unit of reusable software, can be flexibly and dynamically combined by other standardized software modules
  • the standardized development method of the software module of the present invention is simple and easy to implement, and can solve the software. The problem of large-scale reusability reduces the development cost of software, improves the quality and efficiency of software development, and realizes the specialized division of labor, social collaboration and industrial production goals.
  • the software system development method of the invention is assembled by using standardized software modules developed by the software module standardization development method, solves the large-scale reusable problem of the software, reduces the development cost of the software, improves the quality and efficiency of the software development, and can Realize the specialized division of labor, social collaboration and industrial production goals.
  • Figure 1 is a pictorial representation of a standardized software module
  • Figure 2 is a visual assembly diagram of two standardized software modules
  • Figure 3 is a diagram showing the development process of the software system in the present invention.
  • the software module standardization development method includes: as shown in FIG. 1, the standardized software module defines eight elements: attribute 11, service method 12, plug, slot 14, signal 15, signal slot 16, announcement 17 and announcement slot 18.
  • Attribute 11, Service Method 12, and Announcement 17 are all represented by text. Among them, the attribute 11 and the service method 12 can be folded and expanded.
  • Each standardized software module can issue an announcement, the announcement issued by which is the text content contained in announcement 17 of the standardized software module.
  • the announcement slot 18 is used to subscribe to announcements issued by other standardized software modules. In this embodiment, the announcement slot can only subscribe to announcements of the same type as the announcement slot issued by other standardized software modules.
  • announcement 17 and announcement slot 18 Different software modules are loosely and dynamically associated through announcement 17 and announcement slot 18, and no connection is needed between the announcement and the announcement slot, and the announcement and announcement slots are network transparent, that is, the standardized software module can issue a network transparent announcement, and the announcement slot 18 can Subscribe to the same type of bulletin slot issued by the standardized software module running on other machines through the local machine and the network.
  • the hardened connections are made between the different standardized software modules through the plug and the socket 14.
  • the connection can be made when the types of the plug and the socket 14 are the same.
  • the plug represents a standardized software module itself or other type of standardized software module, as shown in Figure 1, plug 131 represents the standardized software module itself, and plug 132 represents other types of standardized software modules.
  • the slots 14 are divided into two types, a single-case slot 141 and a plurality of slots 142.
  • the single-slot slot 141 can only be fitted with one plug, and the multiple-slot slot 142 can be fitted with multiple plugs.
  • signal 15 and signal slot 16 are of the same type for connection.
  • a signal 15 can be coupled to a plurality of signal slots 16.
  • Each standardized software module includes a plug 131 representing the software itself and at least one of the eight elements. Any of the standardized software modules themselves defaults to a plug, for example the default plug 131 represents the standardized software module itself, and the plug 131 can be connected to a slot of the other standardized software modules that is identical in type to the plug 131.
  • Each standardized software module can expose other types of standardized software modules through the plug, such as: as shown in FIG. 2, the standardized software module exposes the standardized software modules represented by plug 132 through plug 132.
  • Standardized software modules can be visualized for visualization. Different software modules are assembled into a new standardized software module by visual or code. The new standardized software module consisting of the assembly still has at least one of the eight elements in the standardized software module.
  • Figure 2 shows the visual assembly process of two standardized software modules.
  • the standardized software modules 21 and 22 are hard-wired through plugs and slots, the signals and signal slots are flexibly connected, and the announcement and announcement slots enable loose dynamic connections.
  • Two standardized software modules are assembled to form a new standardized software module.
  • the resulting new standardized software module can be further multiplexed and assembled.
  • Each element in the standardized software module can be single or multiple, for example: a standardized software module includes a plurality of different types of plugs and slots.
  • the software system development method is an orderly combination of standardized software modules developed by the software system by a plurality of standardized development methods of the above software modules.
  • the software system development of the present invention is the process of developing, multiplexing, and assembling standardized software modules.
  • the standardized software module is developed to form a standardized software module library.
  • the standardized software modules in the standardized software module library are sequentially combined into one.
  • the industrial field acquisition and control system is developed using the software system development method of the present invention.
  • the requirements of the system are: collecting the vehicle detection point history data through the CAN bus protocol, comparing the detection data technical indicators, analyzing the statistical abnormal parameters, forming a fault list, generating detection records, and the system can provide data playback function, and the related detection can be performed.
  • the data is displayed on a large screen.
  • the standardized software modules such as the data standardization software module library, the business standardization software module library, the interface standardization software module library, the fieldbus protocol standardization software module library, the configuration standardization software module library, etc. are sequentially combined into a car assembly. Station quality monitoring system.
  • the enterprise business system is developed by using the software system development method of the present invention.
  • the requirements of the system are as follows: organize the above data according to a reasonable classification, establish different types of databases (such as parts, components or products), provide state control and authority management for data, provide information query and
  • the functions of summary statistics and general-purpose three-in-one management improve the efficiency, accuracy, reliability and controlled security of product data management, overcome the shortcomings of traditional manual management methods, and make the enterprise quality management informationization level reach a new level.
  • the standardized software modules such as the network standardization software module, the data standardization software module, the business standardization software module, the interface standardization software module, and the report standardization software module are sequentially combined into the enterprise quality management system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种软件模块标准化开发方法及软件系统开发方法,软件模块标准化开发方法为将标准化软件模块定义八个要素:属性、服务方法、插头、插槽、信号、信号槽、公告、公告槽,属性、服务方法和公告用文本表示,不同标准化软件模块通过插头和插槽进行硬连接,通过信号和信号槽进行柔性连接,通过公告和公告槽进行松散动态关联,每个标准化软件模块均包括一个代表软件本身的插头和八个要素中的至少一个要素,多个标准化软件模块装配后组成一个新的标准化软件模块,本发明简单、容易实施,能够解决软件的大规模可重用问题,降低软件的开发成本,提高软件开发质量和效率,实现软件的专业化分工、社会化协作和工业化生产目标。

Description

软件模块标准化开发方法及软件系统开发方法 技术领域
本发明属于软件技术领域,具体涉及一种软件模块标准化开发方法及软件系统开发方法。
背景技术
软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。当前随着计算机硬件技术快速发展,软件运行的硬件平台越来越丰富,从传统的PC机快速扩展到各类小型可移动设备和大型服务器集群上,软件开发规模变得越来越大,特别是云技术、嵌入式、物联网、工业4.0和人工智能等等大量新技术的涌现,软件复杂度也越来越高。在这种状态下,软件危机并没有消除,反而有增强的趋势,这点从国内软件公司常态化加班就可见一斑。
当前业界解决软件重用问题的主要手段是采用构件的软件开发方法。构件指软件系统中具有相对独立功能、可以明确辨识、接口由契约指定、和语境有明显依赖关系、可独立部署、可组装的软件实体。当前主要的构件标准包括以下几种:
1、EJB/J2EE构件标准:J2EE是SUN公司(现属于Oracle公司)推出的Java企业计算平台规范与技术,为面向企业的分布应用开发提供的基于构件的解决方案。该构件模型结构良好,有成熟的开发环境支持,是主流的分布式构件技术之一。缺点是J2EE规范比较庞大 复杂,开发和部署过于繁琐,对软件开发人员有较高的学习曲线。对于企业应用开发,Spring和Hibernate开发框架比J2EE更加灵活、简单和快速。
2、CORBA构件标准:CORBA是OMG组织制定的一个用于开发和配置服务器分布式应用的构件规范。CORBA标准主要分为3个层次:对象请求代理、公共对象服务和公共设施。CORBA特点是大而全,互操作性和开发性较好。缺点是庞大而复杂,学习曲线非常陡峭。另外CORBA技术和标准的更新相对较慢,CORBA规范从1.0升级到2.0所花费的时间非常短,而再往上的版本的发布就相对十分缓慢了,目前并没有得到广泛应用。
3、COM/.NET构件标准:COM(Component Object Model)是微软公司提出的构件对象模型,是一套接口实现规范。COM构件是为了解决C++动态库发布缺少二进制级标准的问题,通过接口规范标准将接口和实现进行分离。微软定义了两种支持COM的交换格式,接口定义语言(IDL)和类型库(TLB)。两种交换格式使得COM缺少标准化,同时使得COM缺少扩展性,这也是COM的致命问题。微软经COM技术扩充了DCOM(distributed COM)和事物服务器MTS,并统称为COM+,在此基础上,微软进一步发展出力新的一代构件开发和执行环境.NET框架。该框架由三部分组成:公共语言运行库(common language runtime,CLR)、服务框架(service framework)和上层的两类应用模板--传统的Windows应用程序模板和基于ASP.NET的面向web的网络应用程序模板。.NET构件模型是主流的分布式构件技术之一,有 成熟的开发环境和广泛的使用。.NET构件模型的主要问题是主要面向Windows运行平台,对于嵌入式系统和其它操作系统还不支持。另外,.NET构件模型规范也较复杂,主要面向专业的软件开发人员。
上述构件模型从软件实现角度都比较完善,但从软件重用的角度来看都还存在明显的不足。
采用软件产品线的方法来实现软件的大规模复用是最有效的途径之一。按照卡耐基·梅隆大学软件工程研究所(SEI)的统计,引入软件产品线工程,使得软件企业获得如下好处:(1)将生成效率提高10倍以上。(2)产品质量提高10倍以上。(3)降低60%成本。(4)对人工需求降低87%。(5)产品上市时间最大可缩短98%。(6)在数月内进入新市场,而不是以前的数年。
软件复用意味着只有在软件资产具备足够的可变性时才能被应用到不同的产品中。只有软件单元在满足一种同一定义和实现标准,同时软件单元还必须有足够的可变性时,这种软件单元才能被大规模复用,这也是软件产品线工程实践的关键点。而构件的可变性需求在前面所述主流的三种构件标准中并没有得到重点的体现,更多的是从满足软件开发角度出发,其主要参与者也定位在专业的软件开发人员,其规范标准也过于复杂,不利于其它非计算机专业的人员参与。
软件产品线工程理论上比较完善,它更多的是从软件工程的角度来指导软件开发过程,在具体落实方面就需要开发人员来具体选择形影的技术体系来实施。这就造成一种困局,当企业想实施软件产品线工程时,就发现采用传统的构件体系太复杂,并且实施起来难度也比 较大。而目前在软件产品线工程领域还缺少一种简单、容易实施且可复用的软件模块。
发明内容
本发明是为了解决上述问题而进行的,目的在于提供一种简单、容易实施,且能够解决软件的大规模可重用问题,降低软件的开发成本,提高软件开发质量和效率,实现软件的专业化分工、社会化协作和工业化生产目标的软件模块标准化开发方法及软件系统开发方法。
本发明提供了一种软件模块标准化开发方法,其特征在于:将标准化软件模块定义八个要素:属性、服务方法、插头、插槽、信号、信号槽、公告、公告槽,
其中,属性、服务方法和公告均用文本表示,
公告槽用于订阅其它标准化软件模块发出的公告,
不同标准化软件模块通过插头和插槽进行硬连接,
不同标准化软件模块通过信号和信号槽进行柔性连接,
不同标准化软件模块通过公告和公告槽进行松散动态关联,
每个标准化软件模块均包括一个代表软件本身的插头、以及所述八个要素中的至少一个要素,
多个标准化软件模块装配后组成一个新的标准化软件模块。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,所述插槽包括:仅用于连接一个插头的单例插槽、以及用于连接多个插头的多例插槽。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具 有这样的特征:其中,插头和插槽的类型一致才能进行连接。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,信号和信号槽的类型相同才能进行连接。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,标准化软件模块中的一个信号能够同时与其它标准化软件模块中的多个信号槽相连接。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,标准化软件模块可以发出网络透明的公告,标准化软件模块通过公告槽订阅本机和网络上其他设备运行的标准化软件模块发出的与公告槽相同类型的公告。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,每个标准化软件模块均可以可视化显示。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,不同标准化软件模块之间通过可视化或代码两种方式装配成一个新的标准化软件模块。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,标准化软件模块通过插头暴露其它类型的标准化软件模块。
进一步,在本发明提供的软件模块标准化开发方法中,还可以具有这样的特征:其中,标准化软件模块中的每种要素均可以为单个或多个。
本发明还提供了一种软件系统开发方法,其特征在于:软件系统 由多个上述的软件模块标准化开发方法开发的标准化软件模块有序组合而成。
本发明的优点如下:
根据本发明所涉及的软件模块标准化开发方法,将标准化软件模块定义八个要素,每个标准化软件模块均包括一个代表软件本身的插头、以及八个要素中的至少一个要素,不同标准化软件模块可以通过插头和插槽进行硬连接,通过信号和信号槽进行柔性连接,通过公告和公告槽进行松散动态关联,该标准化软件模块作为可复用软件基本单元,可以被其它标准化软件模块柔性、动态组合成新的标准化软件模块,在进行软件系统开发时,只需将开发好的标准化软件模块进行有序装配组合即可,因此,本发明的软件模块标准化开发方法简单、容易实施,能够解决软件的大规模可重用问题,降低了软件的开发成本,提高了软件开发质量和效率,能够实现软件的专业化分工、社会化协作和工业化生产目标。
本发明所涉及的软件系统开发方法,采用软件模块标准化开发方法开发的标准化软件模块装配而成,解决软件的大规模可重用问题,降低了软件的开发成本,提高了软件开发质量和效率,能够实现软件的专业化分工、社会化协作和工业化生产目标。
附图说明
图1是标准化软件模块的图示化表达图;
图2是两个标准化软件模块的可视化装配图;
图3是本发明中软件系统的开发过程图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明软件模块标准化开发方法及软件系统开发方法作具体阐述。
软件模块标准化开发方法包括:如图1所示,将标准化软件模块定义八个要素:属性11、服务方法12、插头、插槽14、信号15、信号槽16、公告17和公告槽18。
属性11、服务方法12和公告17均用文本表示。其中,属性11和服务方法12均可以折叠和展开。每个标准化软件模块可以发出公告,其发出的公告为该标准化软件模块中公告17中包含的文本内容。公告槽18用于订阅其它标准化软件模块发出的公告。在本实施例中,公告槽只能订阅其它标准化软件模块发出的与公告槽类型相同的公告。不同软件模块通过公告17和公告槽18进行松散动态关联,公告和公告槽之间不需要连接,且公告和公告槽是网络透明的,即标准化软件模块可以发出网络透明的公告,公告槽18可以通过本机和网络订阅其它机器运行的标准化软件模块发出的与公告槽类型相同的公告。
不同标准化软件模块之间通过插头和插槽14进行硬连接,在本实施例中,插头和插槽14的类型一致时才能进行连接。插头代表标准化软件模块本身或者其它类型的标准化软件模块,如图1所示,插头131代表标准化软件模块本身,插头132代表其他类型的标准化软件模块。插槽14分为两种类型,单例插槽141和多例插槽142。单 例插槽141仅能装配一个插头,多例插槽142能够装配多个插头。
不同标准化软件模块之间通过信号15和信号槽16进行柔性连接。在本实施例中,信号15和信号槽16的类型相同才能进行连接。一个信号15可以与多个信号槽16连接。
每个标准化软件模块均包括一个代表软件本身的插头131和八个要素中的至少一个要素。任何一个标准化软件模块本身均默认一个插头,例如默认插头131代表标准化软件模块本身,插头131可以与其它标准化软件模块中与插头131类型一致的插槽进行连接。每个标准化软件模块可以通过插头暴露其它类型的标准化软件模块,比如:如图2所示,标准化软件模块通过插头132暴露插头132代表的标准化软件模块。标准化软件模块实例化时,可以申明为单例,它在系统中只存在一份。
标准化软件模块可以可视化显示,进行可视化操作。不同软件模块之间通过可视化或代码两种方式装配成一个新的标准化软件模块。装配组成的新的标准化软件模块仍然具备标准化软件模块中八个要素中的至少一个要素。
如图2所示为两个标准化软件模块的可视化装配过程,标准化软件模块21和22通过插头和插槽实现硬连接,信号和信号槽实现柔性连接,公告和公告槽实现松散动态连接。两个标准化软件模块装配后形成一个新的标准化软件模块。该形成的新的标准化软件模块可被进一步复用装配。
标准化软件模块中的每个要素可以为单个或者多个,例如:一个标准化软件模块中包括多个不同类型的插头和插槽。
软件系统开发方法为软件系统由多个上述软件模块标准化开发方法开发的标准化软件模块有序组合而成。
软件开发分为面向重用的开发和基于重用的开发两个过程。本发明的软件系统开发就是标准化软件模块的开发、复用和装配的过程。如图3所示,按照统一的规范标准,即按照上述软件模块标准化开发方法开发标准化软件模块,形成标准化软件模块库,在应用时,利用标准化软件模块库中的标准化软件模块有序组合成一个软件系统。
例如:采用本发明的软件系统开发方法开发工业现场采集与控制系统。以某汽车厂“汽车总装工位质量监测系统”为例。该系统要求实现的内容为:通过CAN总线协议采集车辆检测项点历程数据,对比检测数据技术指标,分析统计异常参数,形成故障清单,生成检测记录,系统能够提供数据回放功能,可将相关检测数据通过大屏进行展示。技术人员开发该系统时,应用数据标准化软件模块库、业务标准化软件模块库、界面标准化软件模块库、现场总线协议标准化软件模块库、组态标准化软件模块库等标准化软件模块有序组合成汽车总装工位质量监测系统。
采用本发明的软件系统开发方法开发企业业务系统。以“企业质量管理系统”为例,国内研究所在项目研发和非标定制产品中积累了大量的产品设计图文档资料,这些数据资料文档通常包括与产品相关的2D、3D工程图纸、设计文档、计算报告、实验报告、产品手册、 维护手册和设计规范、标准等。该系统要求实现的内容为:对上述数据资料按照合理的分类进行组织,建立不同类型的数据库(如零部件、组件或产品等),对数据资料提供状态控制和权限管理,提供资料的查询和汇总统计、通用件三化管理等功能,提高产品资料管理的效率、准确性、可靠性和受控安全性,克服传统人工管理方法存在的弊端,使企业质量管理信息化水平达到一个新台阶。技术人员开发该系统时,应用网络标准化软件模块、数据标准化软件模块、业务标准化软件模块、界面标准化软件模块、报表标准化软件模块等标准化软件模块有序组合成企业质量管理系统。
上述实施方式为本发明的优选案例,并不用来限制本发明的保护范围。

Claims (11)

  1. 一种软件模块标准化开发方法,其特征在于:
    将标准化软件模块定义八个要素:属性、服务方法、插头、插槽、信号、信号槽、公告、公告槽,
    其中,属性、服务方法和公告均用文本表示,
    公告槽用于订阅其它标准化软件模块发出的公告,
    不同标准化软件模块通过插头和插槽进行硬连接,
    不同标准化软件模块通过信号和信号槽进行柔性连接,
    不同标准化软件模块通过公告和公告槽进行松散动态关联,
    每个标准化软件模块均包括一个代表软件本身的插头、以及所述八个要素中的至少一个要素,
    多个标准化软件模块装配后组成一个新的标准化软件模块。
  2. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    所述插槽包括:仅用于连接一个插头的单例插槽、以及用于连接多个插头的多例插槽。
  3. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    插头和插槽的类型一致才能进行连接。
  4. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    信号和信号槽的类型相同才能进行连接。
  5. 根据权利要求4所述的软件模块标准化开发方法,其特征在于:
    标准化软件模块中的一个信号能够同时与其它标准化软件模块中的多个信号槽相连接。
  6. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    标准化软件模块可以发出网络透明的公告,标准化软件模块通过公告槽订阅本机和网络上其他设备运行的标准化软件模块发出的与公告槽相同类型的公告。
  7. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    每个标准化软件模块均可以可视化显示。
  8. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    不同标准化软件模块之间通过可视化或代码两种方式装配成一个新的标准化软件模块。
  9. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    标准化软件模块通过插头暴露其它类型的标准化软件模块。
  10. 根据权利要求1所述的软件模块标准化开发方法,其特征在于:
    标准化软件模块中的每种要素均可以为单个或多个。
  11. 一种软件系统开发方法,其特征在于:
    软件系统由多个权利要求1-10中任一权利要求所述的软件模块标准化开发方法开发的标准化软件模块有序组合而成。
PCT/CN2019/073449 2018-05-18 2019-01-28 软件模块标准化开发方法及软件系统开发方法 WO2019218724A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/652,848 US20200233647A1 (en) 2018-05-18 2019-01-28 Method for developing standardized software module and method for developing software system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810478295.1A CN108762730A (zh) 2018-05-18 2018-05-18 软件模块标准化开发方法及软件系统开发方法
CN201810478295.1 2018-05-18

Publications (1)

Publication Number Publication Date
WO2019218724A1 true WO2019218724A1 (zh) 2019-11-21

Family

ID=64007266

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/073449 WO2019218724A1 (zh) 2018-05-18 2019-01-28 软件模块标准化开发方法及软件系统开发方法

Country Status (3)

Country Link
US (1) US20200233647A1 (zh)
CN (1) CN108762730A (zh)
WO (1) WO2019218724A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108762730A (zh) * 2018-05-18 2018-11-06 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法
CN114443115A (zh) * 2020-11-05 2022-05-06 沈阳中科博微科技股份有限公司 一种仪表构件化模型的构建方法及其可配置方法
CN114995792B (zh) * 2022-07-19 2023-03-14 深圳市星卡软件技术开发有限公司 汽车诊断设备的组件化开发方法、设备、介质及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080134141A1 (en) * 2002-03-19 2008-06-05 Nile Josiah Geisinger Method and system for creating self-assembling components through component languages
CN102135885A (zh) * 2011-03-22 2011-07-27 曙光信息产业(北京)有限公司 一种模块化的软件开发架构
CN102520958A (zh) * 2011-12-20 2012-06-27 上海互联网软件有限公司 一种软件生产线系统及其生产方法
CN105739996A (zh) * 2016-03-03 2016-07-06 南京南瑞继保电气有限公司 一种嵌入式装置研发用户分步开发方法
CN108762730A (zh) * 2018-05-18 2018-11-06 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060241909A1 (en) * 2005-04-21 2006-10-26 Microsoft Corporation System review toolset and method
CN105808244A (zh) * 2016-03-01 2016-07-27 杭州师范大学 一种基于工作流的动态数据可视化分析工具
CN106354487A (zh) * 2016-08-11 2017-01-25 宁波亦道信息科技有限公司 一种软件产品的快速构建方法
CN106850875A (zh) * 2017-02-15 2017-06-13 湖南长城银河科技有限公司 一种基于飞腾平台的网卡mac地址烧录方法及装置
CN107315168B (zh) * 2017-07-11 2020-09-04 电子科技大学 一种软件化雷达信号数据处理系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080134141A1 (en) * 2002-03-19 2008-06-05 Nile Josiah Geisinger Method and system for creating self-assembling components through component languages
CN102135885A (zh) * 2011-03-22 2011-07-27 曙光信息产业(北京)有限公司 一种模块化的软件开发架构
CN102520958A (zh) * 2011-12-20 2012-06-27 上海互联网软件有限公司 一种软件生产线系统及其生产方法
CN105739996A (zh) * 2016-03-03 2016-07-06 南京南瑞继保电气有限公司 一种嵌入式装置研发用户分步开发方法
CN108762730A (zh) * 2018-05-18 2018-11-06 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法

Also Published As

Publication number Publication date
CN108762730A (zh) 2018-11-06
US20200233647A1 (en) 2020-07-23

Similar Documents

Publication Publication Date Title
CN102375731B (zh) 一种免编码集成应用软件平台系统
WO2019218724A1 (zh) 软件模块标准化开发方法及软件系统开发方法
US11250344B2 (en) Machine learning based analytics platform
US9489325B2 (en) Method and a system for polling and processing data
CN111813661B (zh) 一种全局业务数据驱动自动测试方法、装置、设备和介质
CN103441900A (zh) 集中式跨平台自动化测试系统及其控制方法
CN103914307A (zh) 一种基于可复用库的交互界面快速实现方法
CN109063362A (zh) 航电软件接口控制文件设计管理系统
CN103345386A (zh) 一种软件生产方法、装置及运行系统
US7499899B2 (en) Dynamic software integration architecture
CN109299074A (zh) 一种基于模板化数据库视图的数据校验方法及系统
CN103530134A (zh) 一种可配置软件平台结构
CN111242470B (zh) 一种基于智能合约的制造资源建模与调用方法
CN112633850A (zh) 通过管理调用及监控rpa机器人实现业务流程自动化的方法
CN106527371A (zh) 智能制造bc系统通用驱动框架
CN108132802B (zh) 一种配置模型在系统开发中的应用方法
CN116010380A (zh) 一种基于可视化建模的数据仓库自动化管理方法
CN115237989A (zh) 一种矿山数据采集系统
CN109446263A (zh) 一种数据关系关联方法及装置
CN115185825A (zh) 接口测试的调度方法及装置
CN113626926A (zh) 一种智能编码和数据分析系统
Kouzmanov Analysis and classification of business software systems integration approaches
KR100788009B1 (ko) 현업 생산 시스템
CN108647018A (zh) 可实时预览的代码生成系统
CN116560637B (zh) 一种可用于数字化转型的以配置形式开发应用系统的方法及系统

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: 19803449

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19803449

Country of ref document: EP

Kind code of ref document: A1