软件工程复习资料Word文件下载.docx
- 文档编号:21642567
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:10
- 大小:23.85KB
软件工程复习资料Word文件下载.docx
《软件工程复习资料Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件工程复习资料Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
21.从事物的组成部件及每个部件的属性,功能来认识事物.这种方法被称为面向对象的方法。
22.从事物的属性侧面来描述事物的方法就是面向数据的方法。
23.面向对象(ObjectOriented)方法是将现实世界的事物以对象的方式映射到计算机世界的方法。
(二)软件项目管理
24.一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见,具有良好的书面和口头表达能力。
25.为了充分发挥开发人员的潜力,缩短工期,软件工程项目的任务分解与安排应尽力挖掘可并行开发的部分。
26.任务是管理有关项目工作的最小的单元。
27.任务是一项已经定义得很好的工作,该工作可分配给一个项目参与者或分配给一个团队。
(三)需求分析
28.软件需求是指用户对目标软件系统在功能,性能,行为,设计约束等方面的期望.
29.数据流图就是用来刻画数据流和转换的信息系统建模技术。
30.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。
31.需求分析阶段的成果主要是需求规格说明,该成果与软件设计,编码,测试直至维护都有较大关系。
32.需求规格说明书是需求分析阶段最重要的技术文档之一
33.需求分析最终结果是产生需求规格说明书
34.DFD中的每个加工至少需要一个输入流和一个输出流。
35.需求分析阶段的任务是确定软件系统的功能
36.需求分析的任务不包括系统设计。
37.需求规格说明书的作用包括:
作为软件验收的依据、用户与开发人员对软件要做什么的共同理解、作为软件设计的依据等
38.在结构化分析方法中,用以表达系统内数据的运动情况的工具有数据流图。
39.结构化分析方法(SA)是一种面向数据流的需求分析方法.
40.验证软件需求正确性的四个方面包括一致性、完整性、现实性、有效性。
41.在面向对象软件开发方法中,类与类之间主要有继承和聚集的关系。
42.面向对象的特征主要包括多态性、继承性、封装性。
43.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫面向对象的分析。
(四)概要设计
44.软件概要设计的主要任务就是软件结构的设计,面向数据流的设计方法是将数据流映射成软件结构。
45.软件模块之间的耦合性越弱越好。
46.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
47.内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越高越好。
48.在模块耦合性类型中,模块之间独立性最差的类型是内容耦合,在实际编程时一定要避免出现,为了提高模块的独立性,模块之间最好是数据耦合。
模块耦合越弱,则说明模块的独立性强。
49.在软件结构图中,扇入数大说明该模块的重用率高。
50.为了提高模块的独立性,模块内部最好是功能内聚,模块的内聚性最高的是功能内聚。
51.软件结构图中,模块框之间若有直线连接,表示它们之间存在调用关系一个软件的宽度是指其控制的跨度,一个软件的深度是指其控制的层数,一个模块的扇入数是指能直接控制该模块的模块数,一个模块的"
扇出数"
是指该模块直接控制的其他模块数。
52.当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为内容耦合。
53.在进行软件结构设计时应该遵循的最主要的原理是模块独立原理。
54.变换型数据处理问题的工作过程大致分为三步,即取得数据,变换数据和给出数据。
55.按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和事务分析设计。
56.衡量模块的独立性的两个定性的度量标准是内聚度和耦合度。
(五)详细设计
57.软件详细设计的主要任务是对算法和数据结构进行的详细设计,软件详细设计主要采用的方法是结构化程序设计。
58.过程描述语言可以用于算法和数据结构的描述。
59.结构化程序设计方法是使用三种基本控制结构构造程序,程序的三种基本控制结构是顺序,选择和循环。
60.在详细设计阶段,经常采用的工具有盒图、PAD图、PDL语言、判定表和判定树等工具,其中PAD图为自动分析数据提供了有力的工具.
61.盒图也称为N-S图,种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题.
62.当模块中包含复杂的条件组合,只有判定表和判定树能够清晰地表达出各种动作之间的对应关系.
63.模块的内部过程描述就是模块内部的算法设计,它的表达形式就是详细设计语言.
64.程序的三种基本控制结构的共同特点是只有一个入口和一个出口。
65.调试的目的是确定错误的位置和引起错误的原因,并加以改正。
66.汇编语言是面向机器的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
(六)编码、测试、维护
67.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫编码过程。
68.面向对象的开发方法中,UML是面向对象技术领域内占主导地位的标准建模语言。
69.软件测试是执行程序发现并排除程序中潜伏的错误的过程。
70.是对软件规格说明,软件设计和编码的最全面也是最后的审查。
71.软件测试并不能发现软件中所有潜伏的错误,通过软件测试没有发现错误,不能说明软件是正确的。
72.动态测试方法中根据测试用例的设计方法不同,分为黑盒和白盒两类.
73.黑盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。
74.自顶向下的渐增式测试初期一般不可以并行进行。
75.在现实项目中,路径测试和穷举测试是经常难以实现。
76.单元测试的测试对象是程序模块。
77.计算机辅助静态分析是软件测试方法中的静态测试方法之一。
78.基本路径测试、循环覆盖测试、逻辑覆盖测试属于白盒测试技术。
79.等价类划分、边界值分析测试等属于黑盒测试技术。
80.逻辑覆盖一般包括语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、边覆盖、路径覆盖等。
81.将软件组装成系统的一种测试技术叫集成测试。
82.软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们都属于动态测试。
83.在设计测试用例时,边界值分析是用的最多的一种黑盒测试方法。
84.在进行软件测试时,首先应当进行单元测试,然后再进行集成测试,最后再进行有效性测试。
85.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划.有组织的活动,质量保证是为了使用产品实现用户要求的功能。
86.在结构测试用例设计中,有语句覆盖,条件覆盖,判定覆盖(即分支覆盖),路径覆盖,其中路径覆盖是最强的覆盖准则.
87.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:
深度优先策略和宽度优先策略。
88.为了提高测试的效率,应该选择发现错误可能性大的数据作为测试数据。
89.使用白盒测试方法时,确定测试数据应根据程序的内部逻辑和指定的覆盖标准。
90.黑盒测试在设计测试用例时,主要需要研究需求规格说明与概要设计说明。
91.软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为可靠性。
92.软件维护是软件生命周期的最后一个阶段,软件生命周期中所花费用最多的阶段是软件维护。
93.在软件维护的内容中,有四种维护:
校正性维护,完善性维护,适应性维护,预防性维护,其中占维护活动工作量比例最高的是完善性维护,最少的一般是预防性维护。
94.为改正软件系统中潜藏的错误而进行的维护活动称为纠错性维护。
95.根据用户在软件使用过程中提出的建设性意见而进行的维护活动称为完善性维护,完善性维护可以提高或完善软件的性能。
96.为适应软件运行环境的变化而修改软件的活动称为适应性维护。
97.为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为预防性维护。
98.软件中因修改软件而造成的错误称为维护的副作用。
99.非结构化维护用于软件的配置中只有源代码维护。
100.维护中,因误删除一个标识符而引起的错误是编码副作用。
101.软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误,改进性能等属性,适应环境变化等方面工作的难易程度。
102.软件可靠性是指在给定的时间间隔内,程序成功运行的概率。
103.由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的副作用。
104.软件可修改性,是指允许对软件系统进行修改而不增加其复杂性,
105.所有软件维护申请报告要按规定方式提出,该报告也称软件问题报告。
二、掌握和记忆
(一)概念
1.耦合性:
也称块间联系,指软件系统结构中各模块间相互联系紧密程度的一种度量。
2.软件生存周期模型:
是描述软件开发过程中各种活动如何执行的模型.
3.数据字典(DD):
是用来定义数据流图中的各个成分的具体含义的.它以一种准确的,无二义性的说明方式为系统的分析,设计及维护提供了有关元素的一致的定义和详细的描述.
4.内聚性:
是模块独立性的衡量标准之一,它是模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量.
5.白盒测试:
又称结构测试,是已经知道产品内部工作过程,检验产品内部动作是否按规定正常使用的测试方法。
6.软件生存周期:
就是从提出软件产品开始,直到该软件产品被淘汰的全过程,具体包括问题定义、可行性研究、需求分析、概要设计、详细设计、编码与测试、运行和维护。
7.模块化:
就是将程序划分为若干个独立模块的这样一个过程,其中每个模块完成一个特定子功能,每个模块既是相对独立的,又是相互联系的,它们共同完成系统指定的各项功能。
8.桩模块:
用于代替所测模块调用的子模块,桩模块可以做少量的数据操作。
9.驱动模块:
用于模拟被测模块的上级模块。
它接收测试数据,把这些数据传送给所测模块,最后再输出实际测试结果。
10.模块:
模块是一个拥有明确定义的输入、输出和特性的程序实体。
11.模块独立性:
概括了把软件划分为模块时要遵守的准则,也是判断模块构造是否合理的标准,同时也是模块化、抽象及信息隐藏概念的直接产物。
12.软件工程:
即运用工程学的基本原理和方法来组织和管理软件生产。
13.程序的可移植性:
指把一个软件(或程序)从一台计算机环境移植到另一台计算机环境的容易程度。
14.模块的作用范围:
一个模块的作用范围是指受该模块内一个判定影响的所有模块的集合。
15.信息隐藏:
信息隐蔽是指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
16.集成测试也称组装测试或联合测试。
是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。
组装模块的方式有两种:
渐增式测试和非渐增式测试。
17.类:
某些对象共同特征(属性和操作)的表示。
18.对象:
是现实世界中个体或事物的抽象表示,是其属性和相关操作的封装。
19.继承:
是现实世界中遗传关系的直接模型,它表示类间的内在联系以及对属性和操作的共享。
20.聚集:
现实世界中部分-整体关系的模拟。
21.消息:
对象与外部世界相互关联的唯一途径。
(二)原理
1、螺旋模型的适应场合:
支持需求不明确,特别是大型软件系统的开发,并支持面向规格说明,面向过程,面向对象等多种软件开发方法,是一种具有广阔前景的模型。
2、软件开发风险分析实际上就是贯穿于软件工程过程中的一系列风险管理步骤,它包括以下内容:
1)风险标识;
2)风险估算;
3)风险评价;
4)风险驾驭和监控。
3、需求分析的任务是确定待开发的软件系统"
做什么"
.具体任务包括确定软件系统的功能需求,性能需求和运行环境约束,编制软件需求规格说明书,软件系统的验收测试准则和初步的用户手册。
4、快速原型技术的基本思想是:
在软件开发的早期,快速开发一个目标软件系统的原型,让用户对其进行评价并提出修改意见,然后开发人员根据用户的意见对原型进行改进。
5、原型法模型一般适应的场合:
它适合于那些不能预先确切定义需求的软件系统的开发,更适合于那些项目组成员(包括分析员,设计员,程序员和用户)不能很好交流或通信有困难的情况。
6、软件复杂性度量的主要参数极其含义:
1)规模:
总共的指令数或源程序行数;
2)难度:
通常由程序中出现的操作数的数目所决定的量来表示;
3)结构:
通常用与程序结构有关的度量来表示;
4)智能度:
即算法的难易程序。
7、非渐增式测试与渐增式测试的区别:
非渐增式测试:
分别测试每个模块,再放在一起结合成所要的程序;
渐增式测试:
将下一个要测试的模块同已测试好的模块放在一起测试,类推结合成所要的程序;
优缺点:
●渐增式测试可以较早发现模块间的接口错误
●非渐增式测试最后才组装,因此错误发现得晚。
●非渐增式测试中发现错误后难以诊断定位
●渐增式测试中,出现的错误往往跟最新加入的模块有关。
●渐增式测试在不断集成的过程中使模块不断在新的条件下受到新的检测,测试更彻底。
●渐增式测试较非渐增式测试费时。
●非渐增式测试可以同时并行测试所有模块,能充分利用人力。
8、软件工程目标:
是研制、开发与生产出具有良好软件质量和费用合算的产品。
软件工程的内容是:
1)采用工程化方法和途径来开发与维护软件;
2)应该开发和使用更好的软件工具;
3)采取必要的管理措施。
9、模块的内聚性包括的一般类型:
(1)偶然内聚
(2)逻辑内聚
(3)时间内聚
(4)通信内聚
(5)顺序内聚
(6)功能内聚
10、软件测试的几个主要步骤:
1)模块测试
2)子系统测试
3)系统测试
4)验收测试
5)平行运行
11、软件测试和调试的目的的区别:
测试的目的是判断和发现软件是否有错误,调试的目的是定位软件错误并纠正错误。
12、软件的可行性研究的目的:
就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。
13、文档在软件工程中的作用:
(1)提高软件开发过程的能见度;
(2)提高开发效率;
(3)作为开发人员阶段工作成果和结束标志;
(4)记录开发过程的有关信息便于使用与维护;
(5)提供软件运行、维护和培训有关资料;
(6)便于用户了解软件功能、性能。
(三)运用
1、某单位工卡包含信息如下:
该卡包括工号、英文名、年龄、性别、部门,工号从001至200,英文名是任意长度为从3至20的字母,年龄范围1至200,性别男或女,部门只能是“技术部”、“市场部”、“财务部”、“行政部”中的一个。
在数据字典中,工卡的数据条目定义如下:
工卡=工号+英文名+年龄+性别+部门
工号=001..200
英文名=3{字母}20
年龄=1..200
性别=[男|女]
部门=[技术部|市场部|财务部|行政部]
解析:
先明确要说明数据条目是谁,由哪些分量组成,这些分量是“+”的关系,还是“或”的关系,如本例的第一条是“+”的关系,然后分析它的组成是什么,再对其各个组成部分依次说明,如本例的第二至六条,要一条一条地写出来,不要都写到一条中。
2、能根据文字描述画出数据流图。
3、掌握变换型和事务性数据流图转化为系统结构图的原理,能根据给定的数据流图画出系统结构图。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 复习资料