名词解释 5

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重的问题

2.黑盒法:它是一种从用户观点出发的测试。通常被用来验证软件功能的正确性和可操作性。

3.白盒法:它依赖于对程序内部细节的严密检验,针对特定条件设计测试用例,对软件的逻辑路径进行测试。

4.内聚:内聚性也称内联系,指模块的功能强度的度量,是一个模块内部各个元素彼此结合的紧密程度的度量。

5.类:是指一组具有相同属性和运算的对象的抽象,即一组具有相同数据结构和相同操作的对象的集合,类是对象的模板。

6.耦合:指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间的联系越紧密,其耦合性就越强,模块的独立性则越差。

7.继承:是父类和子类之间共享数据结构和方法的机制,这是类之间的一种关系。

8.软件:能够完成预定功能,性能,相应数据进行加工的程序和描述数据及其操作的文档。

9.软件生命周期:一个软件从定义,开发,使用和维护直至最后被废弃要经历的漫长时期。

10.数据字典:是关于数据信息的集合,也就是对数据流图中包含数据元素的定义的集合。

11.实体--联系图(E-R图):是使用最广泛的一种数据建模技术,它描述了从用户角度看到的数据形式,反映的是用户的现实环境,与软件系统中的实现无关。

12.信息隐蔽:是指在设计中确定模块时,使得一个模块所包含的信息。对于不需要这些信息的模块来说,是不能访问的。

13.软件过程:软件过程是为了开发出高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

14.软件可维护性:是指软件维护人员理解,改正,改纳或改进这个软件的难易程度。它是软件质量的主要特征之一。

15.结构化程序设计:如果一个程序的代码块仅仅通过顺序,选择,循环这三个基本结构进行连接,并且每个代码块只有一个入口和出口,则称这个程序是结构化的程序设计。

16.编程风格:是指程序在不影响程序正确性和效率的前提下,有效编排和合理组织程序的基本原则。

17.Alpha测试:由用户在开发者的场所进行,并且在开发者对用户的“指导”下进行测试。开发者负责记录发现的软件错误和软件在使用中遇到的问题。

1.简述软件工程的基本原理。

答:1.用分阶段的生命周期计划严格管理。2.坚持进行阶段评审。由错误的放大效应可知,错误发现的越早,改正所付出的代价就越小。3.实行严格的产品控制,不应随意修改需求。

4.采用现代程序设计技术,提高软件开发和维护的效率,还能有效地提高软件产品的质量。

5.结果应能清楚地审查。应当规定每个开发阶段的产品标准和文档要求。

6.开发小组的人员应当少而精,人员数量的增加还会造成通信开销的激增,尽量组成少而精的开发团队是至关重要的。

7.承认不断改进软件工程实践的必要性。

2.简述软件工程中的瀑布模型及其特点。

答:其主要特点1)各阶段之间有依赖性和严格的顺序性。2)推迟实现。3)严格的阶段质保。4)文档驱动。缺点:1)导致了“阻塞”严重。2)实际项目很少顺序严格。3)用户不能准确描述需求。4)产品出现晚,并且在后期容易发生重大缺陷。

3.简述生命周期中总体设计过程应遵循的基本原理。

答:应遵循的基本原理有:1)模块化,为解决一个复杂问题时,自顶向下逐层把软件系统规划分成若干模块的过程;2)抽象,抽出事物质特征而不考虑其他细节;3)逐步求精,为了能集中精力解决主要问题而尽力推迟对问题细节的考虑;4)信息隐蔽,在设计中确定模块时,使得一个模块内部包含的信息,对于不需要这些信息的其他模块来说,是不能访问的;5)局部化,把一些关系密切的软件元素,物理的改得彼此靠近;6)模块独立性,指每个模块只完成系统要求的独立子功能,并且与其他模块的联系最少且接口简单。

4.简述过程设计语言(PDL)的特点。

答:1.关键字采用固定语法,并支持结构化构件,数据说明机制和模块化。2.处理部分采用自然语言描述。3.允许说明简单和复杂的数据结构。4.子程序的定义与调用规则,不受具体接口方式的影响。

5.需求分析中对系统的综合要求包括哪些方面?

答:(1)功能性需求:应划分出系统必须完成的所有功能;(2)非功能性需求:主要从各个角度对所考虑的,可能解决方案起到约束和限制作用。1.可用性。2.可靠性。3.性能。4.可支持性。5.外部接口需求。(3)出错处理需求,说明出错时对系统对环境时如何反应。(4)逆向需求系统不应该做什么。(5)将来可能提出需求。

6.什么是模块化?模块化的根据是什么?采用模块化原理的优点是什么?逆向需求不应该做什么?

答:模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。每个模块完成一个特定的子功能,所有模块按某种方法组装起来,成为一个整体,完成整个系统要求的功能。根据:降低其复杂性,还可减少开发工作量,从而降低开发成本,提高软件生产率,这就是模块的依据。优点:采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。

7.研究软件工程项目可行性应从那几个方面分析?

答:(1)技术可行性,是对于要开发项目的功能,性能和限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目能否实现。(2)经济可行性,进行开发成本的估算以及进行效益的评估确定要开发的项目是否值得投资开发。(3)操作可行性,在这个应用范围内,系统的操作方式是否行得通。(4)社会可行性,要研究开发项目是否存在任何侵犯,妨碍等责任问题,要开发项目的允许方式在用户组织内是否行得通,现有管理制度,人员素质和操作方式是否可行。

8.简述软件工程中需求分析的基本任务。

答:1.确定系统的综合要求。(1)功能性需求(2)非功能性需求(3)出错处理需求,说明出错时对系统对环境时如何响应。(4)逆向需求系统不应该做什么。(5)将来可能提出需求。

2.分析系统的数据要求,数据的存放和组织形式占系统紧密相关。

3.建立软件的逻辑模型,修正系统开发计划。

4.编写软件需求规格说明书。

5.需求分析评审。

9.软件结构设计的启发式规则有那些?

答:1.模块独立性准则。通过模块分解或合并,力求做到降低耦合提高内聚,保持模块相对独立性。2.模块的作用域应该在控制域内,一个模块的影响范围应在其控制范围之内,且条件判断所在的模块应与受其影响的模块在层次上尽量接近。3.软件结构的形态特征准则,深度,宽度,扇出扇入。深度能粗略地反映系统的规模和复杂程度。顶层扇出数较高一些,中间层扇出数较低一些,底层扇入数较高一些。4.模块大小准则。模块大小最好在50-150条语句左右。5.模块的接口准则。接口设计要简单。设计功能可预测并能得到验证的模块。适当划分模块规模,以保持其独立性。

10.试用流程图举例描述结构化程序设计中的三种基本控制语句。

相关文档
最新文档