第3章_公共基础软件工程基础

合集下载

公共基础知识软件工程基础

公共基础知识软件工程基础

公共基础知识软件工程基础汇报人:日期:•软件工程概述•软件开发生命周期•软件开发模型•软件需求工程•软件设计基础•软件工程管理基础•软件工程工具与技术目录软件工程概述软件的定义软件的特点软件的定义与特点软件工程的目标是实现软件的可靠性、可维护性、可扩展性和可重用性,同时满足用户的需求和期望。

软件工程的定义与目标软件工程的目标软件工程的定义提高软件质量降低软件开发成本增强软件的可维护性满足用户需求软件工程的重要性软件开发生命周期需求分析阶段01020304设计阶段编码与测试阶段进行单元测试、集成测试和系统测试。

部署与维护阶段01020304软件开发模型线性开发流程文档驱动适用于稳定环境030201瀑布模型迭代开发每个迭代周期都包含需求分析、设计、编码、测试等阶段,逐步完善软件的功能和性能。

逐步完善适用范围广迭代模型快速响应轻文档跨职能团队敏捷开发模型类和继承面向对象开发模型使用类和继承的概念,通过定义类来创建对象,并通过继承来共享属性和方法。

对象导向面向对象开发模型是一种以对象为导向的开发方法,将现实世界中的事物抽象成对象,并定义对象的属性和方法。

适用于复杂系统面向对象开发模型适用于复杂系统的开发,特别是涉及多个模块和组件的项目。

面向对象开发模型软件需求工程01020304访谈问卷调查焦点小组观察原型法螺旋模型敏捷方法面向对象方法确定系统目标划分系统功能定义数据结构制定接口标准需求规格说明书编制软件设计基础软件设计的概念软件设计的原则软件设计的基本原则和概念软件设计的任务软件设计的过程软件设计的主要任务和过程软件质量要素软件设计中的质量要素包括可靠性、可用性、可维护性、可扩展性等,以确保软件产品能够满足用户需求并稳定运行。

关键技术软件设计中的关键技术包括面向对象编程、设计模式、架构模式等,以提高软件产品的质量和开发效率。

软件设计中的质量要素和关键技术软件工程管理基础任务分解资源估算估算方法软件项目估算基础制定进度计划确定关键路径监控与调整软件项目进度计划制定风险识别识别项目中可能出现的风险,如需求变更、技术难题、人员流失等。

公共基础知识总结

公共基础知识总结

第1章数据结构与算法1、数据的不可分割的基本单位是数据项。

2、算法的复杂度是执行算法所需要的计算工作量,取决于问题的规模和待处理数据的初态。

3、数据结构作为一门学科,主要讨论以下三方面的内容:1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;2)在对数据元素进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;3)对各种数据结构进行的运算。

4、数据在计算机内存中的表示是指数据的存储结构。

5、在数据结构中,与所使用的计算机无关的数据结构是逻辑结构。

6、在数据结构中,从逻辑上可以把数据结构分成线性结构和非线性结构。

7、栈的特点:先进后出8、队列的特点:先进先出9、树,二叉树,满二叉树,完全二叉树10、二叉树的遍历(前序,中序,后序)11、对线性表进行折半查找,要求线性表必须以顺序方式存储,且结点按关键字有序排列。

12、查找技术1)顺序查找2)二分查找(即折半查找)13、排序技术3)交换类排序(冒泡排序,快速排序)4)选择类排序(简单选择排序,堆排序)5)插入类排序(简单插入排序,西尔排序)各种排序方法时间、空间复杂度对比15、线性结构中元素之间存在一对一关系,树型结构中元素之间存在一对多的关系。

16、在双向链表中,每个结点有两个指针域,一个指向前驱结点,一个指向后继结点。

第2章程序设计基础1、程序设计经历了结构化设计(面向过程)和面向对象的程序设计阶段2、良好的编程风格应注意的因素1)源程序的文档化◆符号名的命名规则:具有一定的实际意义,便于理解程序功能◆正确的程序注释:注释分为序言性注释和功能性注释。

序言性注释常位于程序开头部分,它包括程序标题、程序功能说明、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。

功能性注释一般在源程序体之中,用于描述其后的语句或程序的主要功能。

◆视觉组织:在程序中利用空格、空行、缩进等技巧使程序层次清晰。

2)数据说明的方法◆数据说明的次序规范化◆说明语句中变量安排有序化◆使用注释来说明复杂数据的结构3)语句的结构为使程序简单易懂,应注意如下:◆一行写一条语句◆编写程序优先考虑清晰性◆程序编写要做到清晰第一,效率第二◆在保证程序正确的基础上再提高效率◆避免使用临时变量而使程序的可读性下降◆避免不必要的转移◆尽量使用库函数◆避免采用复杂的条件语句◆尽量使用“否定”条件语句◆数据结构要有利于程序的简化◆要模块化,使模块功能尽可能单一◆利用信息隐蔽,确保每一个模块的独立性◆从数据出发去构造程序◆不要修补不好的程序,要重新编写4)输入输出输入输出方式和风格应尽可能方便用户的使用,考虑如下原则:◆对输入数据要检验数据的合法性◆检查输入项的各种重要组合和合理性◆输入格式要简单,使得输入的步骤和操作尽可能简单◆输入数据时,应允许使用自由格式◆应允许缺省值◆输入一批数据时,最好使用输入结束标志◆在以交互式输入/输出方式进行输入时,要在屏幕上使用提示符明确提示输入的请求,同时在数据输入过程中和输入结束时,应在屏幕上给出状态信息◆当程序设计语言对输入格式有严格要求时,应保持输入格式与输入语句的一致性3、结构化程序设计的原则1)自顶向下:先考虑总体后考虑细节,先考虑全局目标后考虑局部目标。

计算机二级考试选择题必背知识点(公共基础+计算机基础)

计算机二级考试选择题必背知识点(公共基础+计算机基础)

计算机二级考试选择题必背知识点公共基础第一章数据结构与算法§1.1 算法1.算法的定义:是指解题方案的准确而完整的描述。

(算法不等于程序,程序的设计不可能优于算法的设计)2.算法的基本特征:可行性、确定性、有穷性、足够的情报。

3.算法的基本要素:4.算法的时间和空间复杂度:算法的时间复杂度和算法的空间复杂度相互独立。

§1.2 数据结构的基本概念1.数据:需要处理的数据元素的集合,一般来说,这些数据元素,具有某个共同的特征。

(1)数据元素是数据的基本单位,即数据集合中的个体。

(2)有时一个数据元素可有若干数据项组成。

数据项是数据的最小单位。

2.结构:是集合中各个数据元素之间存在的某种关系(或联系)。

3.数据结构:是指相互有关联的数据元素的集合。

4.数据结构的分类:(1)逻辑结构:线性结构(线性表、栈、队列);非线性结构(树、图)。

(2)存储结构:顺序存储;链式存储。

(3)运算:插入、删除、查找、排序。

5.逻辑结构:反应数据元素间的逻辑关系(即前后件关系)的数据结构。

(1)线性结构(线性表):(举例:春→夏→秋→冬)a.有且只有一个根节点,它无前件;b.每一个节点最多有一个前件,也最多有一个后件。

(2)非线性结构:a.不满足以上两个条件的数据结构就称为非线性结构;b.非线性结构主要是指树形结构和网状结构。

6.存储结构:又称为数据的物理结构,是数据的逻辑结构在计算机存储空间中的存放方式(1)顺序存储结构:主要用于线性的数据结构,它把逻辑上相邻的数据元素存储在物理上相邻的存储单元里。

(2)链式存储结构:每一个结点至少包含一个指针域,用指针的指向来体现数据元素之间在逻辑上的联系。

§1.3 线性表及其顺序存储结构1.线性表:线性表是n(n≥0)个数据元素构成的有限序列,表中除第一个元素外的每一个元素,有且只有一个前件,除最后一个元素外,有且只有一个后件。

举例:英文字母表、地理学中的四向、表格2.线性表的顺序存储结构:通常线性表可以采用顺序存储和链式存储,但一般使用顺序存储结构。

公共基础——软件工程基础

公共基础——软件工程基础

公共基础——软件工程基础软件工程基础知识1、构成计算机软件的是()。

A、源代码B、程序和数据C、程序和文档D、程序、数据及相关文档参考答案:D【解析】软件指的是计算机系统中与硬件相互依赖的另一部分,包括程序、数据和有关的文档,选D。

2、软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是()。

A、编译程序B、操作系统C、教务管理系统D、汇编程序参考答案:C【解析】编译软件、操作系统、汇编程序都属于系统软件,只有C教务管理系统才是应用软件。

3、. 软件生命周期中的活动不包括()。

A、市场调研B、需求分析C、软件测试D、软件维护参考答案:A【解析】软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。

主要活动阶段是:可行性研究与计划阶段,需求分析,软件设计,软件实现,软件测试,运行和维护,所以选择A。

4、负责数据库中查询操作的数据库语言是()。

A、数据定义语言B、数据管理语言C、数据操纵语言D、数据控制语言参考答案:C【解析】数据定义语言:负责数据的模式定义与数据的物理存取构建;数据操纵语言:负责数据的操纵,包括查询及增、删、改等操作;数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。

5、软件生命周期是指()。

A、软件产品从提出、实现、使用维护到停止使用退役的过程B、软件从需求分析、设计、实现到测试完成的过程C、软件的开发过程D、软件的运行维护过程参考答案:A【解析】通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。

也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。

6、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是()。

A、外模式B、内模式C、概念模式D、逻辑模式参考答案:B【解析】数据库系统的三级模式是概念模式、外模式和内模式。

概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。

公共基础知识3软件工程基础

公共基础知识3软件工程基础
•的构造设计优化原那么 •软件概要设计的根本任务 •编写概要设计文档 •模块独立性** •模块分解时应遵循的原那么
4、详细设计
•为每个模块设计其实现的细节 •主要方法:构造化程序设计 •工具:图形描述工具、语言描述工具和表 格描述工具
程序流程图
•方框:处理过程 •菱形框:逻辑判断条件 •箭头〔流线〕:控制流 •缺点:不能很好地描述程序的全局构造
• “各个击破〞是解决复杂问题的一个重要策略 • 从时间角度出发,对软件开发和维护的复杂问题
进展分解,把软件生存的漫长周期依次划分为假 设干个阶段 • 每个阶段有相对独立的任务 • 前一阶段任务的完成是后一阶段工作的前提和根 底 • 后一阶段任务的完成使前一阶段提出的解法更加 化 • 每一阶段完毕前都有严格的技术检查和管理复审
• 常见的生命周期模型:瀑布模型*、原型模 型*、增量模型、螺旋模型、喷泉模型、变 换模型、基于知识的模型
瀑布模型*
• 图见教材P67
• 强调了阶段的顺序性和依赖性,前一阶段 的输出是后一阶段的输入,
• 每一阶段工作的完成都需要确认,确认过 程是一个严格的回溯过程,后一阶段中出 现的问题要通过前一阶段的重新确认来解 决。问题发现得晚那么解决该问题的代价 就越大
〔2〕、判定覆盖
• 每个判定的所有结果都 至少出现过一次 • A=3、B=0、X=3〔覆盖SACBD〕 • A=2、B=1、X=1〔覆盖SABED〕
4、黑盒测试的测试用例设计
• 等价类划分法 • 边界值分析法 • 错误推测法 • 因果图法
3.5 调试
计算机系统开展的早期-个体化 〔20世纪60年代中期以前〕
软件生命周期的各个阶段*
• 软件可行性研究与工程开发方案:完成“要解决 的问题是什么〞和“该问题是否有解〞

全国计算机等级考试二级公共基础知识课后习题集答案

全国计算机等级考试二级公共基础知识课后习题集答案
#include
main(
{ FILE * fp;
char ch,fname [10];
printf("Input the name of file ";
gets(fname;
gets(fname;
if((fp=[5]= =NULL
A.在队列中只能插入数据
B.在队列中只能删除数据
C.队列是先进先出的线性表
D.队列是先进后出的线性表
6.下列关于栈的叙述中正确的是(
A.在栈中只能插入数据
B.在栈中只能删除数据
C.栈是先进先出的线性表
D.栈是先进后出的线性表
8.在深度为5的满二叉树中,叶子结点的个数为(
A. 32
B. 31
C. 16
A整型、实型、逻辑型B整型、实型、字符型
C整型、字符型、逻辑型D整型、实型、逻辑型、字符型
(4为表示关系x大于等于y大于等于z,应使用C语言表达式
A(x>=Y&&(Y>=z B(x>=YAND(y>=z C(x>=Y>=z D(x> =Y&(Y>=z
(5下列对C语言字符数组的描述中错误的是
A字符数组可以存放字符串B字符数组中的字符串可以整体输入、输出
2.数据独立性分为逻辑独立性和物理独立性.当数据的存储结构改变时,其逻辑结构可以不变。因此,基于逻辑结构的应用程序不必修改,称为(
3.数据库系统中实现各种数据管理功能的核心软件称为(
4.关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、(和自定义完整性.
5.在关系模型中,把数据看成一个二维表,每一个二维表称为一个(
D.算法执行过程中所需要的存储空间

公共基础知识教学讲义

公共基础知识教学讲义

公共基础知识教学讲义◆考试方式公共基础知识有10道选择题和5道填空题共30分第1章数据结构与算法一、算法:1、算法:1)、定义:指解题方案的准确而完整的描述。

是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。

2)、注意:算法!=程序!=计算方法3)、联系:程序可以作为算法的一种描述,但程序通常还需考虑很多与方法和分析无关的细节问题,即受到计算机系统运行环境的限制。

于是,程序的编制不可能优于算法的设计。

2、算法的基本特征:1)、可行性:针对实际问题设计的算法,能不能被执行。

2)、确定性:指算法中的每一个步聚都必须是有明确定义的,不允许有模棱两可的解释,也不允许有多义性。

3)、有穷性:指算法必须能在有限的时间内做完,即算法必须能执行有限个步聚之后终止。

4)、拥有足够的情报:为算法所提供的数据是否足够。

3、算法的基本要素:2种1)、对数据对象的运算和操作2)、算法的控制结构:顺序、选择、循环4、算法复杂度:1)、主要包括:A、时间复杂度:指执行算法所需要的计算工作量。

就是执行过程中所需要基本运算次数。

①与问题的规模有关。

时间复杂度=算法的工作量= f(n)注: n是问题的规模。

②与特定的输入有关。

B、空间复杂度:指执行这个算法所需要的内存空间。

①包含:算法程序所占的空间+ 输入的初始数据所占的存储空间+ 执行过程中所需要的额外空间(算法程序执行过程中的工作单元+ 某种数据结构所需要的附加存储空间)②应用:采用压缩存储技术。

二、数据结构:1、数据结构:是指相互有关联的数据元素的集合。

(带有结构的数据元素的集合)2、作为计算机的一门学科,主要研究和讨论:1)、数据集合中各数据元素之间所固有的逻辑关系。

(数据的逻辑结构)2)、在对数据进行处理时,各数据元素在计算机中存储关系。

(数据的存储结构)3)、对各种数据结构进行的运算。

3、讨论的主要目的:为了提高数据处理的效率。

全国计算机等级考试二级c语言公共基础知识总结

全国计算机等级考试二级c语言公共基础知识总结

全国计算机等级考试二级c语言公共基础知识总结第一章数据结构与算法1.1 算法算法:是指解题方案的准确而完整的描述。

算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。

算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。

特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。

算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。

指令系统:一个计算机系统能执行的所有指令的集合。

基本运算包括:算术运算、逻辑运算、关系运算、数据传输。

算法的控制结构:顺序结构、选择结构、循环结构。

算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。

算法复杂度:算法时间复杂度和算法空间复杂度。

算法时间复杂度是指执行算法所需要的计算工作量。

算法空间复杂度是指执行这个算法所需要的内存空间。

1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。

数据结构是指相互有关联的数据元素的集合。

数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。

数据的存储结构有顺序、链接、索引等。

线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。

非线性结构:不满足线性结构条件的数据结构。

1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。

在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。

公共基础之软件工程基础(最全)word资料

公共基础之软件工程基础(最全)word资料

公共基础之软件工程基础(最全)word资料第三章软件工程基础1.下列叙述中,正确的是( D )。

A)软件就是程序清单B)软件就是存放在计算机中的文件C)软件应包括程序清单及运行结果D)软件包括程序和文档2.软件是程序、数据和文档的集合。

3.软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件)4.软件工程的出现是由于(C )A)程序设计方法学的影响B)软件产业化的需要C)软件危机的出现D)计算机的发展5.软件工程研究的内容主要包括:软件开发技术和软件工程管理。

6.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(B)A)软件投机B)软件危机C)软件工程D)软件产生7.开发大型软件时,产生困难的根本原因是( A )。

A)大型系统的复杂性B)人员知识不足C)客观世界千变万化D)时间紧、任务重8.软件危机出现于20世纪60年代末,为了解决软件危机,人们提出了软件工程学的原理来设计软件,这就是软件工程诞生的基础。

9.下列不属于软件工程的3个要素的是(D )A)工具B)过程C)方法D)环境10.软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。

通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。

11.软件生命周期中所花费用最多的阶段是(D )A)详细设计B)软件编码C)软件测试D)软件维护12.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D )A)概要设计B)详细设计C)可行性分析D)需求分析13.软件开发的结构化生命周期方法将软件生命周期划分成( A )。

A) 定义、开发、运行维护B)设计阶段、编程阶段、测试阶段C)总体设计、详细设计、编程调试D)需求分析、功能定义、系统设计14.软件生命周期一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。

15.软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 软件需求规格说明书(SRS)
• 软件需求规格说明书是需求分析阶段的最后成果, 通过建立完整的信息描述、详细的功能和行为描述、 性能需求和设计约束的说明、合适的验收标准,给 出对目标软件的各种需求。
PPT文档演模板
第3章_公共基础软件工程基础
•例题
3.3 结构化设计方法
• 1、软件设计的基础 • 从技术观点来看,软件设计包括软件结构设计、
完善求精。
PPT文档演模板
第3章_公共基础软件工程基础
• 数据字典:对所有与系统相关的数据元素的一个有 组织的列表,以及精确的、严格的定义,使得用户 和系统分析员对于输入、输出、存储成分和中间计 算结果有共同的理解。
• *:数据字典的作用是对数据流图中出现的被命名 的图形元素的确切解释。 *:数据字典是结构化分析方法的核心。
• 软件测试方法:静态测试和动态测试。
• 静态测试:包括代码检查、静态结构分析、 代码质量度量。不实际运行软件,主要通 过人工进行。
• 动态测试:是基于计算机的测试,主要包 括白盒测试方法和黑盒测试方法。
PPT文档演模板
第3章_公共基础软件工程基础
• 3 白盒测试
•例题
– 结构测试
– 将软件看成透明的白盒,根据程序的内部结构和逻辑结 构来设计测试例子,对程序的路径和过程进行测试,检
第3章_公共基础软件工程基础
• 7. 软件工具和软件开发环境
– 软件工具(CASE):用来辅助软件开、运行、 维护、管理、支持等过程中的活动的软件
– 软件开发环境:支持软件产品开发的软件系统, 它由软件工具集和环境集成机制构成
PPT文档演模板
第3章_公共基础软件工程基础
3.2 结构化分析方法
• 基本思想 – 将系统分析看成工程项目,有计划、有步骤地进行工作。
测试用例设计,软件测试的实施,单元测 试、集成测试和系统测试。 • 程序的调试,静态调试与动态调试。
PPT文档演模板
第3章_公共基础软件工程基础
第3章 软件工程基础
➢ 3.1 软件工程基本概念 ➢ 3.2 结构化分析方法 ➢ 3.3 结构化设计方法 ➢ 3.4 软件测试 ➢ 3.5 软件调试
PPT文档演模板
第3章_公共基础软件工程基础
• 6 软件工程的目标和与原则
• (1)软件工程目标:在给定成本、进度的前提下,开发 出具有有效性、可靠性、可理解性、可维护性、可重用性、 可适应性、可移植性、可追踪性和可互操作性且满足用户 需求的产品。
• (2)软件工程需要达到的基本目标应是:付出较低的开 发成本;达到要求的软件功能;取得较好的软件性能;开 发的软件易于移植;需要较低的维护费用;能按时完成开 发,及时交付使用。
•例题
•结构化分析方法是结构化程序设计理论在软件需求分 析阶段的应用。
•结构化分析方法的实质:着眼于数据流,自顶向下, 逐层分解,建立系统的处理流程,以数据流图和数据 字典为主要工具,建立系统的逻辑模型。 •结构化分析的常用工具:1)数据流图(DFD);2) 数据字典(DD);3)判定树;4)判定表。 数据流图以图形的方式描绘数据在系统中流动和处理 的过程,它反映了系统必须完成的逻辑功能,是结构 化分析方法中用于表示系统逻辑模型的一种工具。
PPT文档演模板
第3章_公共基础软件工程基础
• (3)软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一 致性、完备性和可验证性。
• 1)抽象:抽象是事物最基本的特性和行为,忽略非本质细节,采用分 层次抽象,自顶向下,逐层细化的办法控制软件开发过程的复杂性。
• 2)信息隐蔽:采用封装技术,将程序模块的实现细节隐蔽起来,使模 块接口尽量简单。
凑(内聚性高)
• 模块的扇入和扇出系数合理 • 模块的规模适当
PPT文档演模板
第3章_公共基础软件工程基础
• 软件概要设计的基本任务是:1)设计软件系统结构;2) 数据结构及数据库设计;3)编写概要设计文档;4)概 要 设计文档评审。
• 常用的软件结构设计工具是结构图,也称程序结构图。程 序结构图的基本图符:模块用一个矩形表示,箭头表示模 块间的调用关系。在结构图中还可以用带注释的箭头表示 模块调用过程中来回传递的信息。还可用带实心圆的箭头 表示传递的是控制信息,空心圆箭心表示传递的是数据信
PPT文档演模板
第3章_公共基础软件工程基础
3.4 软件测试
• 1 意义目的
– 为了发现错误 – 希望能以最少的人力和时间发现潜在的各种
错误和缺陷 – 保证系统质量和可靠性的关键步骤
• 2 测试方法
– 人工测试 – 机器测试
PPT文档演模板
第3章_公共基础软件工程基础
• 软件测试定义:使用人工或自动手段来运行或测定 某个系统的过程,其目的在于检验它是否满足规定 的需求或是弄清预期结果与实际结果之间的差别。
查是否满足设计的要求
• 4 黑盒测试
– 功能测试
– 将软件看成黑盒子,在完全不考虑软件内部结构和特性 的情况下,测试软件的外部特性
第3章_公020/11/26
第3章_公共基础软件工程基础
学习内容
• 软件工程基本概念,软件生命周期概念, 软件工具与软件开发环境。
• 结构化分析方法,数据流图,数据字典, 软件需求规格说明书。
• 结构化设计方法,总体设计与详细设计。 • 软件测试的方法,白盒测试与黑盒测试,
• 3)模块化:模块是程序中相对独立的成分,一个独立的编程单位,应 有良好的接口定义。模块的大小要适中,模块过大会使模块内部的复 杂性增加,不利于模块的理解和修改,也不利于模块的调试和重用; 模块太小会导致整个系统表示过于复杂,不利于控制系统的复杂性。
• 4)局部化:保证模块间具有松散的耦合关系,模块内部有较强的内聚 性。
PPT文档演模板
第3章_公共基础软件工程基础
• 常用的过程设计(即详细设计)工具有以 下几种:
• 图形工具:程序流程图、N-S(方盒图)、 PAD(问题分析图)和HIPO(层次图+输 入/处理/输出图)。
• 表格工具:判定表。
• 语言工具:PDL(伪码)
• PDL(伪码) :过程设计语言,它是用正 文形式表示数据和处理过程的设计工具。
息。
PPT文档演模板
第3章_公共基础软件工程基础
• 经常使用的结构图有四种模块类型:传入模块、传出模块、 变换模块和协调模块。
• 传入模块:从下属模块取得数据,经处理再将其传送给上 级模块。
• 传出模块:从上级模块取得数据,经处理再将其传送给下 属模块。
• 变换模块:从上级模块取得数据,进行特定的处理,转换 成其他形式,再传送给上级模块。
PPT文档演模板
第3章_公共基础软件工程基础
•例题
• 软件设计:包括软件结构设计、数据设计、接口设 计和过程设计。其中结构设计是定义软件系统各部 件之间的关系;数据设计是将分析时创建的模型转 化为数据结构的定义;接口设计是描述软件内部、 软件和操作系统之间及软件与人之间如何通信;过 程设计则是把系统结构部件转换成软件的过程性描 述。软件设计分概要设计和详细设计。参加人员有 系统分析员和高级程序员。产生的文档有设计规格 说明书。
• 5. 软件工程的理论和技术研究的内容
– 软件开发技术和软件工程管理
• 6. 软件工程的目标
– 在给定的成本、进度的前提下,开发出具有有效性、可 靠性、可理解性、可维护性、可适应性、可移植性、可 追踪性和可互操作性且满足用户需求的产品
– 软件工程鼓励研制和采用各种先进的软件开发方法、工 具和环境
PPT文档演模板
•在结构化程序设计中,模块划分的原则是:模块内 具有高内聚度,模块间具有低耦合度。
PPT文档演模板
第3章_公共基础软件工程基础
•例题
• 2 总体设计(概要设计)
– 设计原则
• 分解—协调原则 • 自顶向下的原则 • 信息屏蔽、抽象的原则 • 一致性原则 • 明确性原则 • 模块间的耦合度尽可能小,模块内部组合尽可能紧
第3章_公共基础软件工程基础
•例题
3.1 软件工程基本概念
• 1. 软件工程
– 软件工程是指应用计算机科学、数学及管理科学等原 理,以工程化的原则和方法来解决软件问题的工程。 其目的是提高软件生产率、提高软件质量、降低软件 成本。
• 2. 软件危机
– 早期的软件主要指程序,采用个体工作方式,缺少相 关文档,质量低,维护困难,这些问题称为“软件危 机”,软件工程概念的出现源自于软件危机。
– 6个活动阶段
• 可行性研究与计划制定:确定系统的总体目标。参加人员有 用户、项目负责人和系统分析员,产生文档有可行性分析报 告、项目计划书等
• 需求分析:确定系统的逻辑模型。参加人员有用户、项目负 责人和系统分析员。产生文档为需求规格说明书,其作用: (1)便于用户、开发人员进行理解交流;(2)反映用户问 题的结构,可以作为软件开发工作的基础和依据;(3)作为 确认测试和验收的依据。
PPT文档演模板
第3章_公共基础软件工程基础
• 加工(转换):输入数据经加工变换产生输出。
•例题
• 数据流:沿箭头方向传送数据的通道,一般在旁边标注数 据流名。
• 存储文件(数据源):表示处理过程中存放各种数据的文 件。
• 源,潭:表示系统和环境的接口,属系统之外的实体。
• 画数据流图的基本步骤:自外向内,自顶向下,逐层细化,
PPT文档演模板
第3章_公共基础软件工程基础
• 3 详细设计
– 根本目标
• 确定应用怎样具体的实现所要求的系统,不是具体的 编写程序,而是要设计程序的“蓝图”
– 此阶段的结果基本上决定了最终的程序代码的质 量
– 包括内容:
• 代码设计 • 输入设计 • 输出设计 • 处理过程设计 • 用户界面设计 • 安全控制设计
相关文档
最新文档