第一章 软件工程概述 思考题
1、结合你之间的工作经验以及任正非制员工信 谈谈你对软件工程的看法
软件工程是以工程化的方法来制作软件的工程,目的是为了解决软件危机。软件工程使得开发软件又过去的单枪匹马变为一个团队的密切合作,更加全面且效率更高的完成软件的开发。
2、软件开发就是编码嘛?谈谈你对软件开发本质的认识
软件开发不是编码。软件包括计算机系统中的程序和文档。软件开发需要需求分析、设计、实现、测试、管理和维护这一系列步骤。并且牵涉到很多社会因素,比如:机构设置、体制等。
3、举例说明软件的特点有哪些
- 复杂性:
- 大型软件百万行源代码,上万个文件
- 模块间各种显性和隐形的依赖关系
- 不可见行:
- 看不见源代码的具体执行
- 软件出错很难完整重现程序出现的问题
- 服从性
- 软件服从硬件
- 服从用户需求、行业系统要求
- 易变性
- 软件升级
- 比硬件容易修改,但正确修改难
4、什么是软件危机?软件危机出现的原因和解决手段有哪些?
- 软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。
- 软件危机出现的原因大致有:用户需求不明、缺少正确理论指导、软件规模越来越大、软件开发的复杂性越来越高。
- 解决手段:实行软件工程。在软件开发过程中人们开始研制和使用软件工具,用以辅助进行软件项目管理与技术生产。
5、软件工程的要素有哪些?各有什么作用?
- 方法 为软件开发提供技术手段
- 过程 过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
- 工具 提供了软件开发的支撑环境