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

第3章 软件工程基础

3.1软件工程基本概念

1.软件的定义与特点

(1)定义:软件是指与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档和数据。

(2)特点。

•是逻辑实体,有抽象性。

•生产没有明显的制作过程。

•运行使用期间不存在磨损、老化问题。

•开发、运行对计算机系统有依赖性,受计算机系统的限制,导致了软件移植问题。

•复杂性较高,成本昂贵。

•开发涉及诸多社会因素。

2.软件的分类

软件可分应用软件、系统软件和支撑软件3类。

(1)应用软件是特定应用领域内专用的软件。

(2)系统软件居于计算机系统中最靠近硬件的一层,是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。

(3)支撑软件介于系统软件和应用软件之间,是支援其它软件的开发与维护的软件。

3.软件危机与软件工程

软件危机指在计算机软件的开发和维护中遇到的一系列严重问题。软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序,包括软件开发技术和软件工程管理。

4.软件生命周期

软件产品从提出、实现、使用维护到停止使用的过程称为软件生命周期。 在国家标准中,软件生命周期划分为8个阶段①软件定义期:包括问题定义、可行性研究和需求分析3个阶段。②软件开发期:包括概要设计、详细设计、实现和测试4个阶段。③运行维护期:即运行维护阶段。

5.软件工程的原则

软件工程的原则包括:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。

3.2结构化分析方法

需求分析的任务是发现需求、求精、建模和定义需求的过程,可概括为:需求获取、需求分析、编写需求规格说明书和需求评审。

1.常用的分析方法

•结构化分析方法:其实质着眼于数据流,自顶向下,逐层分解,建立系统的处理流程。

•面向对象分析方法。

2.结构化分析常用工具

结构化分析常用工具包括数据流图、数字字典(核心方法)、判断树和判断表。

(1)数据流图:即DFD图,以图形的方式描绘数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能。是一种功能模型。

符号名称作用:

•箭头代表数据流,沿箭头方向传送数据的通道

•圆或椭圆代表加工,输入数据经加工变换产生输出

•双杠代表存储文件,表示处理过程中存放各种数据文件

•方框代表源和潭,表示系统和环境的接口

(2)数据字典:结构化分析方法的核心。数据字典是对所有与系统相关的数据元素的一个有组织的列表。以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。

(3)判定树:使用判定树进行描述时,应先从问题定义的文字描述中分清判定的条件和判定的结论,根据描述材料中的连接词找出判定条件之问的从属关系、并列关系、选择关系,根据它们构造判定树。

(4)判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合引发的,使用判定表比较适宜。

3.软件需求规格说明书

软件需求规格说明书是需求分析阶段的最后成果,是软件开发的重要文档之一。

(1)软件需求规格说明书的作用:①便于用户、开发人员进行理解和交流;②反映出用户问题的结构,可以作为软件开发工作的基础和依据;③作为确认测试和验收的依据。

(2)软件需求规格说明书的内容:①概述;②数据描述;③功能描述;④性能描述;⑤参考文献;⑥附录。

(3)软件需求规格说明书的特点:①正确性;②无歧义性;③完整性;④可验证性;⑤一致性;⑥可理解性;⑦可修改性;⑧可追踪性。

3.3结构化设计方法

1.软件设计的基本概念和方法

软件没计是一个把软件需求转换为软件表示的过程。

(1)基本原理:抽象、模块化、信息隐藏、模块独立性(度量标准:耦合性和内聚性,高耦合、低内聚)。

(2)基本思想:将软件设计成由相对独立、单一功能的模块组成的结构。

2.概要设计

(1)4个任务:设计软件系统结构、数据结构及数据库设计、编写概要设计文档、概要设计文档评审。

(2)面向数据流的设计方法:数据流图的信息分为交换流和事物流,结构形式有交换型和事务型。

3.详细设计的工具

详细设计的工具包括:

•图形工具:程序流程图、N-S、PAD、HIPO。

•表格工具:判定表。

•语言工具:PDL(伪码)。

3.4软件测试

1.目的

为了发现错误而执行程序的过程。

2.准则

•所有测试应追溯到用户需求。

•严格执行测试计划,排除测试的随意性。

•充分注意测试中的群集现象。

•程序员应避免检查自己的程序。

•穷举测试不可能。

•妥善保存设计计划、测试用例、出错统计和最终分析报告。

3.软件测试技术和方法

软件测试的方法按是否需要执行被测软件的角度,可分为静态测试和动态测试,按功能分为白盒测试和黑盒测试。

(1)白盒测试:根据程序的内部逻辑设计测试用例,主要方法有逻辑覆盖测试、基本路径测试等。

(2)黑盒测试:根据规格说明书的功能来设计测试用例,主要诊断方法有等价划分法、边界值分析法、错误推测法、因果图法等,主要用于软件确认测试。

4.软件测试的实施

软件测试是保证软件质量的重要手段,软件测试是一个过程,其测试流程是该过程规定的程序,目的是使软件测试工作系统化。

软件测试过程分4个步骤,即单元测试、集成测试、验收测试和系统测试。 单元测试是对软件设计的最小单位——模块(程序单元)进行正确性检验测试。

单元测试的目的是发现各模块内部可能存在的各种错误。

单元测试的依据是详细的设计说明书和源程序。

单元测试的技术可以采用静态分析和动态测试。

3.5程序的调试

(1)任务:诊断和改正程序中的错误。

(2)调试方法:强行排错法、回溯法和原因排除法。

第3章 软件工程基础

3.1软件工程基本概念

1.软件的定义与特点

(1)定义:软件是指与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档和数据。

(2)特点。

•是逻辑实体,有抽象性。

•生产没有明显的制作过程。

•运行使用期间不存在磨损、老化问题。

•开发、运行对计算机系统有依赖性,受计算机系统的限制,导致了软件移植问题。

•复杂性较高,成本昂贵。

•开发涉及诸多社会因素。

2.软件的分类

软件可分应用软件、系统软件和支撑软件3类。

(1)应用软件是特定应用领域内专用的软件。

(2)系统软件居于计算机系统中最靠近硬件的一层,是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。

(3)支撑软件介于系统软件和应用软件之间,是支援其它软件的开发与维护的软件。

3.软件危机与软件工程

软件危机指在计算机软件的开发和维护中遇到的一系列严重问题。软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序,包括软件开发技术和软件工程管理。

4.软件生命周期

软件产品从提出、实现、使用维护到停止使用的过程称为软件生命周期。 在国家标准中,软件生命周期划分为8个阶段①软件定义期:包括问题定义、可行性研究和需求分析3个阶段。②软件开发期:包括概要设计、详细设计、实现和测试4个阶段。③运行维护期:即运行维护阶段。

5.软件工程的原则

软件工程的原则包括:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。

3.2结构化分析方法

需求分析的任务是发现需求、求精、建模和定义需求的过程,可概括为:需求获取、需求分析、编写需求规格说明书和需求评审。

1.常用的分析方法

•结构化分析方法:其实质着眼于数据流,自顶向下,逐层分解,建立系统的处理流程。

•面向对象分析方法。

2.结构化分析常用工具

结构化分析常用工具包括数据流图、数字字典(核心方法)、判断树和判断表。

(1)数据流图:即DFD图,以图形的方式描绘数据在系统中流动和处理的过程,它只反映系统必须完成的逻辑功能。是一种功能模型。

符号名称作用:

•箭头代表数据流,沿箭头方向传送数据的通道

•圆或椭圆代表加工,输入数据经加工变换产生输出

•双杠代表存储文件,表示处理过程中存放各种数据文件

•方框代表源和潭,表示系统和环境的接口

(2)数据字典:结构化分析方法的核心。数据字典是对所有与系统相关的数据元素的一个有组织的列表。以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。

(3)判定树:使用判定树进行描述时,应先从问题定义的文字描述中分清判定的条件和判定的结论,根据描述材料中的连接词找出判定条件之问的从属关系、并列关系、选择关系,根据它们构造判定树。

(4)判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合引发的,使用判定表比较适宜。

3.软件需求规格说明书

软件需求规格说明书是需求分析阶段的最后成果,是软件开发的重要文档之一。

(1)软件需求规格说明书的作用:①便于用户、开发人员进行理解和交流;②反映出用户问题的结构,可以作为软件开发工作的基础和依据;③作为确认测试和验收的依据。

(2)软件需求规格说明书的内容:①概述;②数据描述;③功能描述;④性能描述;⑤参考文献;⑥附录。

(3)软件需求规格说明书的特点:①正确性;②无歧义性;③完整性;④可验证性;⑤一致性;⑥可理解性;⑦可修改性;⑧可追踪性。

3.3结构化设计方法

1.软件设计的基本概念和方法

软件没计是一个把软件需求转换为软件表示的过程。

(1)基本原理:抽象、模块化、信息隐藏、模块独立性(度量标准:耦合性和内聚性,高耦合、低内聚)。

(2)基本思想:将软件设计成由相对独立、单一功能的模块组成的结构。

2.概要设计

(1)4个任务:设计软件系统结构、数据结构及数据库设计、编写概要设计文档、概要设计文档评审。

(2)面向数据流的设计方法:数据流图的信息分为交换流和事物流,结构形式有交换型和事务型。

3.详细设计的工具

详细设计的工具包括:

•图形工具:程序流程图、N-S、PAD、HIPO。

•表格工具:判定表。

•语言工具:PDL(伪码)。

3.4软件测试

1.目的

为了发现错误而执行程序的过程。

2.准则

•所有测试应追溯到用户需求。

•严格执行测试计划,排除测试的随意性。

•充分注意测试中的群集现象。

•程序员应避免检查自己的程序。

•穷举测试不可能。

•妥善保存设计计划、测试用例、出错统计和最终分析报告。

3.软件测试技术和方法

软件测试的方法按是否需要执行被测软件的角度,可分为静态测试和动态测试,按功能分为白盒测试和黑盒测试。

(1)白盒测试:根据程序的内部逻辑设计测试用例,主要方法有逻辑覆盖测试、基本路径测试等。

(2)黑盒测试:根据规格说明书的功能来设计测试用例,主要诊断方法有等价划分法、边界值分析法、错误推测法、因果图法等,主要用于软件确认测试。

4.软件测试的实施

软件测试是保证软件质量的重要手段,软件测试是一个过程,其测试流程是该过程规定的程序,目的是使软件测试工作系统化。

软件测试过程分4个步骤,即单元测试、集成测试、验收测试和系统测试。 单元测试是对软件设计的最小单位——模块(程序单元)进行正确性检验测试。

单元测试的目的是发现各模块内部可能存在的各种错误。

单元测试的依据是详细的设计说明书和源程序。

单元测试的技术可以采用静态分析和动态测试。

3.5程序的调试

(1)任务:诊断和改正程序中的错误。

(2)调试方法:强行排错法、回溯法和原因排除法。


相关内容

  • 南京信息工程大学应用气象学课程
  • 南京信息工程大学应用气象学课程 课程名称 开课学期 课程类别 课程性质 周学时 学分 考核方式 总学时 讲课 实验 实验2 报名 讨论 开课学院 形势与政策 公共基础课 公共(必) 2.0-0.0 2.0 122 应用气象学院 暑期社会实践 实践性课程 实践(必) 6.0-0.0 2.0 2周 应用 ...

  • 关于大型公共建筑项目管理的
  • 关于大型公共建筑项目管理的浅析 摘要: 随着我国经济和社会快速发展,大型公共建筑日益增多,大型公共建筑项目管理是施工企业面临的新的挑战.文章结合某大型公共建筑项目工程为例,对大型公共建筑项目管理进行了详细的分析. 关键词: 大型公共建筑:项目管理: 分析 近年来,随着我国经济和社会快速发展,大型公共 ...

  • 液塑限试验步骤及结果整理方法
  • 试述液塑限试验步骤及结果整理方法. 答案:(1)试验步骤如下: ①取0.5mm筛下的代表性土样200g,分开放入三个盛土皿中,加不同数量的蒸馏水,土样的含水率分别控制在液限(a点),略大于塑限(c点)和二者的中间状态(b点),用调土刀调匀,放置18h以上,测定a点锥入深度为20(±0.2)mm,测定 ...

  • 安徽理工大学专业介绍
  • 安徽理工大学专业介绍 弹药工程与爆炸技术专业 弹药工程与爆炸技术专业是全国最早也是全国唯一一个专门培养民用爆破器材和工程爆破技术的本科专业.本专业创建于1977年, 是安徽省首批本科教改示范专业和国家特色专业. 本专业培养具备火炸药.起爆器材.火工烟火技术.爆炸理论.工程爆破及安全技术等方面基础理论 ...

  • 科技公共服务平台建设情况报告
  • 江苏省科技公共服务平台建设情况报告 现将江苏省落实<国家中长期科学和技术发展规划纲要>和<2004-2010年国家科技基础条件平台建设纲要>.建设科技公共服务平台的有关情况汇报如下: 一.总体设计 1. 制定地方平台建设总体方案和管理办法 2004年12月,科技部等部委颁发了 ...

  • 河南省村庄建设规划导则--正文4
  • 第一章 总 则 1.1 编制目的 为贯彻落实科学发展观,促进城乡统筹,加快农村经济和社会发展,改善农村人居环境,加强对我省村庄建设规划的指导,特指定<河南省村庄建设规划导则>(以下简称<导则>). 1.2 适用范围 1.2.1 本<导则>适用于我省行政区域范围内村 ...

  • 国家基本公共服务体系"十二五"规划
  • 国家基本公共服务体系"十二五"规划 序 言 "十二五"时期是我国全面建设小康社会的关键时期,是深化改革开放.加快转变经济发展方式的攻坚时期.建立健全基本公共服务体系,促进基本公共服务均等化,是深入贯彻落实科学发展观的重大举措,是构建社会主义和谐社会.维护社会公 ...

  • 公共租赁住房建设工程可行性报告
  • 第一章 总论 一.项目概况 1.项目名称:***新建公共租赁住房建设项目. 2.项目法人单位:***,项目法定代表人:****. 3.项目建设内容及规模:***新建公共租赁住房建设项目,拟建于***,总建设占地面积15074平方米(22.6亩),总建筑面积20000平方米.500套,套均建筑面积40 ...

  • 江苏省村庄建设规划导则
  • 江苏省村庄建设规划导则 (试 行) 江苏省建设厅 2006年5月 目 录 第一章 总则........................................................................................................... ...

  • 注册勘察设计工程师基础考试经验介绍
  • 前言: 注册土木工程师(水利水电工程)执业制度于2005年9月起已正式实施,但目前暂时还没有很严格的执行,直接原因是由于这项职业准入制度颁布时间还不长,取得相关资格的人还不够多.这点业内人士应该都是有所体会的,如果现在立刻严格执行,很多中小设计院 是要直接被取消资质的.但早日实施职业准入制度对加强对 ...