软考程序类专题十一_软件工程

2007-10-25 11:04:54   Count:

详见专题二,本次主要讲解下午试题的内容、形式、要求和解答方法,是软件工程有关内容的综合应用,也是软件设计师的基本要求。

软考程序类专题十一:软件工程(20071018)在线专题授课音视频

(本课程正式学员可登录学习系统,进入对应课程,在窗口左边的“课程资料室”内进行在线浏览。)


1. 软件生存周期

软件生成周期的6个阶段,制定计划、需求分析、设计、程序编制、测试以及运行维护。

(1)软件项目计划:
  软件项目计划阶段的参加人员有用户、项目负责人和系统分析员。该阶段所产生的文档有可行性分析报告、项目计划书等。

(2)需求分析和定义:
  该阶段的参加人员有用户、项目负责人和系统分析员;生成的文档为需求规格说明书。

(3)软件设计(software design):
  软件设计可以分为概要设计和详细设计。概要设计的任务是模块分解,确定软件的结构,模块的功能和模块间的接口,以及全局数据结构的设计。详细设计的任务是设计每个模块的实现细节和局部数据结构。概要设计阶段参加的人员有系统分析员和高级程序员,详细设计阶段参加的人员有高级程序员和程序员。设计阶段产生的文档有设计规格说明书。

(4)编码(coding):
  编码阶段参加的人员有高级程序员和程序员,产生的文档是源程序清单。

(5)测试(testing):
  测试阶段的参加人员通常由另一部门的高级程序员或系统分析员承担,该阶段产生的文档有软件测试计划和软件测试报告。

(6)运行维护

2. 软件开发模型

(1)瀑布模型如图4-1所示

(2)演化模型(evolutionary model)
  演化模型特别适用于对软件需求缺乏准确认识的情况

(3)螺旋模型(spiral model)
  这种模型综合了瀑布模型和演化模型的优点,并增加了风险分析。

螺旋模型包含了4个方面的活动:
  1) 制定计划
  2) 风险分析
  3) 实施工程
  4) 客户评估
喷泉模型主要用于描述面向对象的开发过程。


  结构化分析(structured analysis)方法SA方法。结构化分析方法的基本思想是自顶向下逐层分解。SA方法的分析结果由以下几部分组成:一套分层的数据流图、一本数据词典、一组小说明和补充材料。

1. 数据流图
(1)DFD的基本成分
  1) 数据流,表示数据的流向。
  2) 加工,描述了输入数据流到输出数据流之间的变换,也就是输入数据流经过什么处理后变成了输出数据流。
  3) 数据存储,用来表示暂时存储的数据。
  4) 外部实体,是指存在于软件系统之外的人员或组织。
(2)分层数据流图的画法
(3)对图和加工进行编号

2. 数据词典(DD)
  数据词典就是为数据流中的每个数据流文件、加工,以及组成数据流或文件的数据项做出说明。
(1)词典条目
(2)词典管理

3. 描述加工的结构化语言
  常用的加工逻辑描述方法有结构化语言、判定表和判定树3种。

结构化设计方法的基本思想是将系统设计成由相对独立、功能单一的模块组成的结构。
1. 信息流的类型
  DFD的信息流大体上可以分为两种类型,一种是变换流,另一种是事务流。
(1)变换流:
  信息沿着输入通路进入系统,然后通过变换中心处理,再沿着输出通路转成外部形式离开系统。变换流型的DFD可以明显地分成输入、变换(主加工)、输出3大部分。
(2)事务流:
  信息沿着输入通路到达一个事务中心,事务中心根据输入信息的类型在若干个动作序列中选择一个来执行,这种信息流称为事务流。事务流有明显的事务中心,各活动流以事务中心为起点呈辐射状流出。

2. 变换分析
  变换分析是从变换流型的DFD导出程序结构图。确定输入流和输出流孤立出变换中心

3. 事务分析
  确定事务中心和每条活动流的流特性。

4. 软件测试步骤:
软件测试实际上可分成4步进行:
(1)单元测试:
  单元测试也称为模块测试,在模块编写完成且无编译错误后就可以进行。

(2)组装测试:
  组装测试也称为集成测试,就是把模块按系统设计说明书的要求组合起来进行测试。

(3)确认测试:
  经过组装测试之后,软件就被集成起来,接口方面的问题已经解决,将进入软件测试的最后一个环节——确认测试。

(4)系统测试:
  其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方。常见的系统测试主要恢复测试、安全性测试、强度测试、性能测试、可靠性测试、安装测试。

5. 软件能力成熟度模型简介
CMM将软件过程改进分为5个成熟度级别:

初始级
( initial )
软件过程的特点是杂乱无章,有时甚至很混乱几乎没有明确定义的步骤,成功完全依赖个人努力和英雄式的核心人物。
可重复级
( repeatable )
建立了基本的项目管理过程来跟踪成本、进度和机能。有必要的过程准则来重复以前在同类项目中的成功。
已定义级
(defined)
管理和工程的软件过程已经文档化、标准化,并综合成整个软件开发组织的标准软件过程。所有的项目都采用根据实际情况修改后得到的标准软件过程来发展和维护软件。
已管理级
(managed)
制定了软件过程和产品质量的详细度量标准。软件过程的产品的质量都被开发组织的成员所理解和控制。
优化级(optimized) 加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能持续不断地改进。

浏览该文章的用户为您推荐了该信息: 
       
   
   
 
站内检索:
本月授课安排
栏目导航
阅读排行