软件工程导论(第六版)课后习题答案1

软件工程是计算机科学的重要分支,主要应对软件开发过程中的各种挑战,即所谓的“软件危机”。软件危机体现在软件开发成本超出预算、进度延迟、用户满意度低、产品质量不可靠、维护困难、文档不足以及软件成本在计算机系统总成本中占比过大等问题。这些问题的根源在于软件的逻辑性质、规模和复杂性,以及开发和维护方法的不当应用。 为了解决软件危机,软件工程提出了一系列系统化、规范化和可度量的方法。1993年IEEE对软件工程的定义强调了工程化的软件开发过程,包括对软件开发、运行和维护的系统方法,以及对这些方法的研究。软件工程的本质特征包括处理大规模程序、控制复杂性、考虑软件的可变性和效率、团队协作、用户支持,以及文化差异的理解。 消除软件危机的方法包括正确认识软件的性质(不仅仅是程序),重视软件开发的组织管理,推广成功的开发技术和方法,以及发展和使用更好的工具。此外,软件工程倡导面向对象范型,通过封装、继承和多态性降低软件复杂性,提高可理解性和可维护性,促进代码重用。 结构化范型,又称生命周期方法学,将软件生命周期划分为多个阶段,便于分工合作。然而,对于大型或需求变化的项目,这种方法可能不足以应对挑战,维护依然困难。而面向对象方法学则通过对象的抽象和组合,降低了复杂性,增强了软件的灵活性和可扩展性,但可能会导致设计过度复杂,影响性能。 在经济层面,根据历史数据,计算机存储容量的需求逐年增加,价格逐年下降。例如,在1985年,存储容量需求约为4474263字,如果字长为16位,存储器的价格大约是每个字0.048美元。这种趋势表明,尽管软件成本在总成本中占比高,但硬件成本的下降可能会缓解一部分软件危机的压力。 软件工程的目标是通过系统化的方法论和最佳实践来克服软件危机,提高软件开发的质量、效率和可维护性。这涉及到对需求的深入理解、合理的工作流程、有效的团队协作,以及持续的技术创新。









剩余68页未读,继续阅读

- 羅8772024-10-31感谢分享的资源!!!
- qq_584159082024-11-27非常感谢分享!
- Maskmonster2023-05-04感谢楼主的分享!
- Damascus_Marathon2024-11-09感谢分享的资源!!!!
- cihouwudi2024-11-06感谢楼主的分享!!!

- 粉丝: 28
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 【西门子PLC例程】-pid编程实例.zip
- 【西门子PLC例程】-pid实例(step7).zip
- 【西门子PLC例程】-PID算法演示程序.zip
- 【西门子PLC例程】-PLC S7-200程序实例--程控喷泉程序.zip
- 【西门子PLC例程】-PID温度控制.zip
- 【西门子PLC例程】-PLC S5精彩实例.zip
- 【西门子PLC例程】-PLC200的实现其他功能的九个程序.zip
- 【西门子PLC例程】-plc200例子.zip
- 【西门子PLC例程】-PLC—PLC 之间的MPI通讯.zip
- 【西门子PLC例程】-PLC-PLC之间通讯实例(双联电梯程序)1.zip
- 【西门子PLC例程】-PLC–PLC 之间的ProfiBus 通讯.zip
- 【西门子PLC例程】-PLC发电机励磁控制程序.zip
- 【西门子PLC例程】-PLC–PLC之间的ProfiBus通讯.zip
- 【西门子PLC例程】-PLC-PLC之间通讯实例(双联电梯程序)2.zip
- 【西门子PLC例程】-PLC可程式控制器模擬教.zip
- 【西门子PLC例程】-PLC可程式控制器模擬.zip


