思考题一
作者:互联网
1.软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。目标是在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。
2.软件开发的本质:问题域到不同抽象层之间概念和计算逻辑的映射。
3.软件的特点:(1)软件是一种逻辑产品,具有抽象性。硬件是有形设备,而软件不像硬件那样具有明显的可见性;软件的开发过程中没有具体的物理制造过程。2)软件的生产方式与硬件的制造不同。软件的生产过程以创造性思维为主,它是人们脑力脑洞的结晶,它的研发过程就是生产过程。软件的成本主要体现在开发和研制上,而复制产品的成本则非常廉价,软件的研发成本远远大于生产成本。(3)软件缺陷检测的困难性。发现软件错误和缺陷的主要手段是软件测试。(4)软件维护的复杂性。软件不存在像硬件那样的部件磨损和老化问题,但是为了纠正软件错误和适应硬件、环境以及需求的变化,需要进行维护,而每次维护不可避免地引入新的错误,导致软件质量下降,失效率升高,从而使得软件退化。(5)软件对环境的依赖性。软件的开发和运行必须依附于特定的计算机系统环境.
4.软件危机是指落后的软件生产方式无法满足迅速增长的计算机需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。
出现原因:与软件本身的特点有关;来自于软件开发人员的弱点。
解决手段:最好的手段是软件工程。
5.软件工程的要素和作用:
软件工程包括三个要素:方法、工具和过程。
软件工程方法为软件开发提供了“如何做”的技术。它包括了多方面的任务,如项目计划与估算、软件系统需求分析、数据结构、系统总体结构的设计、算法过程的设计、编码、测试以及维护等。
软件工具为软件工程方法提供了自动的或半自动的软件支撑环境。目前,已经推出了许多软件工具,这些软件工具集成起来,建立起称之为计算机辅助软件工程(CASE)的软件开发支撑系统。CASE将各种软件工具、开发机器和一个存放开发过程信息的工程数据库组合起来形成一个软件工程环境。
软件工程的过程则是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。过程定义了方法使用的顺序、要求交付的文档资料、为保证质量和协调变化所需要的管理、及软件开发各个阶段完成的里程碑。
标签:软件开发,思考题,软件工程,软件工具,开发,软件,过程 来源: https://www.cnblogs.com/hhy777/p/14616612.html