第一周思考题
1.结合你之前的经验和任正非致员工信,谈谈你对软件工程的看法。
答:(1)软件工程运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必须的相关文件资料。(2)软件工程是为了经济地获得能够在实际机器上有效运行的可靠软件而建立和使用的一系列完善的工程化原则。(3)软件工程是开发、运行、维护和修复软件的系统方法。
2.软件开发就是编程吗?谈谈你对软件开发的本质的认识。
答:不是。软件开发是实现问题域中的概念和处理逻辑到运行平台的概念和处理逻辑的映射。
3.举例说明软件的特点有哪些?
答:(1)复杂性。例如大型软件有百万行源代码,上万个文件;模块间存在各种显性和隐形的依赖关系。(2)不可见性。例如看不见源代码的具体执行;软件出错很难完整重现程序出现的问题。(3)服从性。例如软件服从硬件;服从用户需求,服从行业系统需求。(4)易变性。例如软件升级(新的功能,适应新的硬件);比硬件容易修改,但正确修改难。
4.什么是软件危机?软件危机出现的原因及解决手段有哪些?
答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
原因:软件维护费用急剧上升,直接威胁计算机应用的扩大;软件生产技术进步缓慢;软件本身的特点及开发方法;软件质量难以保证;
软件开发难以保证人们的需求;用户需求不明确;
缺乏正确的理论指导;软件开发规模越来越大;
软件开发复杂度越来越高。
解决手段:重视需求分析,与客户沟通,确切表达需求;重视设计和实现过程的资料;充分的测试工作;维护和管理工作;统一的、公认的方法论和规范指导。
5.软件工程的要素有哪些?各有什么作用?
答:(1)方法。(2)过程。(3)工具。
软件工程方法为软件开发提供了“如何做”的技术。
软件工具为软件工程方法提供了自动的或半自动的软件支撑环境。
软件工程的过程则是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。

浙公网安备 33010602011771号