第一章 习题解答
作者:不详 来源:网友提供 http://www.csai.cn 2005年11月10日
1.软件产品的特性是什么?P1
a.软件产品是一种逻辑产品。
b.软件产品的生产主是研制,软件产品的成本主要体现在软件的开发和研制上,软件开发完成后,复制就产生了大量软件产品。
c.软件产品不会用坏,不存在磨损\消耗问题。
d.软件产品的生产主要是脑力劳动,还未完全摆脱手工开发方式,而且碰分是“定做”的。
e.软件费用不断增加,成本相当昂贵。
2.软件产品有几个阶段?各有何特征?
A.程序设计时代(1946-1956)
生产方式:个体手工劳动.
工 具:机器语言、汇编
开发方法:追求编和技巧,追求程序运行效率.
硬件特征:价格贵、存储容量小、运行可靠性差。
软件特征:只有程序、程序设计概念,不重视程序设计方法。
B.程序系统时代(1956-1968)
生产方式:小集团合作生产.
工 具:高级语言
开发方法:个人技巧,开始提出结构化方法。
硬件特征:速度、容量、工作可靠性有明显提高,价格降低,销售有爆炸性增长。
软件特征:程序员数量猛增,已意识到软件开发的重要性,开发技术没有新的 ,大量软件开发的需求已提出,开发人员的素质和工程兵的开发技术不适应规模大、结构复杂的软件开发,产生了尖锐矛盾,导致软件危机的产生
C.软件工程时代(1968-今)
生产方式:工程化的生产
工具方法:数据库、开发工具、开发环境、网络、 分布式、面向对象技术
硬件特征:向超高速、大容量、微型化以及网络化方向发展。
软件特征: 开发技术有很大进步,但未能获得突破性进展,软件价格不断上升,没有完全摆脱软件危机。
3.什么是软件危机?其产生的原因是什么?
软件危机:软件发展第二阶段的末期,由于计算机硬件技术的进步。一些复杂的、大型的软件开发项目提出来了,但,软件开发技术的进步一直未能满足发展的要求。在软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。主要表现在以下几个方面:
a.经费预算经常突破,完成时间一再拖延。
b.开发的软件不通满足用户要求。
c.开发的软件可维护性差。
d. 开发的软件可靠性差。
软件危机产生的原因是由于软件产品本身的特点以及开发软件的方式、方法、技术和人员引起的:
a.软件的规模越来越大,结构越来越复杂。
b.软件开发管理困难而复杂。
c.软件开发费用不断增加。
d.软件开发技术落后。
e.生产方式落后。
f.开发工具落后,生产率提高缓慢。
4.什么是软件工程?它的目标和内容是什么?
软件工程:用科学知识和技术原理来定义、开发、维护软件的一门学科。
软件工程的目标是成功的建造一个大型软件系统,所谓成功是要达到以下几个目标:
a.付出较低的开发成本;
b.面到要求的软件功能;
c.取得较好的软件性能;
d.开发的软件易于移植;
e.需要较低的维护费用;
f.能按时完成开发任务,及时交付使用;
g.开发的软件可靠性高;
软件工程的内容:
1) 软件开发技术:软件开发方法、软件开发过程、软件开发工具和环境。
2) 软件开发管理:软件管理学、软件经济学、软件心理学。
5.软件工程面临的问题是什么?
软件工程面临的问题:
a.软件费用。b.软件可靠性。c.软件维护。d.软件生产率。e.软件重用。
6.什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
软件生存周期包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等.
7.什么是软件生存周期模型?有哪些主要模型?
软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。(模型:是为了理解事物而对事物做出一种抽象,它忽略不必要的细节,它也是事物的一种抽象形式、一个规划、一个程式。)
软件生存周期主要模型:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等
9.什么是软件开发的方法?有哪些主要方法?
软件开发的方法:是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。
主要方法:结构方法、Jackson方法、维也纳开发方法(VDM)、面向对象的开发方法。
|