杭电期末软件工程复习资料

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

系统流程图是做什么用的?

系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描述系统里面的每个部件(程序,文件,数据库,表格,人工过程等等)。系统流程图表达的是信息在系统各部件之间流动的情况,而不是对信息进行加工处理的控制过程,因此尽管系统流程图使用的某些符号和程序流程图中使用的符号相同,但是它确是物理流程图而不是程序流程图。

软件的特点是什么?

软件是指令的集合,通过执行指令可以满足预期的特征、功能和性能需求;数据结构,它使得程序可以充分利用信息;描述程序的操作和使用的文档。软件的工作就是告诉计算机做什么和如何做。

软件质量:与确定的功能和性能需求一致、与成文的开发标准相一致、与所有专业开发的软件所期望的隐含特性相一致。

数据流(DFD)图的原则是什么?

数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。

在单张数据流图时,必须注意以下原则:1.一个加工的输出数据流不应与输入数据流同名,即使它们的组成成分相同。2.保持数据守恒。也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者说是通过该加工能产生的数据。3.每个加工必须既有输入数据流,又有输出数据流。4.所有的数据流必须以一个外部实体开始,并以一个外部实体结束。5.外部实体之间不应该存在数据流。

软件测试的目的是什么?为了发现程序中的错误而执行程序的过程

什么是需求分析?干什么的?在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。

编码风格是什么?有哪些要求?程序内部文档(包括标识符、适当的注解和程序的视觉组织等)、数据说明(数据说明的风格是在写程序时确定的)、语句构造(原则:每个语句都应该简单而直接,不能为了提高效率而使程序变得过分复杂)、输入输出(对所有输入数据进行检查、检查输入项重要组合的合法性、保持输入格式简单、使用数据结束标记,不要要求用户指定数据的数目、明确提示交互式输入的请求,详细说明可用的选择或边界数值、当程序设计语言对格式有严格要求时,应保持输入格式一致、设计良好的输出报表、给所有输出数据加标记)、效率(指处理机时间和存储器容量两个方面。

原则:首先,效率是性能要求,因此应该在需求分析阶段确定效率方面的要求。其次,效率是靠好设计来提高的。第三,程序的效率和程序的简单程度是一致的,不要牺牲程序的清晰性和可读性来不必要地提高效率。)

可行性研究的目的是什么?确定问题是否值得去解决,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计过程。

改进SC图

如何计算环域复杂度?

快速原型模型

快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。快速原型模型的第一步是快速建立一个能反映用户主要需求的原型系统,让用户在计算机上试用它,通过实践来了解目标系统的概貌。

优点:软件产品的开发基本上是线性顺序进行的。

需求规格说明书的作用

它是需求分析阶段得出的最重要文档。通常用自然语言完整、准确、具体地描述系统的数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需求、接口需求、约束、逆向需求以及将来可能提出的要求。自然语言书写的规格说明书有容易书写、容易理解的优点,为大多数人所欢迎和采用。

软件工程的基本目标是什么

软件工程:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

本质特性:软件工程关注于大型程序的构造、软件工程的中心课题是控制复杂性、软件经常变化、开发软件的效率非常重要、和谐地合作是开发软件的关键、软件必须有效地支持它的用户、在软件工程领域中通常由具有一种文化背景的人替具有另一种文化背景的人创造产品。

基本原理:用分阶段的生命周期计划严格管理、坚持进行阶段评审、实行严格的产品控制、采用现代程序设计技术、结果应能清楚地审查、开发小组的人员必须少而精、承认不断改进软件工程实践的必要性。

软件生存周期模型是描述软件开发过程中各种活动如何执行的模型

不适合作为科学计算的语言是哪些?

瀑布型模型及其优缺点

瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

瀑布模型的重要地位瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动;否则返回前面,甚至更前面的活动。对于经常变化的项目而言,瀑布模型毫无价值

特点:阶段间具有顺序性和依赖性;推迟实现的观点;质量保证的观点;

优点:可强迫开发人员采用规范的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。

缺点:瀑布模型是由文档驱动的。

耦合性分类?

耦合性是程序结构中各个模块之间相互关联的度量。它取决于各个模块之间接口的复杂程度、调用模块的方式以及哪些信息通过接口。

分为七类:非直接耦合、数据耦合、印记耦合、控制耦合、外部耦合、公共耦合、内容耦合

数据流图,数据字典,软件结构图

数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。

数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。内容:数据流、数据流分量(即数据元素)、数据存储、处理。

软件结构图是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系,软件结构往往用树状或网状结构的图形来表示,其主要内容有模块及模块的控制关系,

如何提高测试效率

1.首先要有一个合理的详细的测试计划。

2.测试尽早介入项目详细了解项目的业务需求,做好测试的前期准备。

3.对测试项目前景充满信心,调整最佳心态,保持愉悦的工作心情。

4.提高测试接受的标准,减少测试版本送测次数。

5.测试负责人认真做好测试文档的评审。

6.加强项目组成员的相互沟通工作和项目信息收集工作

使用白盒测试时应怎样去确定覆盖标准

覆盖标准:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、点覆盖、边覆盖、路径覆盖发现错误的能力呈由弱至强的变化。语句覆盖每条语句至少执行一次。判定覆盖每个判定的每个分支至少执行一次。条件覆盖每个判定的每个条件应取到各种可能的值。判定/条件覆盖同时满足判定覆盖条件覆盖。条件组合覆盖每个判定中各条件的每一种组合至少出现一次。路径覆盖使程序中每一条可能的路径至少执行一次 .点覆盖标准与语句覆盖标准一样。边覆盖标准与判定覆盖标准一样。路径覆盖程序的每条可能路径都至少执行一次

程序的基本控制结构

顺序结构、分支结构(也称为选择结构)和循环结构

详细设计的工具是图形、表格、语言。

有关成本效益分析的:目是否可行应从货币的时间价值、投资回收期、纯收入、投资回收率方面考虑

软件危机是什么,其产生的原因是什么

软件发展第二阶段的末期,由于计算机硬件技术的进步,计算机运行速度、容量、可靠性有显著的提高,生产成本显著下降,这为计算机的广泛应用创造了条件。一些复杂的、大型的软件开发项目提出来了,但是,软件开发技术的进步一直未能满足发展的需要。在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。

相关文档
最新文档