正文

软件工程知识2006-04-02 22:48:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/smile/11878.html

分享到:

软件工程知识

第一章 
1.软件产品的特性是什么?
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)、面向对象的开发方法。 

第二章 
1.可行性研究的任务是什么? 
a.技术可行性: 
考虑的因素(1).开发的风险(2)资源的有效性(3)技术(4)开发人员在主段技术可行性时,一旦估计错误, 
将会出现灾难性后果。 
b.经济可行性。 
c.社会可行性。 

2.可行性研究有哪些步骤? 
a.确定项目规模和目标 
b.研究正在运行的系统 
c.建立新系统的高层逻辑模型 
d.导出和评价各种方案 
e.推荐可行的方案 
f.编写可行性研究报告 

3。可行性研究报告有哪些就要内容? 
a。引言 
b.可行性研究前提 
c.对现有系统的分析 
d.所建议系统的技术可行性分析 
e.所建议系统的经济可行性分析 
f.社会因素可行性分析 
g.其他可供选择方案 
h.结论意见 
4.成本---效益分析可用哪些指标进行度量? 

有形效益度量: 
a.货币的时间价值 
b.投资回收期 
c.纯收入 
无形效益:主要从性质上、心理上进行衡量,很难直接进行量的比较。 
通常以有形效益度量作为成本---效益分析的度量。 
5.项目开发计划有哪些内容? 
a.项目概述 b.实施计划c.人员组织及分工d.交付期限 
------------------------------------------------------------------------------------ 

第三章 
1.什么是需求分析?需求分析阶段的基本任务是什么? 
需求分析是指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求 
陈述转化为完整的需求定义,再由需求定义转换到相应的形式主义功能规约(需求规格说明)的过程。 
需求分析阶段的基本任务是: 
(1.问题识别: 
双方对问题的综合需求:a.功能需求b.性能需求c.环境需求d.用户界面需求. 
(2.分析与综合,导出软件的逻辑模型. 
(3.编写文档 
2.什么是结构化分析方法?该方法使用什么描述工具? 
结构化分析方法:是面向数据汉进行需求分析的方法。 
描 述 工 具:a.数据流图b.数据字典c.描述加工逻辑的结构化语言、判定表、判定树. 
3.结构化分析方法通过哪些步骤来实现? 
结构化分析方法步骤: 
a.了解当前系统的工作流程,获得当前系统的物理模型. 
b.抽象出当前系统的逻辑模型. 
c.建立上标系统的逻辑模型. 
d.作进一步补充和优化. 
4.什么是数据流图?其作用是什么?其中的基本符号各表示什么含义? 
数据流图:简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具.是一种功能模型. 
作 用:它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能. 
基本符号有四种: 
->,箭头,表示数据流; (),圆或椭圆,表示加工; =,双杠,表示数据存储; ||,方框,表示数据的源点或终点. 
5.画数据流图应该注意什么事项? 
画数据流图注意事项: 
a.命名.不论是数据流\数据存储还是加工,合适的命名使人们易于理解基含义. 
b.画数据流而不是控制流. 
c.一般不画物质流. 
d.每个加工到少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果. 
e.编号. 
f.父图与子图的平衡. 
g.局部数据存储. 
h.提高数据流图的易理解性. 
6.什么是字据字典?其作用是什么?它有哪些条目? 
字据字典:简称DD,就是用来定义数据流图中的各个成分具体含义的,它以一种准确的\无二义 
         性的说明方式为系统的分析\设计及维护提供了有关元素的一致的定义和详细的描述. 
作 用:1)为系统的分析\设计及维护提供了有关元素的一致的定义和详细的描述. 
2)为分析人员查找数据流图中有关名字的详细定义而服务的. 
3)它和数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分. 
条 目:数据流、数据项、数据存储、基本加工。 
7.描述加工逻辑有哪些工具? 
a,结构化语言b,判定表c.判定树 
8.什么是IDEF方法?IDEF0方法有什么特点? 
IDEF方法:是美国空军在1981年针对集成化计算机辅助制造(Integrated Computer Aided Manufacturing, 
简称ICAM)工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析与设计技术的基础上提出来的。 
IDEF是ICAM Definition的缩写。 
IDEF0方法特点: 
a.采用方框和箭头等简单的图形符号描述系统的活动和数据流,描述活动所受到的约束及 
实现机制。 
b.采用严格的自顶向下、逐层分解的方式建立系统功能模型。  
  

--------------------------------------------------------------------------------
 

阅读(3327) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册