CN108984168A - 一种适用软件开发人员的效率工作台 - Google Patents
一种适用软件开发人员的效率工作台 Download PDFInfo
- Publication number
- CN108984168A CN108984168A CN201810823617.1A CN201810823617A CN108984168A CN 108984168 A CN108984168 A CN 108984168A CN 201810823617 A CN201810823617 A CN 201810823617A CN 108984168 A CN108984168 A CN 108984168A
- Authority
- CN
- China
- Prior art keywords
- code
- data
- efficiency
- software
- workbench
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Abstract
本发明公开了一种适用软件开发人员的效率工作台,包括效率工作台模型模块、表示模块、代码抽象模块、语言库和代码生成器,效率工作台模型模块可以允许创建效率工作台模型,即用户定义的数据实体列表,表示模块可以允许创建定义图形用户界面的演示文稿,其元素可以与效率工作台模型链接,代码抽象模块可以允许创建代码抽象,代码抽象的元素可以链接到效率工作台模型或演示文稿,语言库可以存储用于编程语言的语法和/或软件代码,代码生成器可以使用语言库将效率工作台模型,演示文稿和代码抽象合成到可执行软件代码中,而无需用户手动创作。提供一种适用软件开发人员的效率工作台,允许利用平台和编程语言无关的术语并且使用高级概念图形化地表示软件代码。
Description
技术领域
本发明涉及软件元开发工具,具体涉及一种适用软件开发人员的效率工作台。
背景技术
软件开发过程通常依赖于使用一个或多个工具来提高开发人员的生产力和减少项目时间。各种工具,最常见的是集成开发环境,可用于编写软件应用程序的代码。大多数可用的工具都集中在编写软件应用程序的代码以供使用特定的计算平台和/或使用特定的编程语言或语言系列,通常通过自动化重复的任务和/或强制限制。由于文本软件代码是针对特定的平台/编程语言编写的,所以代码重用性受到限制,当软件应用程序需要在多个平台上使用时,应用程序常常需要使用不同的编程语言来表达,从而增加开发过程所需的开销和资源。不过,一个工具只能和使用它的人一起工作,传统的软件开发工具需要精通工具的细微差别的开发人员以及特定的平台和/或编程语言。虽然有工具为代码生成提供更大的自动化,但这些工具仍然专注于软件应用功能的低级表达。也就是说,传统工具专注于特定的、通常是平台和/或编程语言相关的代码表达式,这些主要基于文本的表示使得很难可视化各种功能和数据是如何关联的。
技术方案
本发明主要解决的技术问题是提供一种适用软件开发人员的效率工作台,其特征在于,包括:效率工作台模型模块,被配置为为软件应用程序创建效率工作台模型,其中效率工作台模型是可供软件应用程序使用的用户定义数据实体的列表;演示模块,被配置为为软件应用程序创建至少一个演示,其中演示定义用于软件应用程序的图形用户界面,其中在演示中定义的图形用户界面元素能够与效率工作台中的相应数据实体链接;代码抽象模块,被配置为为软件应用程序创建代码抽象,其中代码抽象是由软件应用程序执行的行为的图形、平台和编程语言独立表示,其中代码抽象的元素能够链接到效率工作台模型的相应数据实体或至少一个表示的图形用户界面元素;存储至少一种编程语言的语法和软件代码中的至少一种的语言库;代码生成器,被配置为将效率工作台模型,至少一个演示和代码抽象合成为使用语言库实现软件应用程序的一组可执行软件代码,其中用户手动创作软件代码是不必要的。
可选的,其中所述代码抽象还包括:多个动作对象,每个动作对象具有输入流和输出流,其中动作对象是行为的图形占位符,其中所述动作对象具有输入流和不受数据类型约束的输出流;至少一个数据流连接器,其中每个数据流连接器将第一动作对象的输出流连接到第二动作对象的输入流,其中第一和第二动作对象是顺序相关的,其中数据流连接器以图形方式表示连接的动作对象之间的方向关系并定义输入数据和变换参数,其中变换参数指定数据格式和数据类型之一,其中数据流连接器隐含地表示根据输入数据转换输入数据所必需的数据处理操作。
可选的,其中由代码抽象表示的数据被演示为画布视图和参数映射视图,其中画布视图允许对指定的多个动作对象和至少一个数据流连接器进行图形操作,在图形用户界面的区域,参数映射视图允许在左侧的效率工作台模型的数据实体与用于相应的输入和输出流的输入和输出变量的列表之间建立链接,右侧的用户选择的动作对象,其中与参数映射视图中的链接相对应的数据被传播到画布视图中的对应表示。
本发明的有益效果是:
提供一种适用软件开发人员的效率工作台,允许利用平台和编程语言无关的术语并且使用高级概念图形化地表示软件代码。
附图说明
图1是根据本文公开的开发者的效率工作台工具。
图2是示出根据本文公开的开发者的效率工作台工具的系统的框图。
实施例
下面对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
图1是表示根据本文公开的发明布置的实施例的软件元开发工具的基本前提、适用软件开发人员的效率工作台150的图示100,适用软件开发人员的效率工作台150可以是一种软件元开发工具,它是一种专门的软件工具,它支持图形化和高层次的方法来定义软件功能,而不需要开发人员编写实际的软件代码。与许多软件开发工具一样,适用软件开发人员的效率工作台150可以从用户创建的源文件102合成软件应用代码160。与常规工具不同,适用软件开发人员的效率工作台150可以使用同一组源文件102来生成多个软件应用程序代码160可执行文件,每个可执行文件分别用于不同的平台和/或使用不同的编程语言。为了实现这一级别的灵活性和可重用性,源文件102可以遵循模型视图软件体系结构模式(例如,模型视图控制器模式、模型视图-视图模型模式等),在软件的表达式的逻辑分离中,用户界面、行为、露点模型105、演示文稿115和代码抽象130。露点模型105可以定义由正在开发的软件应用程序使用的数据实体110,各种数据源(包括内部和外部)可用于数据实体110,例如数据库查询或Web服务,可以在数据实体110和它们各自的数据源之间支持双向数据通信,也就是说,对数据实体110的值进行的更改可以传播到其始发源。源文件102可以包括一个或多个演示文稿115,每个演示文稿115可以表示由软件应用程序使用的离散图形用户界面,以向用户显示包括数据实体110值在内的信息。因此,每个演示文稿115可以由多种图形用户界面元素120组成,图形用户界面元素120和它们显示或处理的数据实体110之间的关系125可以在演示文稿115中表达。传统模式可以排除或禁止数据110和显示元件120之间的直接关系125。代码抽象130可以表示被开发为动作对象135和数据流连接器140的软件应用程序执行的行为。相关动作对象135可以是高级、平台和编程语言无关的、表示行为的软件代码的图形占位符。相关动作对象135可以使用数据流连接器140彼此连接。数据流连接器140可以图形化地表示相关动作对象135之间的方向关系,以及表示当从第一动作对象135到下一个数据流时需要发生的任何数据类型和/或格式转换。
图2是示出根据本文公开的发明布置的实施例的实施软件元开发工具的系统200、开发者的效率工作台工具220的框图,系统200可以实现插图100的前提。在系统200中,开发者205可以使用适用软件开发人员的效率工作台220的图形用户界面215来开发软件应用程序。开发者205可以是具有使用适用软件开发人员的效率工作台220的软件开发所必需的技能的人。这里所使用的术语“开发者205”可以与“用户”一词互换,开发者205可以是具有专门技能集的用户。图形用户界面215可以表示支持用户交互(例如,数据输入、显示数据等)的适用软件开发人员的效率工作台220的组件。图形用户界面215可以在开发者205使用的客户端设备210上运行,客户端设备210可以表示能够支持图形用户界面215操作和通过网络285与适用软件开发人员的效率工作台220通信的各种计算设备。适用软件开发人员的效率工作台220可以是软件元开发工具的具体实现。通常,适用软件开发人员的效率工作台220(和软件元开发工具)可以表示实现软件开发环境所必需的硬件和软件,该软件开发环境能够从包括软件应用程序功能的图形表示的源文档生成软件代码,作为平台和编程语言独立的元素。适用软件开发人员的效率工作台220可以支持本领域已知的软件开发实践、过程和/或设计模式,具体而言,适用软件开发人员的效率工作台220可以包括露点模型模块225、演示模块230、代码抽象模块240、代码生成器255、数据存储260等,数据存储260可用于存储支持适用软件开发人员的效率工作台220的操作的数据265,270和280。应该注意的是,系统200中所示的适用软件开发人员的效率工作台220的组件可以表示核心功能,并且可以包括诸如配置管理模块之类的附加组件来增加功能。
代码生成器225、演示模块230和代码抽象模块240可由开发者205分别用于创建软件应用项目270的相应源文件RUD模型272、演示274和代码抽象276。软件应用项目270可以是存储通用数据(例如,名称、预期平台/语言、版本等)和定义软件应用程序的源文件272,274和276的容器,这是本领域中常见的。露点模块225可以表示支持源文件生成的软件组件,当数据实体表示数据时,数据实体的数据可以来自各种来源,如数据库查询、Web服务或软件应用项目270的另一个露点模型272,并且可以具有各种结构/类型,例如静态值、动态值、数据对象或数据收集。因此,代码生成器225向开发者205提供用于定义露点模型272的每个数据实体的参数的装置。
以上实施例的先后顺序仅为便于描述,不代表实施例的优劣。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (3)
1.一种适用软件开发人员的效率工作台,其特征在于,包括:效率工作台模型模块,被配置为为软件应用程序创建效率工作台模型,其中效率工作台模型是可供软件应用程序使用的用户定义数据实体的列表;
演示模块,被配置为为软件应用程序创建至少一个演示,其中演示定义用于软件应用程序的图形用户界面,其中在演示中定义的图形用户界面元素能够与效率工作台中的相应数据实体链接;
代码抽象模块,被配置为为软件应用程序创建代码抽象,其中代码抽象是由软件应用程序执行的行为的图形、平台和编程语言独立表示,其中代码抽象的元素能够链接到效率工作台模型的相应数据实体或至少一个表示的图形用户界面元素;
存储至少一种编程语言的语法和软件代码中的至少一种的语言库;
代码生成器,被配置为将效率工作台模型,至少一个演示和代码抽象合成为使用语言库实现软件应用程序的一组可执行软件代码,其中用户手动创作软件代码是不必要的。
2.根据权利要求1所述的一种适用软件开发人员的效率工作台,其特征在于:其中所述代码抽象还包括:多个动作对象,每个动作对象具有输入流和输出流,其中动作对象是行为的图形占位符,其中所述动作对象具有输入流和不受数据类型约束的输出流;至少一个数据流连接器,其中每个数据流连接器将第一动作对象的输出流连接到第二动作对象的输入流,其中第一和第二动作对象是顺序相关的,其中数据流连接器以图形方式表示连接的动作对象之间的方向关系并定义输入数据和变换参数,其中变换参数指定数据格式和数据类型之一,其中数据流连接器隐含地表示根据输入数据转换输入数据所必需的数据处理操作。
3.根据权利要求2所述的一种适用软件开发人员的效率工作台,其特征在于:其中由代码抽象表示的数据被演示为画布视图和参数映射视图,其中画布视图允许对指定的多个动作对象和至少一个数据流连接器进行图形操作,在图形用户界面的区域,参数映射视图允许在左侧的效率工作台模型的数据实体与用于相应的输入和输出流的输入和输出变量的列表之间建立链接,右侧的用户选择的动作对象,其中与参数映射视图中的链接相对应的数据被传播到画布视图中的对应表示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810823617.1A CN108984168A (zh) | 2018-07-25 | 2018-07-25 | 一种适用软件开发人员的效率工作台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810823617.1A CN108984168A (zh) | 2018-07-25 | 2018-07-25 | 一种适用软件开发人员的效率工作台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108984168A true CN108984168A (zh) | 2018-12-11 |
Family
ID=64550969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810823617.1A Withdrawn CN108984168A (zh) | 2018-07-25 | 2018-07-25 | 一种适用软件开发人员的效率工作台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108984168A (zh) |
-
2018
- 2018-07-25 CN CN201810823617.1A patent/CN108984168A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9116672B2 (en) | Method and system for displaying selectable autocompletion suggestions and annotations in mapping tool | |
JPH05504858A (ja) | 計算機支援ソフトウェア工学ファシリティ | |
CN111880784B (zh) | 一种面向simscript语言的离散事件仿真图形化建模方法 | |
Haug et al. | A layout technique for class diagrams to be used in product configuration projects | |
Krogstie | Using a semiotic framework to evaluate UML for the development of models of high quality | |
Bonaventura et al. | Graphical modeling and simulation of discrete-event systems with CD++ Builder | |
Schwede et al. | Consistent modelling of the impact model of modular product structures with linking boundary conditions in SysML | |
Koskimies et al. | SCED: A tool for dynamic modelling of object systems | |
Fuhrmann | On the pragmatics of graphical modeling | |
Liew et al. | A framework for business model driven development | |
Korson | The misuse of use cases | |
Schramm et al. | Rapid UI development for enterprise applications: Combining manual and model-driven techniques | |
CN108984168A (zh) | 一种适用软件开发人员的效率工作台 | |
Rinker et al. | A multi-model reviewing approach for production systems engineering models | |
Fuhrmann et al. | Automatic layout and structure-based editing of UML diagrams | |
Kis et al. | Lightweight low-level query-centric user interface modeling | |
Tye et al. | PyGOM-A Python Package for Simplifying Modelling with Systems of Ordinary Differential Equations | |
Glaser | Developing Sprotty-based Modeling Tools for VS Code | |
Brünninghaus et al. | Low-code development in worker assistance systems: Improving flexibility and adaptability | |
Rath et al. | Declarative specification of domain specific visual languages | |
Bexiga | Closing the Gap Between Designers and Developers in a Low-Code Ecosystem | |
Siegers | 3.3. 2 The ABCs of AFs: Understanding Architecture Frameworks | |
Prochnow et al. | On development environments for aircraft modeling | |
Jörges et al. | Leveraging service-orientation for combining code generation frameworks | |
Ermel et al. | RONs revisited: General approach to model reconfigurable object nets based on algebraic high-level nets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20181211 |
|
WW01 | Invention patent application withdrawn after publication |