计算机可执行的模型逆向工程方法及装置制造方法及图纸

技术编号:16178800 阅读:191 留言:0更新日期:2017-09-09 06:28
一种计算机可执行的服务器模型逆向工程方法,该服务器模型逆向工程方法包括以下步骤:接收源代码;接收用于将所述源代码转换为目标模型的转换规则;使用与所述源代码相关的解析器来解析所述源代码,以将具有特定实质结构的解析数据存储在存储器中;将所存储的解析数据转换为元模型;根据所接收的转换规则将所述元模型转换为目标模型;接收所述目标模型,以执行用于生成源代码的配置;读取所述目标模型的元素,以确认所述元素是否用于生成所述源代码;根据所述元素所具有的验证规则对用于生成所述源代码的所述模型元素进行验证;以及根据验证结果生成所述源代码。

【技术实现步骤摘要】
【国外来华专利技术】计算机可执行的模型逆向工程方法及装置
本公开涉及计算机可执行的模型逆向工程方法和装置,并且更具体地,涉及以下的计算机可执行的模型逆向工程方法和装置:定义结构和将程序的源代码转换为模型以自动生成期望类型的模型的规则,因此易于分析并重新设计程序结构。
技术介绍
可以通过使用户直接读取源代码或者通过使用效果分析工具将源代码可视化来对现有的计算机程序进行分析。前一种方法主要取决于分析人员的技术能力,而后一种方法简单并机械地将程序的模型按照原样可视化,使得需要花费费用来将程序处理成期望类型的数据。在这两种方法中,所生成的产品仅仅是参考数据并且不能重复使用。由模型逆向工程表达的产品主要分为两种类型。一种类型是被设计为一般使用的建模语言,其与UML(统一建模语言)对应。另一种类型是由与ChangeMiner对应的效果分析工具使用的专用表达方案。图7a例示了通用建模语言UML的结构元素,并且图7b例示了作为效果分析工具的ChangeMiner。在前一种类型的情况下,虽然其可以提供通用符号以便生成用于各种SW环境和编程语言的模型,但其体积巨大。另外,虽然能够制作粗略的SW模型,但其符号不是由UML提供的源代码信息丢失。因此,不能利用通过逆向工程生成的模型来再次生成可执行的源代码。在后一种类型的情况下,由效果分析工具提供的逆向工程的产品在能够表达各种源代码信息的角度具有高利用率。然而,在后一种情况下,仅仅提供了不能实现二次利用的简单报告,包括将逆向工程的产品用作模型并且基于该模型执行设计,这导致利用率降低。另外,由于产品按照原样显示了源代码的模型,所以其包含了许多不必要的信息。因此,需要提供以下装置:该装置能够通过逆向工程制作所期望的模型形状以在设计中重复使用,利用源代码的所有信息,并且随后产生在各种编程语言中可执行的源代码。使用该装置,能够提高SW开发的便利性及其质量。韩国专利注册No.10-0463833公开了组件自动转换系统和方法,其自动地分析系统的源代码,并且使用面向对象的计算系统中的分析信息将源代码转换为组件。韩国专利注册No.10-0965706公开了能够重新插入代码的计算机装置和代码重新插入方法,该代码重新插入方法通过能够在开发期间的各个步骤中执行的一组可扩展和构造的代码重新插入单元来提供代码单元的重新插入和转换、代码单元的布置和执行。
技术实现思路
技术课题本公开的一实施方式提供了一种计算机可执行的服务器模型逆向工程方法和装置,该服务器模型逆向工程方法和装置能够将现有的源代码转换为期望类型的模型以易于执行程序的分析、结构理解和重新设计。本公开的另一实施方式提供了一种计算机可执行的模型逆向工程方法和装置,该模型逆向工程方法和装置能够在模型中没有任何信息丢失地表达源代码的所有信息,并且仅使用模型来确认源代码的所有内容。本公开的又一实施方式提供了一种计算机可执行的模型逆向工程方法和装置,该模型逆向工程方法和装置能够将源代码转换为抽象格式的表达以抽象地表达所有信息,而不受限于准备源代码的编程语言。本公开的又一实施方式提供了一种计算机可执行的模型逆向工程方法和装置,该模型逆向工程方法和装置能够使用模型来生成执行与各种编程语言相同的功能的程序。技术解决方案根据本公开的实施方式,提供了一种计算机可执行的模型逆向工程方法,该方法包括以下步骤:(a)接收源代码;(b)接收用于将所述源代码转换为目标模型的转换规则;(c)使用与所述源代码相关的解析器来解析所述源代码,以将具有特定实质结构(materialstructure)的解析数据存储在存储器中;(d)将所存储的解析数据转换为元模型;以及(e)根据所接收的转换规则将所述元模型转换为目标模型。根据一实施方式,该方法还可以包括以下步骤:(f)按照适合于统一建模语言(UML)标准的形式再对转换后的目标模型进行转换,以被存储在文件中。根据一实施方式,所述步骤(b)可以包括以下步骤:接收由源转换规则、模型转换规则、命名规则和关系规则配置的转换规则。这里,所述步骤(e)可以包括以下步骤:根据所述转换规则来指定并转换所述源代码的特定元素或所述目标模型的特定元素。根据一实施方式,所述步骤(c)可以包括以下步骤:根据所述源代码的编程语言类型将所述源代码解析为具有不同实质结构的数据。根据一实施方式,所述步骤(d)可以包括以下步骤:独立于源代码类型和编程语言类型而将所述解析数据转换为按照特定实质结构显示所述源代码的所有元素的元模型。根据一实施方式,该方法还可以包括以下步骤:(g)将无关的源代码排除在外,以便不根据所述转换规则进行转换。根据一实施方式,该方法还可以包括以下步骤:(h)接收用于不能用UML表达的源代码信息的单独转换规则。在另一实施方式中,所述步骤(h)还可以包括以下步骤:针对不能用所述UML表达的所述源代码信息,在消息生命线、异常生命线、验证生命线或代码生命线中的至少一个中生成消息。根据一实施方式,该方法还可以包括以下步骤:验证所述源代码的所有信息是否被包括在所述目标模型中。根据一实施方式,所述步骤(e)可以包括以下步骤:(e-1)根据所接收的转换规则将所述元模型转换为源模型;(e-2)接收用于将所述源模型转换为所述目标模型的模型至模型转换规则;以及(e-3)根据所述模型至模型转换规则将所述源模型转换为所述目标模型。根据一实施方式,该方法还可以包括以下步骤:(i)接收所述目标模型,以执行用于生成源代码的配置;(j)读取所述目标模型的元素,以确认所述元素是否用于生成所述源代码;(k)根据所述元素所具有的验证规则对用于生成所述源代码的模型元素进行验证;以及(l)根据验证结果生成所述源代码。根据一实施方式,所述步骤(i)可以包括以下步骤:注册所述目标模型的元素和针对相应元素的转换规则,并且指定所述转换规则的执行条件以执行所述配置。根据本公开的实施方式,提供了一种模型逆向工程装置,该装置包括:存储器,所述存储器被配置成将模型逆向工程可用的程序存储在所述存储器中;以及处理器,所述处理器被配置成执行所述程序,其中,所述处理器使用解析器来将所接收的源代码解析为具有特定实质结构的解析数据,将解析后的数据转换为元模型,根据所接收的转换规则将所述元模型转换为目标模型,并且使用转换后的目标模型生成源代码。根据一实施方式,所述处理器可以接收源代码和用于将所述源代码转换为目标模型的转换规则,并且将具有解析后的特定实质结构的解析数据存储在存储器中。在另一实施方式中,所述处理器可以根据所述源代码的编程语言类型将所接收的源代码解析为具有不同类型的实质结构的数据。根据一实施方式,所述处理器可以独立于源代码类型和编程语言类型而将所述解析数据转换为按照特定实质结构来显示所述源代码的所有元素的元模型。在另一实施方式中,所述处理器可以接收用于不能用UML表达的源代码信息的单独转换规则。根据一实施方式,所述处理器可以根据将所接收的源模型转换为所述目标模型的模型至模型转换规则将所述源模型转换为所述目标模型。在另一实施方式中,所述处理器可以接收由所述源模型的限定名和所述目标模型的限定名配置的模型至模型转换规则。根据一实施方式,所述处理器可以接收所述目标模型以执行用于生成源代码的配置,读取所述目标模型的元素以确认所述元素是本文档来自技高网
...
计算机可执行的模型逆向工程方法及装置

【技术保护点】
一种计算机可执行的模型逆向工程方法,该模型逆向工程方法包括以下步骤:(a)接收源代码;(b)接收用于将所述源代码转换为目标模型的转换规则;(c)使用与所述源代码相关的解析器来解析所述源代码,以将具有特定实质结构的解析数据存储在存储器中;(d)将所存储的解析数据转换为元模型;以及(e)根据所接收的转换规则将所述元模型转换为目标模型。

【技术特征摘要】
【国外来华专利技术】2014.11.27 KR 10-2014-0167334;2015.11.20 KR 10-2011.一种计算机可执行的模型逆向工程方法,该模型逆向工程方法包括以下步骤:(a)接收源代码;(b)接收用于将所述源代码转换为目标模型的转换规则;(c)使用与所述源代码相关的解析器来解析所述源代码,以将具有特定实质结构的解析数据存储在存储器中;(d)将所存储的解析数据转换为元模型;以及(e)根据所接收的转换规则将所述元模型转换为目标模型。2.根据权利要求1所述的方法,该方法还包括以下步骤:(f)按照适合于统一建模语言UML标准的形式再对转换后的目标模型进行转换,以被存储在文件中。3.根据权利要求1所述的方法,其中,所述步骤(b)包括以下步骤:接收由源转换规则、模型转换规则、命名规则和关系规则配置的转换规则。4.根据权利要求3所述的方法,其中,所述步骤(e)包括以下步骤:根据所述转换规则来指定并转换所述源代码的特定元素或所述目标模型的特定元素。5.根据权利要求1所述的方法,其中,所述步骤(c)包括以下步骤:根据所述源代码的编程语言类型将所述源代码解析为具有不同实质结构的数据。6.根据权利要求1所述的方法,其中,所述步骤(d)包括以下步骤:独立于源代码类型和编程语言类型而将所述解析数据转换为按照特定实质结构来显示所述源代码的所有元素的元模型。7.根据权利要求1所述的方法,该方法还包括以下步骤:(g)将无关的源代码排除在外,以便不根据所述转换规则进行转换。8.根据权利要求1所述的方法,该方法还包括以下步骤:(h)接收用于不能用UML表达的源代码信息的单独转换规则。9.根据权利要求8所述的方法,其中,所述步骤(h)还包括以下步骤:针对不能用所述UML表达的所述源代码信息,在消息生命线、异常生命线、验证生命线或代码生命线中的至少一个中生成消息。10.根据权利要求8所述的方法,其中,所述步骤(h)还包括以下步骤:验证针对不能用所述UML表达的所述源代码信息,在消息生命线、异常生命线、验证生命线或代码生命线中的至少一个中生成消息。11.根据权利要求1所述的方法,其中,所述步骤(e)包括以下步骤:(e-1)根据所接收的转换规则将所述元模型转换为源模型;(e-2)接收用于将所述源模型转换为所述目标模型的模型至模型转换规则;以及(e-3)根据所述模型至模型转换规则将所述源模型转换为所述目标模型。12.根据权利要求1所述的方法,该方法还包括以下步骤:(i)接收所述目标模型,以执行用于生成源代码的配置;(j)读取所述目标模型的元素,以...

【专利技术属性】
技术研发人员:金相润吴种根郑在珉朱成敏
申请(专利权)人:乐金信世股份有限公司
类型:发明
国别省市:韩国,KR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1