1数据挖掘技术在软件工程领域中的应用
数据挖掘技术在软件工程领域中的挖掘对象、挖掘技术以及需要协助的软件工程目标三个方面,包含了版本控制信息的挖掘、漏洞检测、执行记录挖掘、开源软件挖掘等。
1.1版本控制信息的挖掘
版本控制信息的挖掘属于软件工程领域中的挖掘对象技术之一。版本控制信息系统的作用就是可以有效确保软件工程项目编程人员所编辑的档案得到统一的管理,进而实现全局数据的更新,是所有软件工程项目开发必须采用的一项技术,用来管理软件工项目开发活动。数据挖掘技术在版本控制信息中的应用,主要是对软件变更历史进行数据挖掘,发现软件系统中不同程序模块之间的相互关系,进而可以预测出系统程序模块存在漏洞的引入方式以及程序未来的发展。通过对版本控制信息的挖掘,可以减少软件系统后期的维护工作,避免由于系统更新而引入缺陷与漏洞,从而提高软件系统的后期维护工作,有利于软件工程项目的后期管理。
1.2软件漏洞检测
软件漏洞检测是数据挖掘技术在软件工程领域中需要协助的软件工程目标之一。软件漏洞检测的目的就是要找出软件系统在开发过程中存在的错误与漏洞问题,对存在的问题进行及时的修改与修复,确保软件系统的质量与安全运行。通常情况下应用数据挖掘技术进行软件漏洞检测主要有五个部分:①要确立软件测试的项目。从用户的角度出发,了解用户都有哪些需求,然后决定软件要进行哪些方面的测试与怎样进行软件测试,制定出软件测试的计划与实施方案;②进行软件系统漏洞库数据信息的收集、清理与转换。采集软件系统的信息与数据,抽取出软件系统中存在漏洞缺陷的数据信息,清理掉系统中无用与多余的数据信息,补充系统中丢掉与缺少的项目数据信息,将系统数据信息转化成信息与知识方式;③选择合适的软件系统数据挖掘信息,然后进行数据信息的验证与训练。通过数据挖掘技术对软件系统数据的训练与测试结果,结合软件工程项目的需求,选择合理的数据挖掘方法;④对软件系统中存在的缺陷漏洞进行分类、定位与描述。将找出的软件系统漏洞运用数据挖掘技术,根据一定的规则进行软件系统漏洞的分类、定位与描述;⑤数据挖掘技术在软件测试项目中的应用。运行数据挖掘技术将挖掘出来的数据信息转化成知识,并将转化后的知识保存到数据库当中,然后对软件系统进行重新测试,确认漏洞现象是否存在,然后将测试后的结果应用到软件开发项目当中。
1.3执行记录挖掘
执行记录挖掘属于软件工程领域中的挖掘技术领域。执行记录挖掘目的就是通过对软件系统的程序执行路径进行分析,发现软件系统程序模块代码之间的相互关联。其运行实质是就通过跟踪软件系统的执行路径实现逆向建模,有利于软件系统程序的理解、跟踪、维护与以及验证。
1.4开源软件挖掘
开源软件挖掘属于软件工程领域中的挖掘对象领域。克隆代码检测是开源软件挖掘技术中常用的方法之一,普遍应用在大多数软件开发源文件当中,进行数据的拷贝与粘贴。采用克隆代码技术可以有效进行代码的拷贝与粘贴,然后运用克隆代码检测技术对代码进行检测,避免软件系统中出现漏洞代码,有利于软件系统的后期维护。
2结语
随着软件工程技术的系统化与复杂化发展,数据挖掘技术的应用给软件开发提供了精确的测量保障,并且取得了良好的效果。由于数据挖掘技术在软件工程领域中的应用处于初级发展阶段,通过对数据挖掘技术在软件工程领域应用的深入研究,有利于数据挖掘技术在软件工程领域的广泛应用,有利于提高数据挖掘技术的发展与创新。
作者:罗韬 罗峰 单位:四川大学计算机学院 西藏军区装备部
1数据挖掘技术在软件工程中的应用
1.1开源软件开发中的数据挖掘
开源软件(OSS)顾名思义就是源代码是开放的软件,这种软件目前大多对客户都是免费的,也正是由于这个原因使得开源软件的控制和管理非常困难,因此,要引进数据挖掘技术帮助开源软件提高质量。如,大阪大学的学生就设计了一个分布式的数据挖掘系统,它不仅能对大规模系统进行挖掘还能对多个开源软件进行挖掘。还有牛津大学设计的数据挖掘系统能实现对系统的开发者与使用者进行跟踪管理,极大地提高了开源软件的质量和使用率。
1.2软件项目管理中的数据挖掘
软件项目管理中的数据挖掘主要体现在两个方面,一个是对组织关系的挖掘一个是对版本控制信息的挖掘。其中,软件项目的管理是一个复杂的工程,对人员组织关系的挖掘主要是对人力资源进行协调和分配。例如,一个工程项目可能有成百上千人参与,在参与过程中人员之间的电子邮件、文档等都会产生交互,交互中极易造成秩序混乱,而数据挖掘技术的使用则可以很好的将工作人员的组织关系进行区分,有利于软件项目管理的顺利进行。此外,数据挖掘技术还体现在对版本控制信息的挖掘。版本控制可以记录文件内容的变化,以方便用户查看版本的修订情况。将数据挖掘技术引入到版本控制信息中可以减少系统后期的维护成本。它能为软件系统的维护提供警示作用,有些挖掘数据能清晰的查找出系统修复记录中的错误,通过查找错误记录使软件的设计者能成功避开很多常见的错误,提高软件项目的管理水平。
1.3程序代码及机构中的数据挖掘
这里所说的程序代码指的是克隆代码,所谓克隆代码就是通过简单的复制和粘贴进行再次使用的代码。对克隆代码的检测也是数据挖掘中应用最早的,目前对克隆代码的检测主要有以下几种方式,基于文本对比方法、基于标识符对比方法、基于度量的方法、基于程序结构表示的方法及运用潜在语义索引等方法。但是对于克隆代码的数据挖掘还不是很成熟,主要是因为数据挖掘时仅考虑了语法信息而忽略了对语义的挖掘。其次,是对横切关注点(Aspect)的挖掘,对Aspect进行挖掘主要是因为有些关注点在程序中的代码非常相似甚至是同一代码段。对于Aspect的挖掘方式有很多,如,对代码文本分析时,可以根据不同的特点可以分为基于文本和类型的分析、形式概念分析方法、基于聚类分析方法及基于自然语言的分析方法等等。对于执行模式进行挖掘时可采用形式概念分析法及基于方法执行关系的挖掘两种方式。对于调用关系分析时,可以采用扇入分析软件探查技术和基于耦合与PageRank度量的方式进行挖掘。最后是在数据库中挖掘有用的代码或构件。目前,常用的方法有通过记录输入-输出关系检索、通过关键词进行索引和挖掘、寻找相似的代码源和语义、基于构建交互关系图的方法及对所需构件进行形式化描述等等,如我们使用的Google、百度等搜索引擎都可以进行数据的检索。
1.4软件故障检测中的数据挖掘
数据挖掘技术还能从程序的执行记录中挖掘到程序的说明(规约)及交互模式,这些都可以对软件故障进行定位和检测。对程序说明的挖掘主要是通过对信息的跟踪进行逆向建模,有利于加强对程序的理解和后续的维护。目前使用较多的挖掘方式有基于规则和基于自动化两种挖掘方式。其中,基于规则的挖掘方法主要是根据程序行为发现一定的规则并用时态逻辑表达式来表达。基于自动化挖掘方式目前较为成熟的有基于自动机抽象表示的API规则挖掘方法。传统的对软件故障进行定位技术采用的是程序切片,但这种技术过于复杂,通常导致定位不准确。后来经过对传统定位方式不断的改进,目前较为成功的是通过程序谱抽象表示出程序的执行轨迹,并将成功的运行与故障的运行进行比较,通过之间的差异来判定故障的来源,以及通过近邻查询的方式进行故障定位等等。这些新式数据挖掘技术的应用极大的提高了软件故障检测的效率和准确性。
2结束语
数据挖掘技术在分析程序代码、软件故障检测、开源软件开发及软件项目管理等方面的广泛应用,有利于提高软件工程的控制和管理。但是目前对于数据挖掘技术的研究还不是很成熟,因此我们要继续加强对软件工程中数据挖掘技术的深入研究,更好的促进软件的开发和管理。
作者:陈建桦 单位:海南师范大学
1黑盒测试与白盒测试
工作中大部分的黑盒测试都可以通过编写代码来实现全自动化的安全测试,这样可以解放人的不断重复性劳动,是一种在做黑盒测试中最常见的方式。把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,这就是白盒测试。白盒测试又称为结构测试或逻辑驱动测试。软件人员使用白盒测试方法,主要想对程序模块进行如下的检查:对程序模块的所有独立的执行路径至少测试一次;对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次;在循环的边界和运行界限内执行循环体;测试内部数据结构的有效性等。白盒测试是一种比较容易找出软件编码中存在的严重问题的方式,他通过通读源代码,来发现整个工程中存在的一些逻辑漏洞,或者一些危险函数的利用。有时候也可以通过监测输入数据与输出数据的中间流程来发现是否存在输入未过滤或者输出不合法等问题。我们以PHP脚本语言问例,当前很多的WEB端软件工程多是用PHP开发完成,而PHP语言存在的危险函数和危险变量则多达几十个如果稍有使用不慎,就会造成较为严重的安全漏洞。在PHP的设置中register_globals=Off,PHP在进程启动时,会根据register_globals的设置,判断是否将$_GET、$_POST、$_COOKIE、$_ENV、$_SERVER、$REQUEST等数组变量里的内容自动注册为全局变量。
2软件测试在软件工程中的意义
软件的测试环节做的好与坏,决定了整个工程的成败。从软件测试和软件可靠性理论入手,对现有的软件可靠性技术进行研究分析从中发现一些问题就是软件测试的主要目的。与此同时要总结出现有可靠性模型的特点并分析出现有可靠性模型所存在的局限性与不足,以方便后续开发程序中注意存在的问题。而对于目前我国软件产业的现状,存在多个开源或者非开源项目均曾经爆出过较为严重的安全漏洞问题。如下是国内某著名开源软件工程中存在的一个存储型跨站脚本攻击的代码。如下函数,解析转化Iframe标签(Iframe标签本身就是个危险标签,不知道要保留这个功能意义何在)如下publicstaticfunctionparseIframe($message,$convertStatus=1){returnpreg_replace("/\[iframe\]([^\[\<\r\n\"']+?)\[\/iframe\]/eis","self::createIfram(e'\\1',\$convertStatus)",$message,self::$_cvtimes);}看正则/\[iframe\(][^\[\<\r\n\”’]+?)\[\/iframe\]/eis知道,是匹配形如[iframe]任意非特殊字符[/iframe]。所以可见[iframe]标签中间的内容是可以任意控制的。匹配后出来的值被放到createIframe中作为第一个参数做了处理,跟进publicstaticfunctioncreateIframe($url,$convertStatus){i(f$convertStatus){$html="<iframesrc=\"$url\"frameborder=\"0\"allowtransparency=\"true\"scrolling=\"yes\"width=\"97%\"height=\"340\"></iframe>";}else{$html="IframeClose:<atarget=\"_blank\"href=\"$url\">$url</a>";}returnself::_pushCod(e$html);}1)判断convertStatus,该参数默认为1,生成的$html是将$url的值直接带入src。所以问题出现了。构造javascript:aler(t1)即可触发该漏洞。我们可以看到生成的HTML代码为,<iframesrc=”javascript:aler(t1)”frameborder=”0”allowtransparency=”true”scrolling=”YES”width=”97%”height=”340”></iframe>当不知情者访问后即可触发跨站脚本漏洞2)当传递的convertStatus的值为0时,生成的$html是将$url的值直接带入href。所以问题同样出现。构造javascript:aler(t2)点击即可触发。我们可以看到生成的HTML代码为,<atarget="_blank"href="javascript:aler(t1)">javascript:aler(t1)</a>点击后仍能触发跨站脚本漏洞由于该款产品在国内用户使用量大概在六百万以上,所以这个问题刚开始爆出来的时候给很多的个人建站用户造成了很大的影响,官方也在第二天及紧急发布安全补丁修复这个问题,但是仍然造成数以万计的使用该程序的站长网站被利用。
3结语
软件测试最终的目的是为了发现软件工程中存在的BUG以及安全漏洞等,从而有效的对整个软件工程中潜在的风险进行改正。
作者:夏天 单位:同济大学软件学院
1数据挖掘技术在软件工程中的应概述
1.1检测漏洞
软件漏洞检测的目的,主要在于及时的找出软件开发中存在的漏洞或错误,确保能够得到尽快的修复和完善,确保软件的质量及可靠性。一般数据挖掘技术应用于软件漏洞的检测,首先需确定对应的软件测试项目,并基于用户的需求,规划出软件测试的具体内容,进而决定该用什么样的方式进行测试,从而制定出对策和计划;然后收集漏洞库数据,实施数据的清理和转换。对所需采集的数据和信息进行分析,选取和软件缺陷相关联的数据集,将多余的、不需要的数据清理后,再对丢失的项目采取补充措施,转换数据属性为数值表示。其次选取恰当的数据模型,进行验证和训练。需结合项目的实际需求,对其挖掘方式进行选择,促使其成为测试集、训练机集,进而比较所有的结果,找出最合理和符合需求的方式。同时还需应用上面所提的方法,描述、定位和分类软件的漏洞,并将漏洞库数据的收集应用到软件的数据库,并将未知漏洞找出,然后结合相应规则描述其漏洞,进一步的分类;并在最后把挖掘出的数据知识用到软件测试的项目中。
1.2挖掘开源软件
开源软件挖掘项目的开发环境具有开放性、全局性和动态性,因此,对于该类软件的开发管理,需和其他的传统软件相区别。通常情况下,比较成熟的开源软件项目,对于参与其中的错误报告、开发者活动和软件的应用具有较为完整的记录。参与开发的人员,能够组成典型的社会网络,但因为其具有的开放性,致使参与的人员处于不断的变化当中。同时对于开源软件中具有的动态性特征的挖掘,可实现开源项目的优质管理。例如,由牛津大学所开发的系统Sima,便可对开源项目的使用者和跟踪者实施系统性的跟踪管理。
1.3挖掘版本控制的信息
版本控制系统的应用,主要是为保证项目参与者共同编辑的同一档案的统一性,以便全局性的更新。当前的软件工程开发应用中,大部分均会应用版本控制系统实施软件开发工作的管理和保护。并且挖掘版本信息控制的应用方式,主要是对变更历史信息的挖掘,其应用可找出不同模块,以及子系统之间所存在的相互依存的关系,并深化对程序中未来变化和引入方式可能存在漏洞的检测。这类挖掘技术的应用,能够有效的将系统后期维护成本降低,避免因为后期变更所产生的漏洞,进而具有对后期的软件维护、警示作用。
2数据挖掘技术在软件工程中的应用方法
2.1关联方法
挖掘技术应用与软件工程中的关联方法,其规则在于发现大量数据中所具有的相关联系及有趣关联。并且关联规则具有两个重要特征,其一为支持度,表示为P(A∪B),表明A、B两个子集在事物集中出现的概率是相同的;其二为置信度,可表示为P(B|A),说明A在事物集中所具有的概率,同样B也会出现。
2.2分类方法
分类方式的应用,主要是对离散值和分类标号进行操作,一般情况下,首先需建立起相应的模型,对其概念集和数据类集进行描述,之后应用模型完成分类。常用的分类方法是判定树法,主要包括神经网络分类法、贝叶斯法、K-最临近法和支持向量机法等。其中判定树法的应用基础为贪心算法,应用自上至下递归的构造方式,对其树、叶子节点等实施相应的类别标号,并确定最终的分类结果。另外常用的判定树法为支持向量机和K-最临近分类法等。K-最临近分类法应用的基本理为:若某个样本位于特征空间中时,应有K个最相似样本的大多数,称为一个类别,并且其样本也归属于这一类别。这类计算方法对于容量较大的自动分类较为适用,若是用以样本容量比较的分类,则很容易导致错误产生。
2.3聚类方法
聚类方式的应用,顾名思义,便是把对象数据分为多个簇或类,并且保证统一类或簇中的数据的相似度较高,同时不同类或簇中的对象具有明显的差别。常用的聚类方法主要有划分方法、基于密度的方法、基于模型的方法、基于网格的方法和层次方法。聚类分析的输入为一组有序对(X,d)或(X,s),其中X所代表的是一组样本,d和s表示的是相异度或相似度。聚类系统的输出为某个分区C={C1,C2,…,Ck},Ci为X子集,也被称为类。本文就划分聚类法为例进行分析,其基本的应用理论为根据所给出的n个对象数据集加以应用。其中划分聚类方法的应用,便为应用构造出k的划分,并且每一个划分区域均代表某一个簇,并且需保证k≤n。k个划分应满足相关的条件。首先应让每个簇中均含一个对象;其次,每个对象有且仅属于某个簇。而给定k的算法,应在结合划分方法,通过迭代的改变来划分,确保每一次的迭代后,均优于未迭代之前,划分最好的标准为统一簇中的对象最为接近,不同簇中的对象差异最明显。
3结束语
由于软件工程的复杂化发展,促使软件的开发更加需要能够量化且测量精准的工具,数据挖掘的应用可较大的满足软件开发者对于这一方面的需求。特别在近年来,数据挖掘技术应用于软件工程,具有较好的经济效益,并且其验证测试,以及开发过程均能为应用者提供可靠的决策信息。因此,应推进数据挖掘技术在软件工程中的应用,促进其更深层次的发展和应用。
作者:雷 蕾 单位:南阳理工学院
1软件危机
软件设计是异常复杂,需要人才和技术支撑,同时还要适应各行各业对计算机的需求,随着社会、经济的发展,这种需求矛盾就会不断加大,就会深化软件危机。软件危机具体指的是在计算机软件前期研发和后期维护上遇到的难以彻底解决的问题:社会、经济发展对软件的需求矛盾;不断增长的软件数量和难以与之配套后期维护的矛盾。软件危机具体有以下因素:用户的要求越来越高,经常对已研发产品不满意;软件开发管理不到位,进程缓慢,成本增加;一味追求软件的高产量,软件质量不过关,相应的后期维护难度加大;人才、技术投入成本提高。总的来说社会、经济发展对软件的需求矛盾;不断增长的软件数量和难以与之配套后期维护的矛盾导致的日益深化的软件危机除了软件自身的原因之外,还与软件开发、维护、管理的方法密切相关。
2软件工程
2.1概要
计算机系统不断发展,从最初的人工管理阶段、文件系统阶段、数据库系统阶段和现在的面向对象的数据库管理阶段;计算机网络也从基础网络,到现阶段的高速智能网络,但是软件研发和维护的两大矛盾,即软件危机还没有得到有效解决,甚至在某种程度还有加深的趋势。早在上世纪中期以后就提出了软件危机的概念和试图解决软件危机的方法。1968年,北约科技委员会就召开了大会,商议解决软件危机的对策,并且第一次提出了“软件工程”的概念。虽然软件研发和维护的两大矛盾,即软件危机还没有得到有效解决,甚至在某种程度还有加深的趋势;但是在软件工程提出开始,至今已经有45年,还是取得了不错的发展。
2.2软件工程的发展
工程,是用在条件不确定,资源受到约束的情况下采取结构化、系统性的方法进行需求设计。软件设计是非常复杂的,需要适应各行各业对计算机的需求,随着社会、经济的发展,这种需求矛盾就会加大;还有开发与维护的矛盾都需要运用工程的概念去应对现有的软件危机。软件工程就是采用工程的概念、原理和方法对软件进行开发、维护和管理,由此可知软件工程主要包含了两大方面的内容,软件开发技术和软件工程项目管理,其中管理就包含了后期维护。软件工程包含了以下基本原理:软件工程是结构化、可定量的工程,要分阶段对软件生命周期进行监控,严格管理;除了计划严格管理之外,还有分阶段进行评审,适时找到缺点并能够改善;严格进行产品质量控制,不能一味追求产品的数量,要质、量兼顾;采用现代、先进的程序设计方法;整个软件研发工程要组合清晰,减少软件硬件和开发人员的依赖性;还要不断改进软件工程实践,使工程化的方法更适应软件的开发与管理。软件前期研发与后期维护,以及整个项目的管理都需要关照软件的生命周期。软件生命周期是指从概念开始一直到最终软件产品停止使用的整个周期,包括了有概念设计、需求分析、具体设计、软件开发、软件测试、安装及使用、维护和最终停止使用的整个周期。
3软件生命周期的管理
3.1项目管理
软件项目管理包括的计划制定和具体实施。在具体软件项目进行之前,首先必须进行软件设计计划的制定,计划是完成软件研发的首要基础;然后才是具体项目的实施与监管,要能根据具体情况,进行合理调整,使得项目取得最优化发展。
3.2需求管理
软件是为用户研发的,没有用户的需求,就谈不上软件的开发与维护,因此必须要充分了解用户的需求,使项目于用户需求之间达到一个很好的平衡。
3.3软件具体研发管理
软件具体研发包括软件设计和软件测试。软件设计是软件研发最重要的一部分,没有具体的设计,就没有产品的研发。随着计算机技术的发展,软件设计方法也在不断发展,现在主要有面向对象的程序设计和面向过程的结构化程序设计等,现有的设计方法也在不断成熟发展,要根据具体的产品及用户的需求选择适合的方法。产品研发完成之后,不是马上投入使用,还需要进行软件测试。软件测试可以发现软件中的错误与疏漏,在软件投入使用之前根据测试结果进行改正,那么就不会影响用户的正常使用。
4总结
社会、经济发展对软件的需求矛盾;不断增长的软件数量和难以与之配套后期维护的矛盾产生的软件危机,在目前来说,虽然没有得到彻底解决,但它不断促使计算机软件的发展与提升。
作者:吕磊 单位:长江大学计算机科学学院
1MDA软件工程
MDA是一种模型驱动的架构,直接的说就是模型的软件工程方式,最大的特点是在软件的开发中是必不可少的一环。在MDA中系统的建模行为驱动软件开发。MDA软件工程是在模型定义、模型转换和元模型工具三者的作用下实施的。模型的含义就是对建模语言的建立与使用,使OCL直接联系建模语言。过去的模型到模型或者模型到代码都是移开手工转换来实现的,但MDA是由工具来实现转换的,转换依靠的是OMG组织控制。
2使用EMF和OCL实现元模型的定义
MDF软件工程与众不同的功能是可为不同的领域建立建模语言,而一般建立建模语言是由OCL和MOF来实现的。MOF用以诠释建模元素之间的结构关系和建模元素的语义,OCL对建模元素的关系进行限制,完成正确的语义表达。在EMF结构下,模型元素的语法特征是由ECore模型来进行描述的,语义的实现是通过OCL表达式上附加ECore模型元素。在模型语法特征上,由YACC或Antlr来分析语言,同时EMF也可实现语言解析,虽然这两种方法在使用上有很强的一致性,但本质上还是存在很大的区别性。
3结合模板与OCL模型的转换方法
在建立模型后还需要相关的处理,在模型与模型或模型与代码之间达到相互转换的效果。OMG组织产生QVT转换类型为模型到模型,但没有模型到代码间的转换,结合模板和OCL模型用以实现模型与代码之间的转换。在传统的软件工程模板转换方式中有许多方法,例如:C语言中的宏以及C++的模版技术都应用了模板。在转换的过程中,利用不同的数据模型结合不同的模版语言及对应的嵌入查询语言。例如:XML数据采集中Xslt模版语言和Xpath嵌入查询语言、关系数据中JSP模版语言和Sql嵌入查询语言等等。MDA软件工程方法中的建模语言对UML语言进行建模元素的剪裁,使用OCL来实现语义的限制,来裁剪建模元素,如图1所示。实现模型的转换OCL在其中起很大的作用,首先,在转换的过程中对UML模型进行加载,简言之,就是对语义及结构的完整性进行检查,检查完整后即采用模板编译来构建JAVA源文件和XML的配置文件。根据框架模型的特点来开发工具。OCL可发挥其检查功能,在语义及结构的完整性检查中实现模型转换中的查询功能。对于UML的一些模型元素完裁剪后,得出问题域的建模语言,但不能从本质上改变UML的语法结构,这是起到在原有的基础上加以裁剪的作用,起到通过OCL来实现语义限制。由此可见,未来MDA软件工程的应用方法研究上,应注重MOF和OCL来建立适应问题域的建模语言,以促进MDA软件工程方法应用的发展。
4结语
在21世纪,科学技术的不断创新与进步,软件工程也有了长足的发展,在越来越多的领域中发展着推动经济增长与科技进步的效用。世界各地都在为软件的开发而奋斗,各个领域也希望通过软件工程来解决眼前的难题,推动行业的进步。在MDA软件工程方法中,最迫切达到解决的是元建模工具的开发与应用,加快MDA软件工程方法的应用,促进软件的快速开发,推动社会的发展。
作者:吴阳波 单位:新余学院数学与计算机科学学院