goback
月期刊咨询网
当前位置:首页>>软件开发论文>>正文

软件开发论文范文参考


所属栏目:软件开发论文
发布时间:2014-02-09 16:56:29  更新时间:2014-02-09 16:49:28

已签订领域:化学工程/制药,医学题目:**作为抗癌剂***催化剂**取代苯丙***SCI四区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:用**电***生物传感器**癌症**SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:**氧化石墨烯纳米***材料的生物传感器***结肠癌生物**癌胚****SCI二区 直击了解更多选题

已签订领域:环境科学-公共卫生题目:聚合物纳米***a-硫辛酸***在神经炎症***应用***临床分析SCI二区 直击了解更多选题

已签订领域:计算机视觉/遥感/智能驾驶/汽车题目:**深度学习***高分辨率遥感***车辆检***SCI三区 直击了解更多选题

已签订领域:企业管理题目:社会交流***领导***倾向***方向SSCI,SCI三区,二区 直击了解更多选题

已签订领域:企业管理题目:**中小企业社交媒体****可持续绩效***因素探析SSCI,SCI三区,二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:利用硫氨酸***石墨烯纳米***电化学***传感器实现癌胚抗原***SCI二区 直击了解更多选题

已签订领域:环境科学,公共卫生题目:基于抗***纳米复合***高性能***早起癌症诊断***SCI二区 直击了解更多选题

已签订领域:经济,能源题目:***政治冲突****绿色金融、金融**、气***化***SCI四区 直击了解更多选题

已签订领域:经济,能源题目:冲***中能源不安全对***和环境***SCI四区 直击了解更多选题

已签订领域:教育题目:大学生***社交媒体***成绩影响***SSCI三区 直击了解更多选题

已签订领域:教育题目:巴基斯坦***学习实施的***的**SSCI二区 直击了解更多选题

已签订领域:教育题目:大学生对****下网络教学**思***SSCI二区 直击了解更多选题

已签订领域:教育题目:**教师和学生对影响***医疗**效果的****看法SSCI三区 直击了解更多选题

已签订领域:计量经济学题目:**货币、黄金、**和美国***的波动***相互依赖性:**数据的分析SSCI一区 直击了解更多选题

已签订领域:计量经济学题目:东南亚***内**趋同***中等收入**:新**的***SSCI二区 直击了解更多选题

已签订领域:建筑,历史题目:历史景点在***旅游发***中的***影响**(**研究:**历史***)SSCI,SCI一区 直击了解更多选题

已签订领域:领导力,管理题目:量化**领导对角色绩效***响:**冲突与工作自主性***作用SCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:数字***环境对学生学习成绩***:游戏**和***现实在教育***作用SSCI四区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***续决策之间的***:创新***识的**作用SSCI二区 直击了解更多选题

已签订领域:信息技术,教育题目:课程**对大学生***发展的影响:学习习惯和***的***作用SSCI一区 直击了解更多选题

已签订领域:信息技术,教育题目:信息技术***与可持续决策**:高等***学生认知***作用SSCI二区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语****学**与人工智能****学习SCI三区 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐**对学生成绩***的影响SCI三区 直击了解更多选题

已签订领域:人体工程,心理学题目:基于预先处理模型***模式人体工程学***女生肌肉骨骼***预防行为*** 直击了解更多选题

已签订领域:人体工程,心理学题目:制定一个***人体工程学**,以识别、优先考虑***职业压力源的*** 直击了解更多选题

已签订领域:人体工程,心理学题目:多重工作**压力和工作***:***工效学方法的混合方法*** 直击了解更多选题

已签订领域:数学,经济题目:数学模型***结构调整和经济转型****研究 直击了解更多选题

已签订领域:数学,经济题目:***时间**数学模型在***媒体营销**中的应用*** 直击了解更多选题

已签订领域:数学,经济题目:***时间**模型在***物流运**能力***研究 直击了解更多选题

已签订领域:数学,经济题目:碳****经济的数学模型****研究 直击了解更多选题

已签订领域:农村经济题目:农****社区**发展***分**SCI四区 直击了解更多选题

已签订领域:农村经济题目:创业***对乡村****发展的****SCI四区 直击了解更多选题

已签订领域:农村经济题目:农村创业****的空间*****究SCI四区 直击了解更多选题

已签订领域:医学,电化学题目:纳米颗粒*****及其在癌症****和重金属*****检测中的应用SCI三区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****前列腺癌药物氟****检测方法的*****腺癌治疗SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:气海***********金纳米颗粒的新型****************粘土及其对胃癌********************抗癌SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于抗***********GCE纳米***********材料的高性能*******************早期癌症SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:用******电化学生物传感器*****癌症***************SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:基于*****石墨烯纳米****材料的生物传感******用于测定结肠*****生物*****SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:聚合***纳米复合电极*****疏辛酸电化学检测*********SCI二区 直击了解更多选题

已签订领域:医学,电化学题目:利用****酸/**糖**石墨烯纳米复合修饰的电化学*****SCI二区 直击了解更多选题

已签订领域:环境能源,绿色投资题目:环境能源、绿色投资、城市化和环境类方向SCI三区 直击了解更多选题

已签订领域:计算机,英语教学题目:英语教学**人工智能***习SCI 直击了解更多选题

已签订领域:计算机,音乐题目:评价**和音乐形式*学生***影响SCI三区 直击了解更多选题

已签订领域:经济,绿色投资题目:***能源效率***化之间的***SCI三区 直击了解更多选题

已签订领域:经济政策题目:***阐明**印度经济***的关系SCI三区 直击了解更多选题

已签订领域:经济,金融题目:***国家的能源***重***SCI 直击了解更多选题

已签订领域:经济,金融投资题目:***融新之间***直接投资***SCI三区 直击了解更多选题

已签订领域:经济,数学,统计学,管理学题目:非***想重限制下***袭评价***SSCI四区 直击了解更多选题

已签订领域:经济,数字,管理学题目:基干***生产系统***SSCI四区 直击了解更多选题

已签订领域:农业,土壤科学题目:不同***有机覆盖***养分循环SSCI 直击了解更多选题

已签订领域:电力与能源系统,管理题目:pv***氢定价的***随***型稀SSCI,SCI二区 直击了解更多选题

已签订领域:建筑规划,计算机题目:使用***因子分析法***可持续***SCI三区 直击了解更多选题

已签订领域:工程技术,纺织工程,材料科学题目:甘***淀粉酶的提取***退浆中的应用SCI四区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:饲料***镉毒性的交互***生长***病理学***SCI二区 直击了解更多选题

已签订领域:渔业,鱼类生理学题目:****鱼水源***起的生******SCI三区 直击了解更多选题

已签订领域:金融,环境经济题目:*****预算在能效、绿色***的作用SCI 直击了解更多选题

已签订领域:应用数学/计算物理题目:***非线性库***自相位调制***SCI三区 直击了解更多选题

已签订领域:计算机,医学检测题目:***COVID-19***力***算法***决策SCI三区 直击了解更多选题

已签订领域:计算机,物联网,智慧城市题目:基于***物联网****算法SCI三区 直击了解更多选题

  本文所涉及的设计模式是指Gamma等人在文献[1]中提出的23个通用的设计模式。Gamma等从动机、目的、参与者、协作、应用效果、解决方案几个方面描述设计模式。为了便于软件工程师在实际应用过程中理解、选择和实现设计模式,除解决方案部分外,设计模式的动机、目的、参与者、协作、应用效果等项内容通常以非形式化的方式描述。解决方案部分使用OMT图描述一个通用的设计结构。从源码中抽取设计模式必然要求对其进行描述,采用某种表示方法如PROLOG规则、抽象语法树,约束可满足问题(CSP)的变量和约束条件等,对设计模式所表达的对象结构和行为进行抽象,并将这些设计模式表示存储在便于修改和维护的设计知识库中。

  【摘要】本文主要研究如何从源代码中自动抽取出设计模式,并研究了相关的技术。论文阐述了自动抽取技术的过程,首先是结构分析,通过分析XMI文档,提取出类的结构特征,接着是动态分析。运用结构分析阶段后将产生一些模式候选项,这些模式候选项是一些由类和方法组成的结构,将作为动态分析的输入,动态分析监控模式候选项的动态执行的情况,得出进一步的结果。论文的结论就是作为抽取设计模式的目的是可以自动(或半自动)抽取任何JAVA程序中的设计模式。

  【关键词】设计模式,结构分析,行为分析,XMI

  一、引言

  设计模式是面向对象设计的一个高级抽象,从程序理解和软件维护的观点出发,一个设计模式提供了模式结构中每个类的角色信息和模式各组成元素的关系以及模式组成元素和系统其余部分关系的信息。因此,源码中设计模式的抽取是逆向工程中的一个关键问题。对于缺少分析和设计文档的软件系统来说,从它的源码中抽取设计模式有助于软件系统的理解和文档化,增强软件系统的可维护性。进一步,能识别软件系统中引入设计模式后可以改进的地方并进行相应的修改,提高了源码质量,从而达到软件重构的目的。

  二、技术现状

  设计模式比源代码更高层次地描述了软件系统,设计模式也是描述部分设计的一种方式。设计模式是一种表示设计结构的技术,通过掌握设计的思路设计模式保存了设计的关键信息,设计模式定义了类、实例、角色、关系和责任分配,一个好的软件结构可以被快速应用解决问题而不用重新设计,设计模式就是被定义好的常见问题解决方案的抽象设计。当一些情形经常出现时,可以选择设计模式解决相应问题而不用每次都分析问题再想办法解决,例如调停者模式被选择来解决一个特定的设计问题而不用重新设计。选择了设计模式无论做文档还是解释说明都显得更容易,在面向对象开发过程中设计模式起了很多作用[1]:

  计模式抽取在理论和自动化工具的开发方面的研究都取得了进展,但还存在一些困难和问题,如基于设计模式解法部分的设计模式识别规则的定义多种多样,实现方式各异,没有广泛适用的规范;实际可用的设计模式抽取工具较少,成型的工具大都作为庞大的逆向工程环境的一部分,模块化程度不高;设计模式抽取的结果因设计模式特点、抽取的目标语言和目标系统而差别很大,实际应用困难等。

  三、一般基于源代码的设计模式抽取方法的步骤

  一般而言,从Java软件中抽取设计模式的过程分解成以下三个步骤:

  (1)对设计模式建模和描述,生成设计模式的中间表示模型;

  (2)以查找设计模式为目的,分析软件系统的Java代码,抽取源码信息模型;

  (3)比较中间模型和信息模型的相似性,从而识别Java代码中的设计模式实例。

  四、基于XMI的方法

  XML元数据交换(XMLMetadataInterchange,XMI)是一种标准,这种标准能够使用可扩展标记语言(ExtensibleMarkupLanguage,XML)来表达对象,XML也是万维网上表示数据的普遍格式。XMI不仅仅是一套有序的规则,它还与建模标准密切相关,这使得用户可以在XML应用中有效地进行建模操作。XMI2.0详细说明了如何从模型中创建XML模式(schema),而以前的XMI版本则详细说明了如何从模型中创建XML的文档类型定义(DocumentTypeDefinition,DTD)。模式与DTD都定义了XML文档的内容。[2]

  XMI是创建应用程序所需要的,由于XML不是面向对象的,因此需要将对象映射到XML。由于XML的灵活性,因此可以有多种映射方式。尽管如此,在交换XML文档的时候,这种灵活性也会带来一定问题。如果一个工具利用了一种方法将对象映射到XML,而另一个工具将对象映射到XML却使用了另外一种方法,那么这两种工具就不可能正确地解释对方的XML文档。XMI使用模型来确认对象是共享的。一个使用了XMI的工具能够与使用XMI的其他工具交换对象。

  XMI使用了两个相关的标准:可扩展标记语言(ExtensibleMarkupLanguage,XML)和统一建模语言(UnifiedModelingLanguage,UML)。XMI是以XML为基础的;XMI使用XML从文档中保存及加载对象。而UML定义了对象和类的结构,使用这种定义来解释XMI怎样在XML中说明对象和类的。

  五、结构分析

  在一个大型软件系统中,包含类的个数往往成百成万个。而每个类都有不同类型的属性和方法。为了提高代码的重用和效率,这些类之间往往以一种相对复杂的方式关联。因此,从这么多类中抽取出一个模式就变成一项非常复杂的任务。为了解决这个问题,我们首先仅仅考虑结构特征,减少了分析类的范围。我们所说的结构特征包含了属性的个数,方法的个数,以及类型,如抽象类,具体类或者接口,以及与其他类的关系。

  设计模式抽取工具的输入是XMI文档,它包含了被分析的软件的UML类图的信息。工具直接分析XMI文档,代替了直接分析源代码。从UML类图生成XMI文档,已经在上一章中详细阐述了步骤。就目前而言,通过使用我们使用的RationalRose从源代码逆向工程到顺序图是不可能的。因此,XMI文档仅仅包含了UML类图的相关信息。结构分析过程框架如下结构分析阶段的整个过程的方法框架。与一般的从源代码中设计模式抽取的过程类似。

  整个过程可以分成三个步骤完成:

  (1)对要抽取的目标设计模式进行分析建立特征模型,分一下两步进行:

  a.设定特定设计模式的特征权重;

  b.建立特定设计模式的特征权重关系矩阵。

  (2)对源代码逆向工程所得的XMI文档进行分析:

  a.统计XMI中每个类的特征元素的权重;

  b.建立系统特征的关系矩阵。

  (3)利用匹配算法把在第一步中获得的模式关系矩阵和在第二步中得到的系统的关系矩阵进行匹配。[3]

  六、行为分析

  一般而言,设计模式通常包含了结构和行为两方面的信息。结构信息描述了模式中的类之间的静态的结构关系。行为信息表示了模式中对象之间的动作和交互的序列细节。因此,仅仅使用结构分析抽取出的设计模式的方法是不充分的。经过结构分析后的结果中包含了falsepositives实例。而行为分析的结果是减少falsepositives实例。

  结构分析已经产生一些可能的设计模式实例的候选模式实例集合,动态分析将把这些经过结构分析获得的候选集合信息作为输入并产生一个相同或更少数目的集合。行为分析将不产生新的设计模式的实例,它只检查候选集合,检查每个设计模式实例的期望的行为特征,也就是说把falsepositives的候选项去除。

  结构分析和行为分析之间的不同在于结构分析主要检查类之间的交互而行为分析则关注不同类实例或对象之间的通讯。这就意味着结构分析只会作一次相同检查而行为分析可能重复多次相同的检查,检查次数取决于相同类有多少个对象实例存在以及它们如何交互,重复多次相同的检查的原因是对象可以以不同方式创建,因为这个原因,它们可能拥有不同的属性需要分别分析。行为分析的结果可能和前面做的结构分析结果相似。

  行为分析的主要目的是找到类之间存在的依赖关系,或者是否存在一些类委派的方法调用。对每一个特别的设计模式,行为分析是不同的,类似与结构分析阶段我们所做的。对于设计模式的特征的行为分析相对于结构分析要复杂的多。行为分析的主要困难是对于相似的期望行为有多种实现方式。

  七、总结

  从源代码中抽取出设计模式的实例,对于提高软件可理解性和可维护性、软件设计重用以及软件重构具有重要意义。论文着重论述了基于XMI的两阶段抽取设计模式实例的方法,该方法主要分为结构分析和行为分析两个阶段来完成。其中第一个阶段是结构分析,通过分析XMI文档获得类的结构特征,抽取出候选设计模式实例的集合,第二阶段是行为分析,分析第一阶段中设计模式实例的候选集合,扫描源代码以去除候选集合中的falsepositive设计模式实例。

  参考文献

  [1]E.Gamma,R.Helm,R.Johnson,etal.设计模式:可复用面向对象软件的基础(第一版)[M].李英军,等译.北京:机械工业出版社,2000.

  [2]林辉跃.面向对象软件中设计模式的智能抽取技术研究[D].硕士学位论文,2013.

  [3]S.Tilley,K.Wong,H.Muller,etal.Structuralredocumentation:Acasestudy.IEEESoftware,1995,12(1):46-54.

  [4]D.Heuzeroth,T.Holl,G.Hostrom,etal.AutomaticDesignPaternDetection.in:Proc.ofthe11thIEEEIntenrationalWorkshoponProgramComprehension.Portland,Oregon.2003.USA:IEEEComputerSociety,2003:94-99.

  [5]XMIMetadataInterchange.http://www.omg.org/technology/documents/formal/xmi.htm,Jan.2006.

  [6]SUNMicrosytems.AWT,theSUNJavaAbstractWindowToolkit.http://java.sun.com/products/jdk/awt,Feb.2006.



  • 职称晋升申请书范本2篇

    2025-02-22
    撰写职称晋升申请书时,您需要清晰、专业地展示您的工作成就、专业能力以及对职位提升的渴望。以下是 职称晋升申请书范本2篇 ,您可以根据实际情况进行调整: 1、医、护人员职称晋升申请书范文1篇 尊敬的领导: 本人于xxxx年毕业于xxxx护理专业,毕业后在医院中心监护
  • 高分子化学sci期刊一览 Q1-Q4都在这里

    2025-02-22
    在化学装爷领域中,高分子化学sci期刊众多,按照JCR分区,从Q1到Q4区都有涵盖,作者可根据单位和论文质量选择合适的期刊投稿。以下是 高分子化学sci期刊一览 Q1-Q4都在这里 ,供大家参考: 1、 CHINESE JOURNAL OF POLYMER SCIENCE JCR:Q2区 IF:4.1 致力于发表高分子
  • 2025年RCCSE期刊目录更新到第几版?第七版

    2025-02-22
    截至2025年2月22日,RCCSE期刊目录已经更新到了第七版 。第七版RCCSE中国学术期刊目录是在2024年12月6日至8日召开的第七届中国期刊质量与发展大会上正式发布的,具体详情如下: 1、RCCSE期刊是什么意思 RCCSE期刊是指被武汉大学中国科学评价研究中心(Research Center
  • 论文二审还会给原来的审稿人吗?接受率多少

    2025-02-22
    二审是论文发表期刊过程中最为严格且重要的环节之一,审稿周期较长,建议作者耐心等待。对于, 论文二审还会给原来的审稿人吗 ? 并没有一个统一的答案,可能是原来的审稿人,也可能是新的审稿人,具体取决于期刊的具体政策和审稿人的可用性。 关于论文二审是否还会送
  • 速看!审稿出版最快的教育学SSCI期刊及选题推荐

    2025-02-21
    在教育学领域,被ssci收录的期刊众多,想要选择审稿出版快的期刊,对于新手作者来说确实很难,而且出版周期长短与论文质量、期刊的影响力等因素有直接的关系。今天在这里为大家汇总整理了部分 审稿出版最快的教育学SSCI期刊及选题 ,供大家参考: 一、审稿出版最快的教
回到顶部