《软件工程各种图结构.ppt》由会员分享,可在线阅读,更多相关《软件工程各种图结构.ppt(42页珍藏版)》请在第壹文秘上搜索。
1、需求分析阶段涉及的图实体-关系图 1. 数据对象 2. 属性 3. 关系学生成绩管理系统数据流图1、数据流图的基本符号2、数据流图的附加符号 表示数据流之间是“与”关系(同时存在) 表示数据流之间是“或”关系 表示只能从几个数据流中选一个(互斥关系)3、画数据流图的步骤 画顶层数据流图 画分层数据流图 画总的数据流图4、几点注意事项画学生成绩管理系统的数据流图。 状态转换图 1. 什么情况下要画状态转换图 2. 状态转换图的符号 画出数据结构中“栈”对象的状态转换图。IPO 图 输入处理输出(Input Process Output )图的简称。 画出学生成绩管理系统的 IPO 图。数据字典
2、数据字典(Data Dictionary ,DD) 是对实体-关系图、状态转换图和数据流图中出现的所有数据对象、属性、关系、状态、数据流、文件、处理等元素的定义的集合。数据字典的内容 . 数据元素 . 数据流 . 数据存储 . 数据处理数据字典使用的符号 表示“等价于”或“定义为” 连接 ,| 表示“或”,用“|”分隔,表示可任选其中某一项 表示“重复” ( ) 表示“可选”,用“,”号隔开 1A 表示 A 的内容至少要出现 1 次。 B 表示 B 的内容允许重复 0 至任意次。 如: 成绩单学号姓名1课程名成绩3 也可写为 成绩单学号姓名 课程名成绩数据字典与图形工具 数据字典与图形工具应相
3、辅相成、互相配合,既要互相补充又要避免冗余。 系统分析员在编写数据字典和使用图形工具时应遵守一些约定 需求分析举例 概要设计软件结构设计的图形工具 层次图(或HIPO图)结构图结构图1. 结构图的符号 (1)方框代表模块,框内注明模块的名字和主要功能。(2)方框之间的大箭头或直线表示模块的调用关系。 (3)带注释的小箭头表示模块调用时传递的信息及其传递方向。v 尾部加空心圆的小箭头表示传递数据信息。v 尾部加实心圆的小箭头表示传递控制信息。(4)选择结构(5)循环结构,模块 H 循环调用模块 A,B,C2. 结构图的绘制 学生成绩管理系统的结构图概要设计方法结构化方法 结构化方法又称面向数据流
4、设计方法(Structured Design,SD)。 设计步骤是先根据系统数据流图建立系统逻辑模型,再进行结构设计。1. 建立系统逻辑模型()变换型数据流)变换型数据流()事务型数据流)事务型数据流2. 2. 完成软件结构设计完成软件结构设计面向数据结构设计方法 Jackson 把数据结构(或程序结构)分为 三种基本类型 :(a)顺序 (b)选择 (c) 循环Jacksan 图特点:l 能对结构进行自顶向下分解,可以清晰地表示层次结构l 结构易读、形象、直观l 既可表示数据结构也可表示程序结构 Jackson 设计方法的四个步骤: 1、分析并确定输入数据和输出数据的逻辑结构; 2、找出输入数
5、据结构和输出数据结构中有对应关系的数据单元; 3、从描述数据结构的Jackson 图导出描述程序结构的Jackson 图; 4、列出所有的操作和条件,并把它们分配到程序结构图中去。 用Jacksan方法对学生成绩管理系统进行结构设计。 学生成绩管理系统在学生入学时输入学生基本信息。每次单科成绩是按班级内学生学号的顺序依次输入每位学生的平时成绩和考试成绩,。 然后由计算机计算每位学生的单科成绩总评分。班级各科成绩汇总详细设计 过程设计 过程设计就是用顺序、选择和循环三种结构的有限次组合或嵌套,描述模块功能的实现算法。 过程设计阶段的工具:流程图、N_S图、问题分析图(PAD图)、 判定表、判定树
6、、过程设计语言(PDL)等。流程图 1. 流程图的分类 (1)数据流程图)数据流程图 (2)程序流程图)程序流程图 (3)系统流程图)系统流程图 (4)程序网络图)程序网络图 (5)系统资源图)系统资源图2. 流程图符号3 流程图使用约定4. 流程图的三种基本结构:顺序、选择、循环。盒图盒图是Nassi和Shneiderman提出的,又称N_S图。1. 盒图的符号将下述含有GOTO语句的用程序流程图,改为N_S图。 学生成绩管理系统的 N-S 图。PAD 图基本符号学生成绩管理系统的 PAD 图 判定表1. 判定表的组成 左上部列出所有条件。 左下部列出所有可能做的工作。 右上部每一列表示各种
7、条件的一种可能组合,所有列表示条件组合的全部可能情况。 右下部的每一列是和每一种条件组合所对应的应做的工作。2. 判定表中的符号 右上部用“T”表示条件成立,用“”表示条件不成立,空白表示条件成立与否不影响。 右下部画“X”表示做该行左边列出的那项工作,空白表示不做该项工作。用判定表表示旅游票价的优惠规定。 某旅行社根据旅游淡季、旺季及是否团体订票,确定旅游票价的折扣率。具体规定如下:人数在20人以上的属团体,20人以下的是散客。每年的4-5月、7-8月、10月为旅游旺季,其余为旅游淡季。旅游旺季,团体票优惠5,散客不优惠。旅游淡季,团体票优惠30,散客优惠20。用判定表表示旅游订票的优惠规定
8、。用判定树表示旅游价格优惠规定。 某旅行社根据旅游淡季、旺季及是否团体订票,确定旅游票价的折扣率。具体规定如下:人数在20人以上的属团体,20人以下的是散客。每年的4-5月、7-8月、10月为旅游旺季,其余为旅游淡季。旅游旺季,团体票优惠5,散客不优惠。旅游淡季,团体票优惠30,散客优惠20。用判定表表示旅游订票的优惠规定。过程设计语言过程设计语言(Program Design Language,简称 PDL),也称伪码, 是一种混杂语言,说明某种结构化的程序设计语言的语法形式。用PDL表示的程序结构:1 顺序结构 处理1 处理2 处理32选择结构 l IF-THEN-ELSE结构: IF 条
9、件 处理1 ELSE 处理2 ENDIFl IF-THEN结构: IF 条件 处理1 NDIFlCASE结构: CASE 条件 OF CASE(1) 处理1 CASE(2) 处理2 CASE(n) 处理n3。循环结构FOR循环结构: FOR i=1 TO n 循环体 END FORWHILE循环结构: WHILE 条件 循环体 ENDWHILEUNTIL循环结构: REPEAT 循环体 UNTIL条件4. 模块定义和调用模块定义PROCEDURE 模块名(参数) RETURE模块调用CALL模块名(参数) 数据定义 DECLARE 类型 变量名,其中,类型可以有:字符、整型、实型、双精度、指针
10、、数组及结构等类型。5. 输入或输出 GET(输入变量表) PUT(输出变量表)数据代码设计 1. 代码的定义和作用 代码是为了对数据进行识别、分类、排序等操作所使用的数字、文字或符号。 2. 代码的性质代码设计原则 1、标准化:国际标准、国家标准、部颁标准或习惯标准 2、 惟一性 3、可扩充性 4、 简单性 5、 规范化 6、 适应性 代码种类1. 顺序码2. 信息块码3. 归组分类码 见表 归组代码示例4. 助记码5. 数字式字符码6. 组合码表归组代码示例信息代码哲学100宗教200社会科学300 法律320 商法325 公司法3252 股份公司法32524 合股公司法32525代码设计
11、方法基本步骤如下: 1. 确定编码对象 2. 明确编码目的 3. 确定代码的个数 4. 确定代码使用范围和使用期限 5. 确定代码体系和代码位数 6. 确定编码规则 7. 编写代码 8. 编写代码词典用户界面设计用户界面设计问题1. 系统响应时间2. 用户帮助设施3. 出错信息处理4命令交互用户界面设计过程用户界面设计是一个迭代的过程,一般步骤如下:先设计和实现用户界面原型。用户试用该原型,向设计者提出对界面的评价。设计者根据用户的意见修改设计并实现下一级原型。不断进行下去,直到用户满意为止。用户界面设计的基本原则(1)可靠性(2)简单性(3)易学习性和易使用性(4)立即反馈性用户界面设计指南 1一般交互2. 信息显示3. 数据输入