一种基于模型转换由QVT-R语言生成midCore脚本的方法

    公开(公告)号:CN106951305B

    公开(公告)日:2020-07-31

    申请号:CN201710180952.X

    申请日:2017-03-24

    Applicant: 南京大学

    Abstract: 本发明基于模型转换由QVT‑R代码生成midCore脚本的方法,步骤1对QVT‑R语言进行设计和裁剪;步骤2获取符合步骤1规则面向数据转换的QVT‑R代码;步骤3通过Xtext为QVT‑R语言建模,构建编辑器、解析器及语法分析树;步骤4利用Xtend根据步骤3匹配得到的语法分析树,解析QVT‑R代码语义,并生成对应的midCore语句;步骤5将步骤2获得的QVT‑R代码作为输入,转换引擎生成midCore脚本。本发明将描述数据转换的QVT‑R代码自动转换成midCore脚本,降低了使用midCore程序成本,减少了编写midCore代码缺陷,更直观描述数据变换逻辑,降低大数据处理难度和成本。

    一种由转换原语生成Spark代码的方法

    公开(公告)号:CN106843858B

    公开(公告)日:2020-06-09

    申请号:CN201611252903.4

    申请日:2016-12-30

    Applicant: 南京大学

    Abstract: 本发明公开了一种由转换原语生成Spark代码的方法,包括步骤:步骤10:设计表示数据模型变换的转换原语语法;步骤11:输入一个数据模型变换的原语文件,作为代码转换器的输入文件;步骤12:利用Xtext实现代码生成器的文法构造,完成转换原语的语法解析;步骤13:利用Xtend实现代码生成器的转换规则,建立转换原语与Spark代码之间的映射;步骤14:将模型变换的原语文件输入代码生成器;步骤15:得到输入、输出数据类和转换规则的Spark代码;本发明将一组描述数据转换的转换原语生成具有相同转换操作的Spark代码,降低数据平台开发人员使用Spark平台的复杂性,简化数据转换过程,降低基于Spark平台的大数据转换实现成本。

    一种基于API文档的约束自动生成方法

    公开(公告)号:CN106873973B

    公开(公告)日:2020-05-08

    申请号:CN201611252798.4

    申请日:2016-12-30

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于API文档的约束自动生成方法,包括如下步骤:首先输入一个URL;提取网页中类和函数的文字描述;对提取的句子进行一定的分析;然后使用NLP技术为每个句子生成一个树结构;识别树结构中的参数和结构生成树的中间表示形式;基于中间表示形式定义约束模板;最后遍历树结构自动生成相应的约束;本发明主要特点是通过API文档自动生成API函数的约束,方便程序员更好的理解API函数,并且能够弥补现有代码分析工具分析API函数的不足,使得代码分析工具能更好的分析源代码。

    一种界面草图的图形界面控件图像识别的方法和装置

    公开(公告)号:CN110766697A

    公开(公告)日:2020-02-07

    申请号:CN201910981782.4

    申请日:2019-10-16

    Applicant: 南京大学

    Abstract: 本发明公开了一种界面草图的图形界面控件图像识别的方法和装置。该方法对输入的图像进行预处理后,通过对预处理后的图像进行递归分割,对各分割后的图像识别边缘矩形框,然后识别边缘矩形框内的图元标识,根据图元标识对应的控件种类识别出各种类型的控件,并根据边缘矩形框的位置确定该控件在界面上的位置,结合递归的层次关系组成用以表示控件间的层次布局的控件布局树,从而便于设计人员进行界面布局设计。

    一种基于模型转换的从iOS到Android的跨平台页面转化方法

    公开(公告)号:CN107729011B

    公开(公告)日:2019-09-20

    申请号:CN201711015000.9

    申请日:2017-10-25

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于模型转换的从iOS到Android的跨平台页面转化方法,分为两个部分:①对应模型生成;②模型匹配转化。本发明使用了模型学习的方法,通过学习已有的具有Android和iOS两个版本的应用,构建了一个存放着模型对应关系的数据集合。对于一个需要转化的具有Storyboard的iOS工程,将其进行模型抽取并通过匹配算法转化所得模型。此外,本发明的思路会对其他的工程设计有着借鉴意义。

    一种基于IFML的Android开发建模方法

    公开(公告)号:CN106126213B

    公开(公告)日:2019-06-04

    申请号:CN201610432224.9

    申请日:2016-06-16

    Applicant: 南京大学

    Inventor: 张天 潘敏学 宋建

    Abstract: 本发明公开了一种基于IFML的Android开发建模方法,1)IFML针对移动平台进行扩展,基于移动平台的扩展进一步针对Android平台进行扩展,确定并抽象出Android平台应用的整体运行流程;2)使用交互流建模语言IFML针对移动平台的扩展,对步骤1)中Android应用整体运行流程进行初步交互流建模;3)IFML针对移动平台扩展,对Android应用平台进行进一步扩展,使用针对Android应用平台扩展的IFML,进行面向实现的交互流建模;4)对步骤3)中的Android应用平台的交互流模型,结合项目需求和Android版本信息,完成应用开发;使用标准IFML对Android应用的整体运行流程中各种元素建立交互流模型,这个模型是粗粒度并且是高度抽象的,模型具有了移动平台的概念,体现出移动平台的特点。

    一种基于扩展的IFML的移动应用的测试用例生成方法

    公开(公告)号:CN106227667B

    公开(公告)日:2019-03-19

    申请号:CN201610607871.9

    申请日:2016-07-28

    Applicant: 南京大学

    Abstract: 本发明涉及基于扩展的IFML模型的移动应用的测试用例生成方法,先建立模型,即针对待测试的移动应用绘制出其对应的IFML模型;建立模型所使用到的IFML,是在原IFML标准基础上,加入了针对移动应用建模的扩展内容,包括针对视图容器增添了扩展子类型工具栏ToolBar和屏幕容器,针对视图组件增添了扩展子类型移动控件,针对事件Event增添了扩展子类型移动端系统事件,移动端事件和移动端行为活动事件,针对行为活动增添了扩展子类型移动端行为活动。按照选定的测试覆盖准则生成符合要求的测试用例。

    一种基于JPF的Java代码SSA单路径的生成方法

    公开(公告)号:CN106610898B

    公开(公告)日:2019-01-04

    申请号:CN201611233490.5

    申请日:2016-12-28

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于JPF的Java代码SSA单路径的生成方法,其特征是包括如下步骤:步骤10:输入.java文件和.jpf文件,存放在src目录下;步骤11:对.java文件进行代码插桩,以便获得path condition;步骤12:编译得到.class文件,存放在bin目录下;步骤13:从.jpf文件获得JPF执行的的相关参数;步骤14:使用JPF的jpf‑symbc模块对.class文件进行符号执行,获取指定方法中的可达的单路径,根据插桩信息提取出path condition;步骤15:使用JDT AST修改单路径代码的AST,将单路径转化为SSA的格式;步骤16:将SSA格式的单路径以及path condition封装成符合Java语法规范的Java类,存放在path目录下,作为输出。

    一种基于约束求解的代码搜索方法

    公开(公告)号:CN107992324A

    公开(公告)日:2018-05-04

    申请号:CN201711405834.0

    申请日:2017-12-22

    Applicant: 南京大学

    Abstract: 本发明公开了一种基于约束求解的代码搜索方法,其具体步骤为:步骤一、从开源社区中获取开源项目;步骤二、使用JPF和JDT分析源代码,将其转化为SSA格式;步骤三、使用JDT分析SSA格式的代码,将其转化为约束;步骤四、将源代码与生成的约束一一对应,构建代码-约束库;步骤五、构建代码搜索系统,帮助用户搜索代码。该方法的主要特点是基于约束求解的方法解决代码搜索问题,并对循环语句和类成员变量进行了处理,弥补了以往工作的不足,并且大大提高了代码搜索的准确率,使得程序员在软件开发过程中可以搜索需要的代码,加以借鉴或复用,提高软件开发效率和质量。

    一种基于IFML的Android开发建模方法

    公开(公告)号:CN106445539A

    公开(公告)日:2017-02-22

    申请号:CN201610874410.8

    申请日:2016-09-30

    Applicant: 南京大学

    CPC classification number: G06F8/20 G06F8/315 G06F8/38

    Abstract: 一种基于IFML的Android开发建模方法,包括如下步骤:1)当IFML针对移动平台进行扩展,基于移动平台的扩展需要首先针对Android平台进行扩展,确定并抽象出Android平台应用的整体运行流程;2)使用交互流建模语言IFML针对移动平台的扩展,对步骤1)中Android平台应用中整体运行流程进行初步交互流建模;3)IFML针对移动平台扩展,对Android平台应用进行进一步扩展,使用针对Android平台应用扩展的IFML,进行面向实现的交互流建模;针对Android平台进行IFML的扩展,扩展后对Android应用运行流程进行描述刻画,得到的模型信息能够帮助Android开发人员进行应用的开发。

Patent Agency Ranking