发明名称 一种基于逆向工程的模型库构造方法
摘要 本发明公开了一种基于逆向工程的模型库构造方法。该方法包括如下步骤:通过网络爬虫从互联网上抓取开源项目的源代码;清理抓取的源代码获取有效的源代码文件;对有效的源代码文件逆向工程分析构建初始的UML类图;对初始的UML类图进行精化处理得到精简的UML类图;将精简的UML类图保存至图数据库中。本发明可以将互联网上大量的源代码转换成为UML类图模型,并将这些模型精化后存入到非关系数据库,实现了模型库的构造。通过对逆向工程的进一步精化使得本发明产生的类图模型包含有更多的代码结构信息,较其他方法更精确。
申请公布号 CN104391706A 申请公布日期 2015.03.04
申请号 CN201410720708.4 申请日期 2014.12.02
申请人 南京大学 发明人 张天;许涵斌;李宣东
分类号 G06F9/44(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 江苏银创律师事务所 32242 代理人 孙计良
主权项 一种基于逆向工程的模型库构造方法,其特征在于,包括如下步骤:S1:通过网络爬虫从互联网上抓取开源项目的源代码;S2:清理抓取的源代码获取有效的源代码文件;S3:对有效的源代码文件逆向工程分析构建初始的UML类图;S4:对初始的UML类图进行精化处理得到精简的UML类图;S5:将精简的UML类图保存至图数据库中;其中,所述步骤S4包括如下步骤:S41:对源代码进行静态语义分析构建抽象语法树;S42:从抽象语法树中找出符合特定规则的结构,并从初始的UML类图中提取符合特定规则的结构所对应的模型元素;S43:将提取的模型元素组成精简的UML类图。
地址 210000 江苏省南京市鼓楼区汉口路22号