计算机软件复用的探讨.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机软件复用的探讨 [论文关键词]软件复用 范式抽象 智能学习 范式库   [论文摘要]计算机软件作为一门学科得到了迅速发展,相关技术和方法层出不穷,研究领域不断深入和发展,计算机的应用范围也得到了很大程度的普及,人们对软件系统的需求急剧上升,随之而来的软件规模越来越大,开发费用越来越高,开发的质量和效率不断降低的问题日益严重,如何解决这些日益复杂的矛盾,满足高质量、高效率地开发各种各样日趋复杂、大型的软件系统的需求,消除所谓的“软件危机”,成为计算机软件学科所面临的重要课题。   软件复用技术的提出成为消除这种危机的一种解决方案。近年来,特别是20世纪90年代以后,面向对象方法和技术成为主流的软件开发技术,使得软件复用被视为解决软件危机一条现实可行的途径。与此同时,模型构件技术、分布式系统、领域工程、自动生成技术又为软件复用注入了新的活力,本文对面向对象系统分析阶段软件复用模型进行了研究和探讨。       一、软件复用   软件复用的概念是在1968年NATO软件工程会议上被第一次引入的,在其后的几十年中,进行了许多复用技术的研究和实践活动,但因技术和非技术方面的种种因素,造成复用技术在整体上对软件产业的影响不尽人意。面向对象方法和技术的出现及成熟,为软件复用提供了强有力的技术支持,尤其是软件构件技术的发展为其注入了新的活力,使得软件复用研究重新成为热点,被视为解决软件危机、提高软件生产效率和质量的一个现实可行的途径,同时也成为了避免软件开发中重复劳动的解决方案,并在一定程度上降低了软件开发的费用。目前,软件复用技术主要从两个方面来考虑:产品复用、过程复用。   产品复用:所谓产品复用是指复用已有的软件产品。目前基于构件的和面向服务的软件开发模式就是建立在这种软件复用的基础上的。这两种开发模式主要通过对现有的构件和服务进行合成或集成,从而生成所需要软件的过程。产品的复用是目前软件复用技术研究的焦点,在这个复用的过程中涉及到的关键技术是构件技术和软件架构技术,在成熟的构件和架构的技术上,可以使产品复用达到良好的效果。       二、面向对象系统分析(OOA)阶段软件复用模型   1.OOA阶段可重用性的本质   编程阶段不同类型的编程软件和类有不同深度的可重用性:高深度、中深度、低深度。   所谓高深度重用是指在不进行任何改变就可以直接使用重用产品的重用,像可视化开发工具中的所有控件,就属于这方面的重用;目前,面向服务的软件开发技术中对服务的重用,只要程序员获得服务者提供的接口,就可以直接使用别人开发的产品,这种复用也是高深度的复用技术,因此高深度的软件复用,可重用性最好;所谓中深度的重用,程序员可以根据自己的开发经验,开发出一些比较通用的组件,在具体的使用中,对这些通用的组件只要稍作修改就可以应用于具体的项目中去,这种复用可重用性较好。当然,对于低深度的可重用性就于具体的项目相关,它只能局限于该项目,可重用性最差。由此可见,可重用性与业务逻辑的相关性是成反比例关系的:越是与业务逻辑无关的重用,重用性越好;反之则越差。   2.OOA阶段软件复用模型研究   OOA阶段的软件复用,在一定程度上可以说是建立在许多优秀的系统分析员实践和经验基础之上的复用,是一种思想上的复用。在这个阶段的软件复用更具有通用性和重用性,因此,构造这个阶段的软件复用模型,可以使复用达到更好地效果。   3.范式抽象 所谓范式就是抽象的解决方案模板,它可在不同具体项目中使用。范式抽象就是在此基础上提出的对范式的设计方法。针对不同的问题域,就应该有与之对应的设计方法,这样可以使范式的设计达到很高的重用性。针对OOA阶段具体现状,有三种范式抽象方法:  (1)关系抽象   在OOA阶段,针对具体的项目,会分析出大量的关系模型。例如在学校排课表系统中,需要定义教师类,它包括教师姓名、性别、职称等有关教师的基本信息,同时,为了便于教师很快得出自己的上课表,还需要定义一个与教师对应的教师课表类,这个类显示了一周中教师的课程安排情况;在网上购物系统中,需要定义一个购物者类,包括了购物者的相关信息,同时为了得到购物者所购的物品,还需定义一个购物车类,该类描述了购物者与所购买的物品的对应关系。这两个系统的具体业务是不同的,但教师类与教师课表类、购物者类与购物车类的关系却是基本相同的,都是一个实体对另一个实体的拥有关系,同样,所进行的操作也基本相同,诸如都涉及到对所拥有实体的查询操作等。因此可将这种关系抽象出来,定义为拥有关系,然后在此关系的基础上定义相应的操作。这种关系就可以以范式的形式保存起来,在不同的项目中都可重用这种范式。同样,还可抽象出许多其他的关系范式,如实体——内容关系,上下级关系等。这些关系

您可能关注的文档

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档