软件工程课程
6
• 基本准则 • 在中立地点举行双方会议 • 制定会议规则 • 指出议事日程 • 由一个中立的”协调人”来主持会议 • 使用双方都能理解的图表,工作单
7
软件原型
• 建立可以快速修改的软件原型与用户沟通
8
分析建模与规格说明
• 分析模型的结构
9
数据字典
• 描述整个软件使用或者产生的所有数据对 象
16
• 2 项目概述 2.1 待开发软件的一般描述 描述待开发软件的背景,所应达到的目标,以及市场前景等。 2.2 待开发软件的功能 简述待开发软件所具有的主要功能。为了帮助每个读者易于理解,可以使用列表或图形的方法进 行描述。使用图形表示,可以采用: • 顶层数据流图 • UseCase 图 • 系统流程图 • 层次方框图 2.3 用户特征 描述最终用户应具有的受教育水平、工作经验及技术专长。 2.4 运行环境 描述软件的运行环境,包括硬件平台、硬件要求、操作系统和版本,以及其他的软件或与其共存的 应用程序等。 2.5 条件与限制 给出影响开发人员在设计软件时的约束条款,例如: • 必须使用或避免使用的特定技术、工具、编程语言和数据库 • 硬件限制 • 所要求的开发规范或标准
• 用处 • 类似于某中产品演示,便于用户理解,进一步
揭露一些目前还不知道的需求 • 通过勾画目标系统在工作上带来的便利,可
以调动用户的积极性
5
简易的应用规格说明技术
• 上面说的访问方法往往和用户之间区分” 你们,我们”,不能象一个团队那样同心协力 识别和精化需求
• 简易的应用规格说明技术是一种面向团队 的需求收集方法,提倡用户与开发者密切合 作,共同识别问题,提出解决方案要素,指定基 本需求和指出不同的解决方法
软件工程课程
第3次课
1
传统方法学
• 即结构化的软件工程方法学,按照软件生命 周期,分为
• 1 结构化分析 • 2 结构化设计 • 3 结构化实现
2
结构化分析
其实就是对用户提出的初步需求反复多次求 精细化,以得到对目标系统完整,准确,具体的 要求.
也可以理解为一种建立模型的活动,通常建立 以下三种模型
•数据对象之间的关系 • 用于数据建模 • 图中出现的每个数据对象的属性可以在”
数据对象描述”中说明
11
数据流图
• 用于指出当数据在软件系统中移动的时候 怎样被变换
• 描绘变换数据流的功能和子功能 • 是功能建模的基础 • 在”处理规格说明”中给出对出现在数据
17
• 见教材p30
18
• 例子
实体-关系图
19
• 例子
20
• 例子
21
• 例子
22
• 例子
数据流图
23
• 数据流图(Data Flow Diagram)简称DFD, 它是一种描述“分解”的图示工具。它用 直观的图形清晰地描绘了系统的逻辑模型, 图中没有任何具体的物理元素,只是描述 数据在系统中的流动和处理的情况,具有 直观、形象、容易理解的优点。
14
一份标准的”软件需求规格说明” 规范
• 需求规格说明书规范
需求分析应交付的主要文档是需求规格说 明。
软件需求规格说明作为分析结果,它是 软件开发、软件验收和管理的依据。因此, 必须特别重视,不能有一点错误或不当, 否则将来可能要付出很大代价。
15
• 1 引言 1.1 编写目的 • 阐明开发本软件的目的 • 说明编写本软件说明书的目的 • 指明软件需求说明书所预期的读者 1.2 项目背景 • 标识待开发软件产品的名称、代码 • 列出本项目的任务提出者、项目负责人、系统分析员、系统设计员、程序 设计员、程序员、资料员以及与本项目开展工作直接有关的人员和用户 • 说明该软件产品与其它有关软件产品的相互关系 1.3 术语说明 列出本文档中所用到的专门术语的定义和英文缩写词的原文。 1.4 参考资料 列举编写软件需求规格说明时所参考的资料,包括项目经核准的计划任务 书、合同、引用的标准和规范、项目开发计划、需求规格说明、使用实例文 档,以及相关产品的软件需求规格说明。 在这里应该给出详细的信息,包括标题、作者、版本号、发表日期、出版 单位或资料来源。
数据模型 功能模型 行为模型
3
与用户沟通的技术
• 1 访谈 • 正式访谈:由系统分析员预先准备好问题,会
议按实现约定的议程开展 • 非正式访谈:开放性的问题,允许用户自由发
挥,随心所欲地交谈 • 发放调查表:可以收集更准确认真的回答,并
且根据调查情况针对性的选择用户进行访 谈
4
• 情景分析:给出目标系统的一个特定情景,观 察用户的反馈
24
• 数据流图有4种基本符号:
25
• 数据源点或终点(用正方形表示); • 文件(用直线段表示) • 加工(用圆表示) • 数据流(用箭头表示)。
26
•
27
• 图2.6是一个定货系统的数据流图。图中,数据 的源点是:仓库管理员,数据的终点是:采购员。 加工有两个:处理事务和产生报表,其编号分别 为:加工l、加工2、文件也有两个:库存清单和 定货信息。用箭头来表示的都是数据流,数据流 可以由加工流向加工、加工流向文件或从文件流 向加工,也可以由数据的源点/终点流向加工或 由加工流向数据的源点/终点。一般说来,除了 流向文件或由文件流向加工的数据流可不必命名 外(因文件命名已非常明确了),每个数据流都必 须有一个合适的名字。在图2.6中,事务、定货报 表都是数据流名。
28
• 例子
29
• 命名 • 1 为数据流(或数据存储)命名 • 2 为处理命名
30
• 例子 • 书p39
状态转换图
31
• 例子
32
• P55 1-5
练习
33
无悔无愧于昨天,丰硕殷实 的今天,充满希望的明天。
34
流图中各个功能的描述
12
状态转换图
• 指明作为外部事件结果的系统行为 • 描绘了各种状态和在不同状态之间转换的
方式 • 是行为建模的基础 • 在”控制规格说明”中包含了有关软件控
制的附加信息
13
软件需求规格说明
• 需求分析除了创建分析模型以外,还要写出” 软件需求规格说明”
• ”软件需求规格说明”是需求分析阶段的 最终成果