第一章1.根据自己的经验,谈谈对软件危机的看法答:软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。它主要由以下几个原因导致:(1) 软件自身特点(2) 开发人员的弱点(3) 用户需求不明(4) 缺乏正确理论指导(5) 开发规模越来越大(6) 开发复杂度越来越高可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。2.什么是软件重用,软件重用的层次可以分为哪几个级别答:软件重用,是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次:( 1)代码重用( 2)设计结果重用( 3)分析结果重用3. 什么是可重用构件相对于普通的软件产品,对可重用构件有何特殊要求答: 可充用构件表示软件重用过程中,可重用的软件构件元素。可重用构件的特殊要求:(1)可重用构件应该具有功能上的独立性与完整性;( 2)可重用构件应该具有较高的通用性;(3)可重用构件应该具有较高的灵活;(4)可重用构件应该具有严格的质量保证;(5)可重用构件应该具有较高的标准化程。4. 基于构件的软件开发的优势是什么面临哪些困难和挑战答: 优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,以更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用困难和挑战: 没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战. 此外,在同一系统采用多个开发商提供的构件, 它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题5. 描述三种应用最为广泛的构件技术规范COM、 CORBA和 EJB 各自的特点答: COM:COM无需重新编译,对象就可以增添新的功能,还能够透明地向另一个过程或另一台机器上的对发送RPC调用;CORBA: CORBA用 IDL 来描述对象接口,可以满足异种语言间的通信问题。 EJB: EJB 可以根据您应用的增长而扩展,EJB 往往提供了负载均衡和,可以通过在代码外的描述来定义事务处理级别可扩展性6. 就项目管理而言,软件重用项目与非重用项目有哪些不同之处。...