CN102736915A - 自动程序生成装置、方法以及计算机程序 - Google Patents

自动程序生成装置、方法以及计算机程序 Download PDF

Info

Publication number
CN102736915A
CN102736915A CN201210031827XA CN201210031827A CN102736915A CN 102736915 A CN102736915 A CN 102736915A CN 201210031827X A CN201210031827X A CN 201210031827XA CN 201210031827 A CN201210031827 A CN 201210031827A CN 102736915 A CN102736915 A CN 102736915A
Authority
CN
China
Prior art keywords
program
model
program code
information
data
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.)
Granted
Application number
CN201210031827XA
Other languages
English (en)
Other versions
CN102736915B (zh
Inventor
野尻周平
三部良太
桥本康范
石川贞裕
山口洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN102736915A publication Critical patent/CN102736915A/zh
Application granted granted Critical
Publication of CN102736915B publication Critical patent/CN102736915B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

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

Abstract

本发明提供自动程序生成装置、方法以及计算机程序,使用为原型开发出的画面模型直接在架构不同的正式开发中沿用。自动程序生成装置具备:存储画面模型程序(1720)、组件设定文件(1730)以及执行架构定义信息(1760)的存储部(170);存储组件数据的存储部(160);根据画面模型程序(1720)和组件设定文件(1730)生成组件的设计信息,根据执行架构定义信息(1760)设定程序执行平台的模型设计信息解析部(110);基于组件的设计信息选择在设定的程序执行平台中运行的程序代码块的组件架构决定部(130);以及,根据选择出的程序代码块生成程序代码的程序代码生成部(140)。

Description

自动程序生成装置、方法以及计算机程序
技术领域
本发明涉及自动生成程序的技术,尤其是涉及对软件以及系统的画面原型开发(prototyping)中的模型(mockup)开发以及模型的向正式开发的转移进行支援的技术。
背景技术
在企业信息系统的开发中,重要的是开发负责人员如何有效并且真正地获得来自顾客的要求。而且,在对开发出的企业信息系统进行评价时,顾客所要求的业务规格书中不存在未落实或者遗漏也是重要的。进而,除此之外,对于开发出的企业信息系统所提供的GUI画面以及其它的用户界面功能,由于其操作感导致业务完成效率大有不同,因此对于顾客是其关心的大事。
另外,近年来,计算机的能力也充分提升,称作RIA(Rich InternetApplications)的、表现自由度高的框架(frame work)也已渗透,因此顾客对于画面的期待越来越大。利用像这样的RIA等开发的画面表现力高,因此,依靠文档或者纸面等的话,顾客与开发者之间对于画面行为的要求共享变得困难。
于是,在开发的过程中,作为用户界面画面的原型(prototype),对顾客提示在计算机上实际运行的模型(画面的原型程序),对于将顾客与开发者意识上产生分歧防患于未然是有效的。
但是,在原型开发中,模型仅仅是试制品。而且,在一般的系统开发中,由于花在获得顾客要求上的时间也有限,因此必须在短期间内反复进行面对顾客的示范(demonstration)以及针对通过该示范得到的指正事项的修正。
为了有效开发模型,提出有如下技术:不进行内部的数据处理,使用仅再现系统的动画(animation)的测试程序(toy program)部件等,简单地开发宛如实际发挥功能的原型。而且,例如在专利文献1中,通过从画面的设计信息提取数据等画面以外的动态信息,进行程序的自动生成,从而谋求画面开发的效率提升。
专利文献1:日本特开2004-302571
但是,该现有方法中存在如下问题。也就是,在专利文献1中,在模型的开发结束后向正式开发转移时,必须将模型(与顾客取得意见统一的画面程序)废弃,再次花费工作量重新开发正式用的画面,从而产生工作量的浪费。而且,由于此时开发者必须从模型提取规格,因此在该时间点又存在产生要求规格的未落实、遗漏的风险。
另一方面,由于模型开发与正式开发的目的不同,所以各自所执行的架构(architecture)也不同。因此,通常来讲不能实现使模型的程序直接在正式的架构中运行。
发明内容
于是,本发明的目的在于使为原型开发出的画面模型直接在架构不同的正式开发中沿用。
根据本发明的一种实施方式的程序自动生成装置具备:存储模型数据的单元,该模型数据包括用于显示画面的模型程序、从所述画面调用的组件的组件类别、用于对所述组件类别的组件设定的属性数据;存储组件数据的单元,该组件数据包括多个组件类别的组件的规格;基于所述模型数据以及所述组件数据生成从所述画面调用的组件的设计信息的单元;存储指定执行架构的信息的单元;基于所述指定执行架构的信息设定与被指定的执行架构对应的程序执行平台的单元;存储不同程序执行平台的程序代码块的单元;以及,基于所述组件的设计信息选择在所述设定的程序执行平台上运行的程序代码块,并对选择出的程序代码块设定所述属性数据来生成程序代码的单元。
在优选的实施方式中可以是,在不存在所述指定执行架构的信息时,基于预先设定的模型用执行架构来决定所述程序执行平台。
在优选的实施方式中可以是,所述组件数据中包含对各组件类别的组件设定的属性值的默认值,在所述模型数据中不包括所述属性数据时,所述生成程序代码的单元可对所述选择出的程序代码块设定所述默认值。
在优选的实施方式中可以是,所述程序自动生成装置还具备:从所述模型数据提取与所述组件数据中所含的多个组件类别均不能实现的功能相关的记述的单元。而且还可以是,所述生成程序代码的单元可使所述提取出的记述包含在程序代码内,从而在执行从所述画面调用组件时输出所述提取出的记述。
在优选的实施方式中可以是,所述的程序自动生成装置还具备:用于生成所述模型数据的模型开发环境;以及,使通过所述生成程序代码的单元生成的程序代码以及所述模型程序运行的模型审阅环境。
基于本发明,能够使为原型开发、与顾客取得意见统一的画面模型直接在架构不同的正式开发中沿用。其结果,防止顾客要求规格的未落实、遗漏,并且能够削减开发工作量。
附图说明
图1是本发明一种实施方式所涉及的模型开发支援系统100的整体构成图。
图2是模型开发支援系统100的功能构成图。
图3是画面模型程序1720的说明图。
图4是组件设定文件1730的说明图。
图5是执行架构定义信息1760的说明图。
图6是用于执行模型的架构的模型执行架构A1。
图7是用于执行正式系统的架构的正式执行架构A2。
图8是表示能够在本系统中使用的组件的一览的组件一览1610的一个例子。
图9是包含各组件的定义信息的组件设定属性定义1620的一个例子。
图10是各架构组件代码块组1630的一个例子。
图11是界面生成用代码块1640的一个例子。
图12是模型设计信息解析部110的详细功能构成图。
图13是由数据结构体提取部112提取出的数据结构体1510的一个例子。
图14是由触发事件提取部113提取出的触发事件1517的一个例子。
图15是由组件设定信息提取部114生成的构成组件设定信息1520的一个例子。
图16是补足默认值后的构成组件设定信息1520的一个例子。
图17是追加执行架构以及代码块保存场所后的构成组件设定信息1520的一个例子。
图18是由执行对象架构设定解析部117生成的执行架构设定信息1540的一个例子。
图19是通过CPU101执行组件设定生成程序120P时实现的组件设定生成部120的功能构成图。
图20是通过CPU101执行程序代码生成程序140P时实现的程序代码生成部140的功能构成图。
图21是表示使用本系统100的模型开发整体的顺序的流程图。
图22表示生成用于原型开发执行环境的程序代码情况下的输入输出文件的一个例子。
图23表示生成用于正式开发的程序代码情况下的输出文件的一个例子。
图24是表示程序代码生成处理的详细顺序的流程图。
图25A是表示模型中所含组件的设定信息提取处理的详细顺序的流程图。
图25B是表示模型中所含组件的设定信息提取处理的详细顺序的流程图。
图26是表示生成对应于执行架构的组件的设定的处理顺序的流程图。
图27是本发明第一实施方式的图。
图中:100-模型开发支援系统,102-存储器,103-外部存储装置,104-总线,105-外部接口,106-输入装置,107-输出装置,108-通信装置,110P-模型设计信息解析程序,120P-组件设定生成程序,130P-组件执行架构决定程序,140P-程序代码生成程序,150-输入模型设计信息存储部,160-各架构组件一览存储部,170-输入画面模型存储部,190-网络,191-模型开发环境,192-模型审阅环境。
具体实施方式
以下,针对本发明的一种实施方式所涉及的模型开发支援系统,参照附图进行说明。本实施方式所涉及的模型开发支援系统是根据原型开发时开发出的画面模型程序自动生成正式系统用的程序代码的程序自动生成装置,能够实现从画面模型向正式系统完全转移。由此,防止使用模型与客户取得意见一致的规格与实际开发出的画面程序产生不一致,并且,通过具有例如下文说明的构成或者功能实现了削减画面程序再开发工作量这一目的。
(1)预先准备不同执行架构中功能等价的组件。
(2)对于开发者所输入的画面模型信息对应的组件,通过执行架构进行自动选择以及自动补足设定。
(3)记录针对预先准备的组件外的功能补写的信息。
(4)自动生成与执行架构对应的程序代码。
图1是本实施方式所涉及的模型开发支援系统100的整体构成图。如该图所示,本系统100经由网络190与模型开发环境191以及模型审阅环境192连接。模型开发环境191是开发者进行画面模型的制作或者修正的开发环境。模型审阅环境192是用于使模型运行的环境,是用于顾客审阅等的运行环境。模型开发环境191以及模型审阅环境192也可以包含在模型开发支援系统100中。
如该图所示,模型开发支援系统100具有CPU(Central Processing Unit)101、存储器102以及外部接口105,它们经由总线104相互连接。
外部接口105连接有外部存储装置103、输入装置106、输出装置107以及通信装置108。
外部存储装置103保存作为CPU101中执行的处理程序的模型设计信息解析程序110P、组件设定生成程序120P、组件执行架构决定程序130P以及程序代码生成程序140P。而且,外部存储装置103具有输入模型设定信息存储部150、各架构组件一览存储部160和输入画面模型存储部170。
图2表示模型开发支援系统100的功能构成图。模型开发支援系统100具有由CPU101分别执行模型设计信息解析程序110P、组件设定生成程序120P、组件执行架构决定程序130P以及程序代码生成程序140P生成的模型设计信息解析部110、组件设定生成部120、组件执行架构决定部130以及程序代码生成部140。
输入画面模型存储部170中存储输入画面模型数据。在本实施方式中,输入画面模型数据中包含画面模型程序1720(参照图3)、组件设定文件1730(参照图4)和执行架构定义信息1760(参照图5)。这些输入画面模型数据经由输入装置106或者通信装置108输入,通过模型设计信息解析部110向输入画面模型存储部170写入。
图3是画面模型程序1720的说明图。画面模型程序1720是以软件的GUI(Graphical User Interface)为中心记述的源程序,通过能够由本发明的模型设计信息解析部110进行解析地对命名规则或者特定的属性进行定义等依照一定的规则进行记述。图3的例子是基于Flex(R)的画面模型程序。该图A是画面模型程序1720的脚本。该图B表示将执行画面模型程序1720的结果进行显示的模型画面1710的一个例子。字符串输入栏1711、1712以及1713分别由元素1721、1722以及1723定义,为了表示对动态数据进行处理,在id属性中分别输入了数据名称(Shimei、Bukamei、ShainBangou)。按钮1714由元素1724定义,为了表示在点击时产生某种运行,输入了事件名称(SearchEvent)作为点击属性。
图4是组件设定文件1730的说明图。组件设定文件1730是记述与从画面模型程序1720所示的模型画面调用的组件相关的设定的文件。例如,组件设定文件1730具有组件的类别1731、作为用于对组件进行设定的属性数据的组件名称1732、检索关键字输入画面1733、检索条件1734、触发事件1735以及检索结果输出画面1736、以及该组件不能实现的、与顾客所希望的事情相关的顾客要求1737。该图的例子记述了通过图3所示画面模型程序1720的触发事件SearchEvent进行运行的组件的设定。
图5是执行架构定义信息1760的说明图。执行架构定义信息1760是指定正式系统中的执行架构的信息。此处,架构包含物理上以及逻辑上的架构,例如包含如何配置物理上的计算机的构成(例如独立型或者客户机-服务器结构等)、各机器上的执行平台以及在该执行平台上运行的组件的构成等。
如该图所示,执行架构定义信息1760包含架构执行平台设定1761、组件配置概要设定1763以及组件配置详细设定1764。
架构执行平台设定1761针对软件架构中程序的执行平台进行定义。在该图的例子中,设定有作为客户机开发语言1762的Flex(R)、作为服务器开发语言的Java(注册商标)(R)、作为数据库的RDB(Relational DataBase)产品HiRDB(R)。而且,出于使模型直接向正式开发转移这一本发明的目的,客户机开发语言1762由于属于与画面模型的开发语言相同的语言,因此可以不需开发者进行定义。
组件配置概要设定1763以组件的群组单位定义在架构上的哪个位置配置程序。在该图的例子中,设定为画面群组配置在客户机上,逻辑群组以及数据群组配置在服务器上。
组件配置详细设定1764详细叙述关于架构执行平台设定1761以及组件配置概要设定1763的定义的例外。组件配置详细设定1764中,设定组件类别1765、组件的配置1766以及组件的执行平台1767。在该图的例子中,设定为数据群组的暂时数据保管组件配置在客户机上,执行平台为Flex(R)。
此处,图6中表示用于执行模型的架构的模型执行架构A1,图7表示用于执行正式系统的架构的正式执行架构A2。图6的模型执行架构A1是独立型构成,是在基本OS(Operating System:操作系统)、Web浏览器以及AdobeFlash Player(R)构成的执行平台A10中画面群组、逻辑群组以及数据群组的组件程序A12进行运行的架构。图7的正式执行架构A2对应于图5的执行架构定义信息1760。也就是,该图的正式执行架构A2是客户机-服务器构成,在客户机端,在基本OS、Web浏览器以及Adobe Flash Player(R)构成的执行平台A20中,画面群组、以及数据暂时保管的组件程序A21进行运行,在服务器端,在Java(R)虚拟机以及HiRDB(R)构成的执行平台A22中,逻辑群组以及数据群组的组件程序A23进行运行。
返回图2,输入模型设计信息存储部150中保存模型设计信息解析部110对存储在输入画面模型存储部170中的输入画面模型数据进行解析得到的结果。输入模型设计信息存储部150具有画面模型提取信息存储部151、模型构成组件信息存储部152、用户补写信息存储部153和架构信息存储部154。输入模型设计信息存储部150中保存的数据的详细连同模型设计信息解析部110的处理后述。
各架构组件一览存储部160中存储对各种架构预先定义的、包含多个组件类别的组件的规格的组件数据。例如,各架构组件一览存储部160中存储组件一览1610、组件设定属性定义1620、各架构组件代码块组1630和界面生成用代码块1640。
图8是表示能够在本系统中使用的组件的一览的组件一览1610的一个例子。例如该图所示,组件一览1610包含作为数据项目的架构群组1611、项目编号1612和组件类别1613。
架构群组1611是各组件所属的架构的群组,在本实施方式中,具有“画面”、“逻辑”以及“数据”。这与上述的组件程序的群组对应。
项目编号1612是组件类别1613所涉及的组件的识别信息。
图9表示包含各组件的定义信息的组件设定属性定义1620的一个例子。组件设定属性定义1620表示组件的规格。例如,组件设定属性定义1620具有作为数据项目的组件项目编号1621、设定属性名称1622、反复数1623、数据类型1624、默认值1625和表示是否必须的必须标记1626。
设定属性名称1622表示各组件所具有的属性项目。也有的如该图中的“迁移源画面”那样与其它项目具有层次关系。
反复数1623表示设定属性名称1622所示属性项目中、对上位层次项目的反复个数。例如,可定义该图中的“触发事件名称”对于“迁移源画面名称”为n个。
默认值1625是在用户没有设定值时设定的默认值。如果默认值1625设定为“唯一ID”,则意味着该项目由本系统分配任意的唯一ID。另外,默认值1625在等号后连结有设定属性名称的情况下(例如“=迁移源画面名称”),意味着代入与该设定属性名称(迁移源画面名称)相同值。并且,如果默认值1625为通过双引号引用的字符串(例如“AND”),则意味着代入被引用的值本身。
必须标记1626表示设定属性名称1622是否是必须项目。
图10表示各架构组件代码块组1630的一个例子。各架构组件代码块组1630包括模型执行架构用组件以及正式执行架构用组件双方。各架构组件代码块组1630包括不同程序执行平台的程序代码块。各架构组件代码块组1630存储表示各组件执行时的环境的信息。例如,各架构组件代码块组1630具有作为数据项目的组件项目编号1631、执行时配置场所1632、执行平台1633和程序代码块保存场所1634。也就是,通过各架构组件代码块组1630,表示组件项目编号163 1的组件在通过执行时配置场所1632所示的服务器或者客户机的由执行平台1633所示的执行平台上进行运行的组件代码块保存在程序代码块保存场所1634中。
图11表示界面生成用代码块1640的一个例子。界面生成用代码块1640中针对组件间的界面所需的代码块进行定义。例如,在图11的例子中表示的是,在客户机和服务器的执行平台分别为客户机侧界面平台1641和服务器侧界面平台1642时,界面代码块保存场所1643和设定文件样板保存场所1644所示的场所中分别保存有界面代码块和设定文件的样板。
接着,图12是模型设计信息解析部110的详细功能构成图。也就是,如该图所示,模型设计信息解析部110具有画面模型解析部111、数据结构体提取部112、触发事件提取部113、组件设定信息提取部114、用户补写信息提取部116以及执行对象架构设定解析部117。
画面模型解析部111从输入画面模型存储部170读出画面模型程序1720,根据程序文件的扩展名或者文件的标题等特征信息确定画面模型的开发语言。
画面模型解析部111参照着各架构组件代码块组1630(参照图10)判定本系统能否应对输入的画面模型的开发语言。例如,画面模型解析部111根据此处确定的画面模型程序1720的编程语言是否存在于画面用的组件(组件项目编号1631从“V”开始,执行时配置场所1632为“客户机”)的执行平台1633来判定是否是本系统能够应对的开发语言。例如,图3的画面模型程序1720的开发语言为“Flex(R)”。因此,由于各架构组件代码块组1630中存在组件项目编号1631从“V”开始、执行时配置场所1632为“客户机”、执行平台1633为“Flex(R)”的组件,画面模型解析部111判定能够执行画面模型程序1720。
而且,在本实施方式中,是使用各架构组件代码块组1630进行的执行可能性的判定,也可以预先准备好与执行平台有关的其它信息并与其进行对比。
画面模型解析部111在解析程序时,利用接下来说明的数据结构体提取部112以及触发事件提取部113。表示画面模型解析部111的解析结果的信息保存在画面模型提取信息存储部151中。
数据结构体提取部112从画面模型程序1720提取与数据结构体相关的记述。此处,数据结构体中包括例如设在模型画面内的数据的输入项目以及输出项目。数据结构体提取部112检测例如表示结构体的、编程语言的特定属性,提取定义结构体的元素。例如,在图3的画面模型程序1720中,首先将程序文件名称的“ShainSearch”作为最上位的数据结构体提取。进而,将文件中定义的元素中作为“id”属性记述有名称的元素1721、1722、1723作为ShainSearch结构体中所含的动态数据提取。数据结构体提取部112提取在画面模型程序1720中赋予了依照特定规则定义的数据名称的动态数据。
图13表示由数据结构体提取部112提取出的数据结构体1510的一个例子。数据结构体1510具有作为数据项目的画面模型程序名称1511、数据结构体构成1512、表示层次的深度的级别1513、数据类型1514和反复数1515。
返回图12,触发事件提取部113从画面模型程序1720提取与触发事件相关的记述。所谓触发事件是指例如在模型画面内接受来自用户的事件输入的按钮。触发事件提取部113检索例如画面模型程序1720的框架所提供的事件发生定义。例如,如果为Flex(R),则为“click”或者“keyDown”等事件。如果为图3的画面模型程序1720,触发事件提取部113将元素1724作为触发事件提取。
图14表示由触发事件提取部113提取出的触发事件1517的一个例子。触发事件1517具有作为数据项目的画面模型程序名称1518和触发事件名称1519。
返回图12,组件设定信息提取部114参照各架构组件一览存储部160以及输入画面模型存储部170生成从画面模型程序1720调用的组件的设计信息(构成组件设定信息)。
图15表示由组件设定信息提取部114生成的组件的设计信息、即构成组件设定信息1520的一个例子。构成组件设定信息1520具有作为数据项目的组件名称1521、组件类别1522、设定属性名称1523和属性值1524。
例如,组件设定信息提取部114参照组件一览1610(参照图8)确定分配给组件设定文件1730的组件类别1731的项目编号1612。接着,组件设定信息提取部114根据组件设定属性定义1620(参照图9)取得此处确定的项目编号1612(1621)的组件所具有的设定属性名称1622。将此处取得的信息存储到构成组件设定信息1520的各自对应的项目。进而,组件设定信息提取部114取得由组件设定文件1730定义的组件的属性数据1732~1736,保存到构成组件设定信息1520的各自对应的设定属性名称1523的属性值1524。此处,在没有设定组件设定文件1730所对应的属性数据时,使属性值1524为空白。组件设定信息提取部114提取顾客要求1737中记述的信息,保存到用户补写信息存储部153。
另外,组件设定信息提取部114以及用户补写信息提取部116从输入画面模型数据提取与各架构组件一览存储部160中存储的多个组件类别均不能实现的功能相关的记述。
例如,在组件设定文件1730的组件类别1731未登录在组件一览1610(参照图8)的情况、以及与“画面及其它”等的“其它”对应的情况下,组件设定信息提取部114将组件类别1522设定为与各自对应的架构群组1611的“其它”对应的项目编号(V-0,L-0,D-0)。组件类别1522被分类为“其它”的组件的设定属性名称1523以及属性值1524为空白。因此,该组件非本系统自动生成程序代码的对象。组件类别1522被分类为“其它”的组件的属性1732~1736以及顾客要求1737中设定的所有信息被保存到用户补写信息存储部153。
用户补写信息提取部116根据输入画面模型存储部170的画面模型程序1720以及执行架构定义信息1760提取用户超出组件中预先准备的范围独自定义的程序代码以及评论,向用户补写信息存储部153进行写入。此处所谓的独自定义的程序代码是指为了实现本系统生成的部件不能完全应对的细腻的表现等而对组件补写的程序代码。用户补写信息提取部116可通过组件所规定的扩展部位、与生成代码的差分检测来进行提取。用户补写信息可以是例如不直接定义组件的行为,而是面向正式开发以文本记述了用户期望的信息等。
用户补写信息存储部153中保存的信息可通过各种方法输出。例如,可由后述的程序代码生成部140通过实际不进行任何运行的骨架代码或者调用组件时弹出等作为评论包含在执行后续进行某种安装的显示的程序代码内。例如,图27表示输出保存在用户补写信息存储部153中的信息作为调用组件时显示的弹出的例子。另外,用户补写信息存储部153中保存的信息也可面向正式开发作为悬案管理表或者规格明细单输出。由此,能够降低对顾客要求的应对的遗漏。
返回图12,执行对象架构设定解析部117基于执行架构定义信息1760生成表示通过执行架构定义信息1760指定的执行架构所对应的程序执行平台的执行架构设定信息1540。执行架构设定信息1540保存在架构信息存储部154中。亦即,执行对象架构设定解析部117针对正式执行架构生成执行架构设定信息1540。
图18表示执行架构设定信息1540的一个例子。如该图所示,执行架构设定信息1540具有架构定义项目1541和属性值1542。该图A是根据执行架构定义信息1760生成的信息。
图19是通过CPU101执行组件设定生成程序120P时实现的组件设定生成部120的功能构成图。也就是,组件设定生成部120具有对象架构补足部121以及组件设定补足部123。
在不存在执行架构定义信息1760时,对象架构补足部121参照画面模型程序1720生成设想在客户机上执行所有组件的模型的执行架构的执行架构设定信息1540。也就是,在开发者不指定执行架构定义信息1760的情况下,本系统中通过模型用的面向原型开发的架构生成程序代码。图18B表示不存在执行架构定义信息1760时生成的执行架构设定信息1540的例子。此时的编程语言可以与画面模型程序1720相同。
组件设定补足部123进行针对输入画面模型数据的解析结果的补足处理。例如,组件设定补足部123首先验证画面模型解析部111~组件设定信息提取部114的提取结果。例如,组件设定补足部123可参照数据结构体1510、触发事件1517以及构成组件设定信息1520和组件设定属性定义1620验证以下各点。
(1)数据结构体1510的数据类型1514以及反复数1515是否合适
(2)构成组件设定信息1520中例如有无虽然是必须项目但是没有对值进行定义的项目等,作为定义的正确性
(3)组件设定属性定义1620与已提取数据结构体1510以及触发事件1517是否存在矛盾
例如,组件设定补足部123基于该验证的结果对必要部位进行预定的补足处理。例如,组件设定补足部123根据组件设定属性定义1620的必须标记1626判定属性值1524未设定的设定属性名称1523是否为必须项目。然后,在通过必须标记1626设定为必须项目时,将对应的默认值1625设定为属性值1524。
组件设定补足部123在进行了将上述的默认值1625设定为属性值1524的处理之后,再次判定构成组件设定信息1520内通过组件设定属性定义1620配置了必须标记1626的全部必须项目是否设定了值。在某一个必须项目没有被设定值时,将该组件的组件类别1522变更为“其它”。这是因为在未设定必须项目的情况下不能生成该组件的能够执行的程序代码。
例如,图15的构成组件设定信息1520的“触发事件”的“输入画面名称(2)”的属性值1524是未设定的。于是,在组件设定补足部123根据组件设定属性定义1620中定义的“=输入画面名称(1)”这一规则补足默认值后,成为如图16所示。
另外,组件设定补足部123可以根据组件设定文件1730的检索关键字输入画面1733或者检索条件1734的关键字项目名称(ShainSearch、Shimei、Bukamei、ShainBangou)是否存在于数据结构体1510的数据结构体构成1512中来确认匹配状态。或者,组件设定补足部123针对组件设定文件1730的触发事件名称1735(SearchEvent)也可根据是否与触发事件1517的触发事件名称1519一致来确认匹配状态。
再次参照图2,组件执行架构决定部130基于组件的设计信息选择在设定的程序执行平台上运行的程序代码块。程序代码生成部140对选择出的程序代码块设定属性数据,生成程序代码。
组件执行架构决定部130参照构成组件设定信息1520以及各架构组件代码块组1630确定为了实现执行架构设定信息1540中定义的架构所需的程序代码块。组件执行架构决定部130在构成组件设定信息1520中追加此处确定的信息。以下说明组件执行架构决定部130所进行的处理的具体例子。
首先,组件执行架构决定部130根据构成组件设定信息1520(参照图15、图16)确定对象组件。例如,此处将“ShainSearchAction”作为对象。组件执行架构决定部130以对象组件“ShainSearchAction”的组件类别1522“L-1”作为关键字,根据组件一览1610(参照图8)确定对应的架构群组1611“逻辑群组”。接着,组件执行架构决定部130由执行架构设定信息1540(参照图18A)的“组件配置概要设定”确定配置有“逻辑群组”的机器为“服务器”。进而,组件执行架构决定部130确定服务器开发语言为“Java(R)”。
接着,组件执行架构决定部130以通过上述的处理取得的组件项目编号“L-1”、架构定义信息“服务器”、服务器开发语言“Java(R)”这三个信息作为关键字,检索各架构组件代码块组1630(参照图10)的组件项目编号1631、执行时配置场所1632以及执行平台1633,由符合的记录1635取得对应的程序代码块保存场所1634“/logicparts/sv/java/l-1”。
组件执行架构决定部130将通过以上处理确定的、由执行时配置场所以及执行平台构成的执行架构1525以及代码块保存场所1526在构成组件设定信息1520中作为项目追加。图17表示补足了执行架构1525以及代码块保存场所1526后的组件设定信息的例子。
图20是通过CPU101执行程序代码生成程序140P时实现的程序代码生成部140的功能构成图。也就是,程序代码生成部140具有组件执行代码生成部141以及组件间界面代码生成转换部142。
组件执行代码生成部141参照构成组件设定信息1520从代码块保存场所1526取得程序代码块,生成与各组件对应的执行程序代码。例如,组件执行代码生成部141根据构成组件设定信息1520的代码块保存场所1526所规定的场所取得各设定属性名称1523的程序代码块,将属性值1524的值嵌入该代码块,在进行转换的同时生成该组件用的执行程序代码。属性值1524中还包含默认值1625。亦即,组件执行代码生成部141将默认值1625嵌入程序代码块,生成执行程序代码。
组件间界面代码生成转换部142参照构成组件设定信息1520以及界面生成用代码块1640生成组件间的界面程序代码以及界面用设定文件。例如,组件间界面代码生成转换部142参照执行架构1525确定服务器的执行平台以及客户机的执行平台的组合,确定界面生成用代码块1640中与其对应的界面代码块保存场所1643以及设定文件样板保存场所1644,从此取得界面代码块以及设定文件样板。组件间界面代码生成转换部142进而在此处取得的样板文件中设定通过在服务器的执行平台中运行的组件以及在客户机的执行平台中运行的组件规定的调用方式名称以及数据类型等,生成界面用设定文件。另外,组件间界面代码生成转换部142读入画面模型程序1720,针对为了提取信息而规定的特殊记载方法的部分,为了能够在执行平台中编译,进行文本转换。
针对具有以上所说明的构成的模型开发支援系统100进行处理时的处理顺序进行说明。
首先,图21是表示使用本系统100的模型开发整体的顺序的流程图。另外,图22表示生成用于模型执行架构的程序代码情况下的输入输出文件的一个例子。图23表示生成用于正式执行架构的程序代码情况下的输出文件的一个例子。使用图21、图22以及图23主要针对面向本系统100的输入和输出进行说明。
步骤10中,以原型开发为目的,开发者通过模型开发环境191进行画面模型的制作或者修正。此处,生成图22中作为输入信息1701表示的、画面模型程序1720(“ShainSearch.mxml”以及“ShainList.mxml”)和组件设定文件1730(ShainSearchAction以及“MoveSearchToList”)。
而且,“ShainList.mxml”是表示员工一览图像的画面模型程序,“MoveSearchToList”是用于实现从ShainSearch画面向ShainList画面的画面迁移的、组件类别为“画面迁移”的组件设定文件。
步骤20中,基于上述的输入信息1701生成面向模型执行架构的程序代码。此处,生成面向模型执行架构的程度代码而非面向正式执行架构,是因为输入信息1701中不包括执行架构定义信息1760。通过步骤20生成的面向原型开发执行架构的程序代码是图22中作为输出结果1801显示的各程序文件1811~1833。关于步骤20的详细处理,将在下文中叙述。
而且,“ShainSearch.mxml”1811以及“ShainList.mxml”1812分别是将画面模型程序1720的“ShainSearch.mxml”以及“ShainList.mxml”转换后的执行格式的程序。“MoveSearchToList.as”1813是基于组件设定文件1750的“MoveSearchToList.as”生成的画面迁移程序文件。“MoveSearchToList.as”1821是基于组件设定文件1730的“MoveSearchToList.as”生成的检索程序文件。“ShainSearchTmp.as”1831、“ShainListTmp.as”1832以及“ShainData.as”1833是保管根据画面模型程序1720中记述的动态数据的信息生成的数据结构体的程序文件。
步骤30中,开发者在模型开发环境191中创建步骤20中生成的程序,确认运行。
步骤40中,基于步骤30的运行确认结果,判断是否实施顾客审阅。如果开发者判断为实施顾客审阅则进入步骤50,如果判断为不实施审阅,则返回步骤10。
步骤50中,使用模型审阅环境192使通过步骤20生成的程序运行,实施顾客审阅。此时,可以将从顾客得到的评论记录在画面模型程序或者组件设定文件、或者悬案管理表等中,使得日后能够阅览。
步骤60中,基于步骤50的顾客审阅结果,判断是否向正式开发转移。如果判断为向正式开发转移则进入步骤70,如果判断为不向正式开发转移则返回步骤10。
步骤70中,开发者定义正式开发用的正式执行架构定义信息1760(参照图5)。
步骤80中,生成面向正式执行架构的程序代码。步骤80的详细处理顺序与步骤20相同。此处生成的面向正式执行架构的程序代码是图23中作为输出结果1802显示的程序文件1811~1833。
而且,输出结果1802中除了通过步骤20生成的各程序1812、1813、1831、1832,还包含以下的程序等。也就是,输出结果1802中包括将画面版式1710以及组件设定文件1730分别转换后的执行格式的程序“ShainSearch.mxml”1841以及“ShainSearchAction.java”1843、用于在服务器中存在的数据库中定义从画面模型程序1720提取出的数据结构体定义的程序文件“ShainData.dml”1844、用于在不同架构间执行方式的调用等的界面文件“ActionMapping.as”1842、“RemotingConfig.xml”1845。
通过使用本系统100,能够容易地从模型程序转移到正式开发。
接着,基于图24至图26的流程图详细说明步骤20的处理。
图24是表示程序代码生成处理的详细顺序的流程图。
首先,模型设计信息解析部110受理开发者输入的画面模型程序1720、组件设定文件1730以及执行架构定义信息画面1760,保存在输入画面模型存储部170中(步骤200)。
模型设计信息解析部110从通过步骤200受理的信息提取用于设定构成模型的组件的输入模型信息(步骤210)。步骤210的详细处理(图25A以及图25B所示)后述。
接着,组件设定生成部120根据面向原型开发或者面向正式开发这样的执行架构生成组件的设定(步骤220)。步骤220的详细处理(图26所示)后述。
组件执行代码生成部141生成执行程序代码(步骤230)。例如,组件执行代码生成部141读入模型构成组件信息存储部152的构成组件设定信息1520。然后,从记录在构成组件设定信息1520中的代码块保存场所1526取得用于生成的、各程序执行架构组件代码块。进而,嵌入到取得了属性值1524的代码块,在进行转换的同时生成该组件用的执行程序代码。
组件间界面代码生成转换部142生成组件间的界面用代码(步骤240)。例如,组件间界面代码生成转换部142针对通过步骤230生成的各组件的执行程序代码,能够相互协同地参照着界面生成用代码块1640生成界面用代码。另外,从输入画面模型存储部170读入画面模型程序1720,针对用于提取信息而规定的特殊记载方法的部分,为了能够在执行平台中编译,进行文本转换。
接着,图25A以及图25B是表示模型中所含组件的设定信息提取处理的详细顺序的流程图。
模型设计信息解析部110判定输入画面模型存储部170中是否存在执行架构定义信息1760(步骤2101)。在不存在执行架构定义信息1760时(步骤2101:否),跳过步骤2102以及步骤2103。
在存在执行架构定义信息1760时(步骤2101:是),执行对象架构设定解析部117参照执行架构定义信息1760,从执行架构定义信息1760提取执行架构设定信息1540(参照图18(a))(步骤2102)。此处提取出的执行架构设定信息1540保存到架构信息存储部154。
执行对象架构设定解析部117参照界面生成用代码块1640(参照图11),判定本系统能否应对执行架构定义信息1760(步骤2103)。例如,执行对象架构设定解析部117根据输入的执行架构定义的架构执行平台设定1761或者组件配置详细设定1864所记述的客户机和服务器的定义的组合是否存在于客户机侧界面平台1641和服务器侧界面平台1642中进行判定。
根据步骤2102的判定,在本系统不能应对的情况下(步骤2103:否),本系统100输出预定的错误消息名称等,结束处理(步骤2111)。
在本系统能够应对的情况下(步骤2103:是),画面模型解析部111确定画面模型程序1720中所使用的语言(步骤2104)。例如,画面模型解析部111根据画面模型程序1720的程序文件的扩展名或者文件的标题等特征信息确定画面模型的开发语言。表示此处确定的开发语言的信息保存到画面模型提取信息存储部151中。
画面模型解析部111参照各架构组件代码块组1630(参照图10)判定此处确定的开发语言是否是本系统中正在进行应对的语言(步骤2105)。例如,可以通过执行平台1633中是否存在通过步骤2104确定的画面模型的开发语言来判定本系统能否应对。此处,在画面模型的开发语言不与本系统对应时(步骤2105:否),输出预定的错误消息名称等,结束处理(步骤2111)。
接着,针对保存在输入画面模型存储部170中的所有画面模型程序1720,反复执行以下说明的步骤2107至2110(步骤2106)。
画面模型解析部111从输入画面模型存储部1710读入处理对象的画面模型程序1720(步骤2107)。
数据结构体提取部112从处理对象的画面模型程序1720提取数据结构体1510,保存到画面模型提取信息存储部151(步骤2108)。
触发事件提取部113从处理对象的画面版式1710提取触发事件1517,保存到画面模型提取信息存储部151(步骤2109)。
用户补写信息提取部116从处理对象的画面版式1710提取开发者独自定义的程序代码,保存到用户补写信息存储部153(步骤2110)。
在针对所有画面模型程序1720结束上述处理后,组件设定生成部120针对输入画面模型存储部170内的所有组件设定文件1730反复执行以下说明的步骤2113至2120(步骤2111)。由此,从组件设定文件1730提取构成画面模型的构成组件设定信息1520。
组件设定信息提取部114从输入画面模型存储部170读入成为处理对象的组件设定文件1730(步骤2112)。
然后,组件设定信息提取部114判定处理对象的组件设定文件1730是否满足组件设定所需的属性(步骤2113)。
在组件的设定所需的属性不足的情况下(步骤2113:否),本系统100输出用于通知不足的设定信息的预定信息,通知给开发者(步骤2114)。
在组件的设定所需的属性满足的情况下(步骤2113:是),组件设定信息提取部114参照组件设定属性定义1620从处理对象的组件设定文件1730提取构成组件设定信息1520(参照图15)(步骤2115)。
组件设定信息提取部114验证此处提取出的构成组件设定信息1520是否是不具有不匹配,是否是有效的信息(步骤2116)。
如果构成组件设定信息1520中存在不匹配(步骤2117:否),则组件设定信息提取部114输出用于通知检测出的不匹配的预定信息,通知给开发者(步骤2118)。
组件设定信息提取部114将通过步骤2115提取出的构成组件设定信息1520保存在模型构成组件信息存储部152中(步骤2119)。而且,如果通过步骤2116检测出了不匹配,将不匹配信息也一并写入。
用户补写信息提取部116由组件设定文件提取顾客要求(用户追加信息)1737,写入到用户补写信息存储部153(步骤2120)。而且,处理对象的组件设定文件1730中记述的组件类别1731是组件设定属性定义1620中未设定的未定义的组件时,处理对象的组件设定文件1730中记述的信息全部保存到用户补写信息存储部153。
由此,从开发者输入的输入画面模型数据提取出了所期望的信息。
接着,图26是表示生成对应于执行架构的组件的设定的处理顺序的流程图。
对象架构补足部121参照架构信息存储部154判定是否存在与开发者指定的执行架构定义信息1760对应的执行架构设定信息1540(步骤2201)。
在不存在执行架构设定信息1540时(步骤2201:否),判断为以模型执行架构执行程序,对象架构补足部121设定在客户机上执行所有组件的架构(步骤2202)。架构的语言是从画面模型提取信息存储部151读出通过步骤2104提取出的画面模型的开发语言来使用。
组件设定补足部123针对模型构成组件信息存储部152中存储的构成组件设定信息1520的各组件适用从步骤2204至步骤2210的处理(步骤2203)。
组件设定补足部123从模型构成组件信息存储部152读出与一个组件相关的信息(步骤2204)。
组件设定补足部123以通过步骤2204读出的对象组件的组件类别1522为关键字,参照组件一览1610取得组件类别1613。此处取得的组件类别1613无效时,进入步骤2208(步骤2205:否)。
在取得了有效的组件类别1613时(步骤2205:是),组件设定补足部123针对作为对象的组件,在属性值1524为空白的项目中补足预定的默认值(步骤2206)。这如已经说明的那样,对象架构补足部121参照组件设定属性定义1620确定对应的项目的默认值1625,将其补足。
组件设定补足部123进而针对作为对象的组件,判定通过组件设定属性定义1620配置有必须标记1626的必须项目是否全部设定有值(步骤2207)。
在通过步骤2205未能取得有效的组件类别1613时,以及通过步骤2207判断为某一个必须项目为未设定时,由于本系统不能自动生成该组件的程序代码,因此将组件类别1 522设定为“其它”(步骤2208)。
组件执行架构决定部130参照着架构信息存储部154以及各架构组件代码块组1630,选择作为对象的组件的程序代码的自动生成所使用的程序代码块(步骤2209)。通过程序代码块的选择确定例如执行时配置场所1632、执行平台1633以及程序代码块保存场所1634。
组件执行架构决定部130将通过步骤2209确定出的执行时配置场所1632、执行平台1633以及程序代码块保存场所1634作为执行架构1525以及代码块保存场所1525在构成组件设定信息1520中进行追加,写回模型构成组件信息存储部152(步骤2210)。
上述的本发明的实施方式是用于对本发明的说明的举例说明,意图不在于将本发明的范围仅限定为这些实施方式。本领域的技术人员能够不脱离本发明要点地以其它各种方式实施本发明。

Claims (10)

1.一种程序自动生成装置,其特征在于,具备:
存储模型数据的单元,该模型数据包括用于显示画面的模型程序、从所述画面调用的组件的组件类别、用于对所述组件类别的组件设定的属性数据;
存储组件数据的单元,该组件数据包括多个组件类别的组件的规格;
基于所述模型数据以及所述组件数据生成从所述画面调用的组件的设计信息的单元;
存储指定执行架构的信息的单元;
基于所述指定执行架构的信息设定与被指定的执行架构对应的程序执行平台的单元;
存储不同程序执行平台的程序代码块的单元;以及
基于所述组件的设计信息选择在所述设定的程序执行平台上运行的程序代码块,并对选择出的程序代码块设定所述属性数据来生成程序代码的单元。
2.根据权利要求1所述的程序自动生成装置,其特征在于,
在不存在所述指定执行架构的信息时,基于预先设定的模型用执行架构来决定所述程序执行平台。
3.根据权利要求2所述的程序自动生成装置,其特征在于,
所述组件数据中包含对各组件类别的组件设定的属性值的默认值,
在所述模型数据中不包括所述属性数据时,所述生成程序代码的单元对所述选择出的程序代码块设定所述默认值。
4.根据权利要求3所述的程序自动生成装置,其特征在于,
所述程序自动生成装置还具备:从所述模型数据提取与所述组件数据中所含的多个组件类别均不能实现的功能相关的记述的单元,
所述生成程序代码的单元使所述提取出的记述包含在程序代码内,从而在执行从所述画面调用组件时输出所述提取出的记述。
5.根据权利要求2所述的程序自动生成装置,其特征在于,
所述的程序自动生成装置还具备:
用于生成所述模型数据的模型开发环境;以及
使通过所述生成程序代码的单元生成的程序代码以及所述模型程序运行的模型审阅环境。
6.一种计算机进行的程序自动生成方法,该计算机具有存储组件数据的单元和存储不同程序执行平台的程序代码块的单元,该组件数据包括多个组件类别的组件的规格,该程序自动生成方法的特征在于,具备以下步骤:
存储模型数据的步骤,该模型数据包括用于显示画面的模型程序、从所述画面调用的组件的组件类别、用于对所述组件类别的组件设定的属性数据;
存储指定执行架构的信息的步骤;
基于所述模型数据以及所述组件数据生成从所述画面调用的组件的设计信息的步骤;
基于所述指定执行架构的信息设定与被指定的执行架构对应的程序执行平台的步骤;以及
基于所述组件的设计信息选择在所述设定的程序执行平台上运行的程序代码块,并对选择出的程序代码块设定所述属性数据来生成程序代码的步骤。
7.根据权利要求6所述的程序自动生成方法,其特征在于,
在不存在所述指定执行架构的信息时,基于预先设定的模型用执行架构来决定所述程序执行平台。
8.根据权利要求7所述的程序自动生成方法,其特征在于,
所述组件数据中包含对各组件类别的组件设定的属性值的默认值,
在所述模型数据中不包括所述属性数据时,所述生成程序代码的步骤对所述选择出的程序代码块设定所述默认值。
9.根据权利要求8所述的程序自动生成方法,其特征在于,
所述程序自动生成方法还具备:从所述模型数据提取与所述组件数据中所含的多个组件类别均不能实现的功能相关的记述的步骤,
所述生成程序代码的步骤使所述提取出的记述包含在程序代码内,从而在执行从所述画面调用组件时输出所述提取出的记述。
10.根据权利要求7所述的程序自动生成方法,其特征在于,
所述程序自动生成方法还具备:
用于生成所述模型数据的模型开发环境;以及
使通过所述生成程序代码的步骤生成的程序代码以及所述模型程序运行的模型审阅环境。
CN201210031827.XA 2011-04-12 2012-02-13 自动程序生成装置、方法以及计算机程序 Expired - Fee Related CN102736915B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011088609A JP5350428B2 (ja) 2011-04-12 2011-04-12 自動プログラム生成装置、方法及びコンピュータプログラム
JP2011-088609 2011-04-12

Publications (2)

Publication Number Publication Date
CN102736915A true CN102736915A (zh) 2012-10-17
CN102736915B CN102736915B (zh) 2016-12-14

Family

ID=46992475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210031827.XA Expired - Fee Related CN102736915B (zh) 2011-04-12 2012-02-13 自动程序生成装置、方法以及计算机程序

Country Status (3)

Country Link
US (1) US20120266131A1 (zh)
JP (1) JP5350428B2 (zh)
CN (1) CN102736915B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110286894A (zh) * 2019-05-09 2019-09-27 华自科技股份有限公司 脚本生成方法、装置、计算机设备和存储介质
CN110737426A (zh) * 2019-09-06 2020-01-31 上海陆家嘴国际金融资产交易市场股份有限公司 程序块创建方法、装置、计算机设备和存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323418B2 (en) * 2011-04-29 2016-04-26 The United States Of America As Represented By Secretary Of The Navy Method for analyzing GUI design affordances
US9015677B2 (en) * 2011-12-06 2015-04-21 Nice Systems Ltd. System and method for developing and testing logic in a mock-up environment
JP5629355B1 (ja) * 2013-06-11 2014-11-19 三菱電機インフォメーションシステムズ株式会社 ソースプログラム生成装置およびソースプログラム生成プログラム
CN104090779B (zh) * 2014-07-31 2017-12-29 广州视源电子科技股份有限公司 自动配置方法以及云编译系统
US9851949B2 (en) * 2014-10-07 2017-12-26 Kevin D. Howard System and method for automatic software application creation
EP3304338B1 (en) * 2015-06-07 2024-03-06 Wix.com Ltd. System and method for the generation of an adaptive user interface in a website building system
US9886245B2 (en) 2016-02-24 2018-02-06 Helix Data Solutions LLC Software development tool using a workflow pattern that describes software applications
CN108664244B (zh) * 2017-04-02 2021-06-25 北京拓思德科技有限公司 基于位置编码的界面生成方法及系统
CN111538498A (zh) * 2020-04-14 2020-08-14 北京宝兰德软件股份有限公司 一种应用创建方法、装置、电子设备及存储介质
CN113835693B (zh) * 2021-09-15 2024-03-08 欧电云信息科技(江苏)有限公司 代码生成方法、装置、电子设备、存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1196995C (zh) * 2000-10-27 2005-04-13 株式会社东芝 应用软件开发系统及其方法、以及应用软件生成方法
CN100359465C (zh) * 2004-02-18 2008-01-02 富士通株式会社 程序构造方法、程序构造系统及终端设备
WO2011033644A1 (ja) * 2009-09-17 2011-03-24 株式会社三菱東京Ufj銀行 アプリケーション開発支援装置、プログラム及び記録媒体

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3736308B2 (ja) * 2000-07-14 2006-01-18 日本電気株式会社 ソフトウェアコンポーネント自動生成システム
US6978439B2 (en) * 2002-01-10 2005-12-20 Microsoft Corporation Cross-platform software development with a software development peripheral
JP2004302571A (ja) * 2003-03-28 2004-10-28 Nec Corp 画面プログラム生成装置およびこれを用いた画面プログラム生成システム
JP2005196291A (ja) * 2003-12-26 2005-07-21 Fujitsu Ltd ユーザインタフェースアプリケーション開発プログラム、および開発装置
JP2006146434A (ja) * 2004-11-17 2006-06-08 Hitachi Ltd 分散アプリケーションテスト方法及び分散アプリケーションテスト装置
US20060112397A1 (en) * 2004-11-18 2006-05-25 Makaram Raghunandan Cross-architecture software development
US7526759B2 (en) * 2005-04-19 2009-04-28 International Business Machines Corporation Debugging prototyped system solutions in solution builder wizard environment
US20120233589A1 (en) * 2011-03-10 2012-09-13 Infosys Technologies Ltd. Software development kit for blended services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1196995C (zh) * 2000-10-27 2005-04-13 株式会社东芝 应用软件开发系统及其方法、以及应用软件生成方法
CN100359465C (zh) * 2004-02-18 2008-01-02 富士通株式会社 程序构造方法、程序构造系统及终端设备
WO2011033644A1 (ja) * 2009-09-17 2011-03-24 株式会社三菱東京Ufj銀行 アプリケーション開発支援装置、プログラム及び記録媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110286894A (zh) * 2019-05-09 2019-09-27 华自科技股份有限公司 脚本生成方法、装置、计算机设备和存储介质
CN110737426A (zh) * 2019-09-06 2020-01-31 上海陆家嘴国际金融资产交易市场股份有限公司 程序块创建方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
JP2012221380A (ja) 2012-11-12
CN102736915B (zh) 2016-12-14
US20120266131A1 (en) 2012-10-18
JP5350428B2 (ja) 2013-11-27

Similar Documents

Publication Publication Date Title
CN102736915A (zh) 自动程序生成装置、方法以及计算机程序
US9058430B2 (en) Testing a software application interfacing with multiple external software applications in a simulated test environment
US7475289B2 (en) Test manager
CN100426223C (zh) 从多个文件中构建软件产品的方法
CN106445536B (zh) 自动化业务设计管理系统
US20070016557A1 (en) Methods for enterprise-level data and process access and presentation
US20070038963A1 (en) Methods and apparatus for process thumbnail view
US20030233631A1 (en) Web services development method
EP1677243A1 (en) Method and apparatus for metadata driven business logic processing
US20050289524A1 (en) Systems and methods for software based on business concepts
CN103593174A (zh) 可修改的业务对象
EP2300913A1 (en) Methods and systems for developing, debugging, and executing data integration applications
CN101488086A (zh) 一种基于领域模型的软件生成方法及装置
Whiting et al. Creating an iPhone application for collecting continuous ABC data
CN111784108B (zh) 一种主数据管理平台的建模方法和装置
JP2013518321A (ja) パターンベースのユーザインターフェース
US10776351B2 (en) Automatic core data service view generator
JP3577400B2 (ja) システム設計装置及びデータウエアハウス設計システム
US11983219B2 (en) Instructional design tool
KR100656419B1 (ko) 정보시스템 개발장치 및 방법
Vanderdonckt et al. Mocadix: Designing cross-device user interfaces of an information system based on its class diagram
Koch Hypermedia systems development based on the Unified Process
Henderson-Sellers et al. OPEN process support for web development
Leonard et al. SQL Server 2012 integration services design patterns
US8631393B2 (en) Custom database system and method of building and operating the same

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161214

Termination date: 20180213