预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第13章软件重用技术13.1典型问题分析和解答【例1】实施软件重用的目的是要使软件开发工作进行得(A)。软件重用的实际效益除了(B)之外,在企业的经营管理方面也渴望达到理想的效益。新的应用软件开发技术和工具是以(C)作为关键,重用大粒度的(D),为的是快速开发应用软件。这些新技术包括微软的(E)、(F)、(G),SUN公司的Java,OMG公司的CORBA、IDL等。供选择的答案:A.①更简捷②更方便③更快、更好、更省④更丰富B.①重用率②功能扩充③效率④空间利用率C,D.①软件②固件③构件④属性⑤对象⑥事物⑦数据⑧代码EG.①office②VisualBasic③ActiveX④Photoshop⑤OLE⑥Fortran⑦COBOL⑧Delphi答案:A.③,B.①,C.③,D.⑤,E.②,F.③,G.⑤。其中,E、F、G的答案顺序可互换。分析:实施软件重用的目的是要使软件开发工作进行得是更快、更好、更省。“更快”是指在市场竞争环境中,软件开发工作能满足市场上时间方面的要求(即在提供软件产品的时间方面能赛过竞争对手);“更好”是指开发出来的软件在未来的运行中失效可能性小;“更省”是指在开发和维护期间所花费的开销少。日美一些大公司的资料表明,软件重用率最高可望达到90%,而且软件重用使得企业在及时满足市场、软件质量、软件开发和维护费用等方面都得到显著的改进。除了重用率之外,在企业的经营管理方面也可望达到理想的效益。例如,上市时间可缩短25倍;软件产品的缺陷密度可减少510倍;软件产品的维护费用可减少510倍;软件开发总费用可减少15%75%,其中,75%是针对长期项目,包括开发可重用构件及支持重用的负担。新的应用软件开发技术和工具是以“构件”作为关键,重用大粒度的“对象”,为的是快速开发应用软件。这些新技术包括微软的VisualBasic、ActiveX、OLE(对象链接与嵌入),SUN公司的Java,OMG公司的CORBA(公用对象请求代理程序体系结构)、IDL(接口定义语言)等。非面向对象语言(如COBOL和Fortran)在重用实践中已经相当的成功。这些非面向对象程序设计语言构件技术的成功实践说明了实现软件重用并不限于面向对象语言构件或类库。【例2】以往的软件工程技术不能满足重用的需要,体现在工程、(A)、(B)、经营业务等4个方面。“工程”指软件开发工程,表现在缺乏(C)手段,缺乏(D)构件,缺乏对潜在可重用的(E),缺乏实施重用的工具。供选择的答案:A,B.①需求②过程③环境④组织管理CE.①重用②可靠性③灵活性④界定⑤工具⑥互连性答案:A.②,B.④,C.④,D.①,E.③。其中,A、B的答案的顺序可互换。分析:以往的软件工程技术不能满足重用的需要,体现在工程、过程、组织管理、经营业务等4个方面。这里所说的“工程”是指软件开发工程,其技术和方法面对重用的需要已显得低效,主要表现在:缺乏界定手段:为了软件重用,需要循软件开发流程的各个阶段,通过分析它们的描述模型,明确界定出潜在可重用的部分,被界定出的部分,可能是可被重用的部分,也可能是可被可重用构件代用的部分。而以往的软件工程缺乏这种界定手段。缺乏可重用的构件:这反映在许多方面。例如,不能有效地挑选出可重用构件并对它们进行强化;缺乏对构件打包、文档化、分类、界定的技术;缺乏有效方法进行(构件)库的设计和实现;缺乏良好的构件库存取方法。缺乏对潜在可重用构件的灵活性:如果一个构件很死板,那么它被重用的机会就很少。而过去的软件工程方法在设计灵活的、分层的软件体系结构方面一直没有成熟的办法。过去的方法是对构件进行调节使之满足新的需求,或者使对新的体系结构进行限制。缺乏实施重用的工具:为了实施重用,需要一系列新的工具,并把它们集成到面向重用的软件工程环境中去。而过去的工程缺乏这方面的工具。【例3】论域工程过程要在选定的应用论域中界定出(A)和(B),要为多个应用和构件定义一个(C),并开发一系列可适度扩展的(D)。创建可重用构件既困难又昂贵。所以,应当帮助软件人员进行