{管理信息化信息化知识}软件工程023

上传人:卓****库 文档编号:140336782 上传时间:2020-07-29 格式:PPTX 页数:62 大小:284.49KB
返回 下载 相关 举报
{管理信息化信息化知识}软件工程023_第1页
第1页 / 共62页
{管理信息化信息化知识}软件工程023_第2页
第2页 / 共62页
{管理信息化信息化知识}软件工程023_第3页
第3页 / 共62页
{管理信息化信息化知识}软件工程023_第4页
第4页 / 共62页
{管理信息化信息化知识}软件工程023_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《{管理信息化信息化知识}软件工程023》由会员分享,可在线阅读,更多相关《{管理信息化信息化知识}软件工程023(62页珍藏版)》请在金锄头文库上搜索。

1、软件工程,第2,3章 结构化分析,1,要求:,上课时间:每周一(1-2) 上机时间:每周一(3-4) 研讨时间:每周四(3-4) 注:周四(3)for (1)班和(3)班 周四(4)for (2)班和(4)班 4人/组,每周3组 考核方案:平时成绩40% (出勤10%+研讨15%+上机15%) 考试成绩60% 不迟到、早退,2,上海大学计算机学院 软件工程 陈圣波,结构化方法,一种面向数据流的传统软件开发方法 以数据流为中心构建软件的分析模型和设计模型 分为: 结构化分析(Structured Analysis 简称SA) 结构化设计(Structuresd Design 简称SD) 结构化程

2、序设计(Structured Programmin 简称SP),3,上海大学计算机学院 软件工程 陈圣波,内容摘要,结构化分析方法概述 数据流图 分层数据流图的审查 数据字典 描述基本加工的小说明 小结,4,上海大学计算机学院 软件工程 陈圣波,内容摘要,结构化分析方法概述 数据流图 分层数据流图的审查 数据字典 描述基本加工的小说明 小结,5,上海大学计算机学院 软件工程 陈圣波,结构化分析方法,发展历史 提出:20世纪60年代末到70年代初 成熟:20世纪70年代末到80年代中期 主要思想:抽象与自顶向下的逐层分解(控制复杂性的两个基本手段) 抽象:在每个抽象层次上忽略问题的内部复杂性,只

3、关注整个问题与外界的联系 分解:将问题不断分解为较小的问题,直到每个最底层的问题都足够简单为止,6,上海大学计算机学院 软件工程 陈圣波,结构化分析方法中的抽象与分解,抽象:从作为整体的软件系统开始(第一层),每一抽象层次上只关注于系统的输入输出 分解:将系统不断分解为子系统、模块 随着分解层次的增加,抽象的级别越来越低,也越接近问题的解(算法和数据结构),X,7,上海大学计算机学院 软件工程 陈圣波,结构化分析过程,理解当前的现实环境,获得当前系统的具体模型(物理模型) 从当前系统的具体模型抽象出当前系统的逻辑模型 分析目标系统与当前系统逻辑上的差别,建立目标系统的逻辑模型 为目标系统的逻辑

4、模型作补充,8,上海大学计算机学院 软件工程 陈圣波,结构化分析模型的描述,数据字典是模型的核心,它包含了软件使用和产生所有数据的描述 数据流图:用于功能建模,描述系统的输入数据流如何经过一系列的加工变换逐步变换成系统的输出数据流 实体关系图:用于数据建模,描述数据字典中数据之间的关系,状态转换图:用于行为建模,描述系统接收哪些外部事件,以及在外部事件的作用下的状态迁移情况,9,上海大学计算机学院 软件工程 陈圣波,内容摘要,结构化分析方法概述 数据流图 分层数据流图的审查 数据字典 描述基本加工的小说明 小结,10,上海大学计算机学院 软件工程 陈圣波,数据流图,Data Flow Diag

5、ram(简称DFD):描述输入数据流到输出数据流的变换(即加工)过程,用于对系统的功能建模,基本元素包括:,数据流(data flow):由一组固定成分的数据组成,代表数据的流动方向,加工(process):描述了输入数据流到输出数据流的变换,即将输入数据流加工成输出数据流,文件(file):使用文件、数据库等保存某些数据结果供以后使用,源或宿(source or sink):由一组固定成分的数据组成,代表数据的流动方向,11,上海大学计算机学院 软件工程 陈圣波,源或宿,存在于软件系统之外的人员或组织,表示软件系统输入数据的来源和输出数据的去向,因此也称为源点和终点 例如,对一个考务处理系统

6、而言 考生向系统提供报名单(输入数据流),所以考生是考试系统(软件)的一个源 考务处理系统要将考试成绩的统计分析表(输出数据流)传递给考试中心,所以考试中心是该系统的一个宿 源或宿用相同的图形符号表示 当数据流从该符号流出时表示是源 当数据流流向该符号时表示是宿 当两者皆有时表示既是源又是宿,12,上海大学计算机学院 软件工程 陈圣波,加工和文件,加工:描述输入数据流到输出数据流的变换 每个加工用一个定义明确的名字标识 至少有一个输入数据流和一个输出流 可以有多个输入数据流和多个输出数据流 文件:保存数据信息的外部单元 每个文件用一个定义明确的名字标识 由加工进行读写 DFD中称为文件,但在具

7、体实现时可以用文件系统实现也可以用数据库系统等实现,13,上海大学计算机学院 软件工程 陈圣波,数据流,每个数据流用由一组固定成分的数据组成并拥有一个定义明确的名字标识 如:运动会管理系统中,报名单(数据流)由队名、姓名、性别、参赛项目等数据组成 数据流的流向 从一个加工流向另一个加工 从加工流向文件(写文件) 从文件流向加工(读文件) 从源流向加工 从加工流向宿,14,上海大学计算机学院 软件工程 陈圣波,示例:图书订购系统DFD,图书库存,书库 管理,收费,制作 财务报表,财务报表,经理,帐务数据库,15,上海大学计算机学院 软件工程 陈圣波,数据流图的扩充符号,描述一个加工的多个数据流之

8、间的关系 星号():表示数据流之间存在“与”关系 所有输入数据流同时存在时,才能进行加工处理 或加工处理的结果是同时产生所有输出数据流 加号():表示数据流之间存在“或”关系 至少存在一个输入数据流时才能进行加工处理 或加工处理的结果是至少产生一个输出数据流 异或():表示数据流之间存在“异或”(互斥)关系 必须存在且仅存在一个输入数据流时,才能进行加工处理 或加工处理的结果是产生且仅产生一个输出数据流,16,上海大学计算机学院 软件工程 陈圣波,对数据流图进行分层,George Miller在著名的论文“神奇的数字7加减2:我们处理信息的能力的某种限制”中指出:人们在一段时间内的短期记忆似乎

9、限制在59件事情之内 根据自顶向下逐层分解的思想将数据流图画成层次结构 每个层次画在独立的数据流图中,加工个数可大致控制在“7加减2”的范围中,17,上海大学计算机学院 软件工程 陈圣波,数据流图的各个层次,顶层图只有代表整个软件系统的1个加工,描述了软件系统与外界(源或宿)之间的数据流 顶层图中的加工经分解后的图称为0层图(只有1张) 中间层图中至少有一个加工(也可以有多个)在下层图中分解成一张子图 处于最底层的图称为底层图,其中所有的加工不再分解成新的子图,18,上海大学计算机学院 软件工程 陈圣波,图和加工的编号,顶层图只有一个代表整个软件系统的加工,该加工不必编号。 0层图中的加工编号

10、分别为1,2,3, 子图号:若父图中的加工号x分解成某一子图,则该子图号记为“图x” 子图中加工的编号:若父图中的加工号为x的加工分解成某一子图,则该子图中的加工编号分别为x.1、x.2、x.3,19,上海大学计算机学院 软件工程 陈圣波,分层数据流图示例资格和水平考试的考务处理系统,简化的资格和水平考试的考务处理系统 分成多个级别,如初级程序员、程序员、高级程序员、系统分析员等,凡满足一定条件的考生都可参加某一级别的考试 考试的合格标准将根据每年的考试成绩由考试中心确定 考试的阅卷由阅卷站进行,因此,阅卷工作不包含在软件系统中,20,上海大学计算机学院 软件工程 陈圣波,资格和水平考试的考务

11、处理系统功能需求,1对考生送来的报名单进行检查 2对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站 3对阅卷站送来的成绩清单进行检查,并根据考试中心制订的合格标准审定合格者 4制作考生通知单送给考生 5进行成绩分类统计(按地区、年龄、文化程度、职业、考试级别等分类)和试题难度分析,产生统计分析表,21,上海大学计算机学院 软件工程 陈圣波,资格和水平考试的考务处理系统部分数据流的组成,报名单地区序号姓名文化程度职业考试级别通信地址 正式报名单准考证号报名单 准考证地区序号姓名准考证号考试级别考场 考生名单准考证号考试级别其中w表示w重复多次 考生名册正式报名单 统计

12、分析表分类统计表难度分析表 考生通知单准考证号姓名通信地址考试级别考试成绩合格标志,22,上海大学计算机学院 软件工程 陈圣波,系统的输入输出(顶层图),确定源或宿:考生、阅卷站和考试中心 它们都既是源又是宿 顶层图唯一的加工:软件系统(考务处理系统) 确定数据流:系统的输入/输出信息 输入数据流:报名单(来自考生)、成绩清单(来自阅卷站)、合格标准(来自考试中心) 输出数据流:准考证(送往考生)、考生名单(送往阅卷站)、考生通知书(送往考生)、统计分析表(送往考试中心) 额外的输出流(考虑系统的健壮性):不合格报名单(返回给考生),错误成绩清单(返回给阅卷站) 顶层图通常没有文件,23,上海

13、大学计算机学院 软件工程 陈圣波,考务处理系统顶层图,考务 处理系统,考试中心,考生,不合格报名单,阅卷站,错误成绩清单,成绩清单,考生名单,合格标准,报名单,准考证,考生通知单,统计分析表,24,上海大学计算机学院 软件工程 陈圣波,系统内部(0层图)-1,以下确定加工、数据流、文件、源或宿的一般方法适用于0层图及其各层子图 确定加工:将父图中某加工分解而成的子加工 根据功能分解来确定加工:将一个复杂的功能分解成若干个较小的功能,较多应用于高层DFD中的分解 根据业务处理流程确定加工:分析父图中待分解加工的业务处理流程,业务流程中的每一步都可能是一个子加工 特别要注意在业务流程中数据流发生变

14、化或数据流的值发生变化的地方,应该存在一个加工,例如:,编制准考证号,正式报名单,合格报名单,25,上海大学计算机学院 软件工程 陈圣波,系统内部(0层图)-2,确定数据流 在父图中某加工分解而成的子图中,父图中相应加工的输入/输出数据流都是且仅是子图边界上的输入/输出数据流 分解后的子加工之间应增添相应的新数据流表示加工过程中的中间数据 如果某些中间数据需要保存以备后用,那么可以成为流向文件的数据流 同一个源或加工可以有多个数据流流向一个加工,如果它们不是一起到达和一起加工的,那么可以将它们分成若干个数据流,例如:,26,上海大学计算机学院 软件工程 陈圣波,系统内部(0层图)-3,确定文件

15、 如果父图中该加工存在读写文件的数据流,则相应的文件和数据流都应画在子图中 在分解子图中,如果需要保存某些中间数据以备后用,则可以将这些数据组成一个新的文件 新文件(首次出现的文件)至少应有一个加工为其写入记录,同时至少存在另一个加工来读该文件的记录 注意:从父图中继承下来的文件在子图中可能只对其进行读,或只进行写,27,上海大学计算机学院 软件工程 陈圣波,系统内部(0层图)-4,确定源和宿 0层图和其它子图中通常不必画出源和宿 有时为了提高可读性,可以将顶层图中的源和宿画在0层图中 最终得到考务处理系统0层图 根据功能分解方法识别出两个加工:考试报名、统计成绩 数据流 继承顶层图中的输入数

16、据流和输出数据流 定义二个加工之间的数据流:由于这二个加工分别在考试前后进行,因此登记报名单所产生的结果“考生名册”应作为文件保存以便考试后由统计成绩加工引用,28,上海大学计算机学院 软件工程 陈圣波,考务处理系统0层图,考生名册,1 考试 报名,报名单,考生名单,不合格报名单,准考证,2 统计 成绩,统计分析表,合格标准,考生通知单,错误成绩清单,成绩清单,29,上海大学计算机学院 软件工程 陈圣波,加工内部(1n层图),复杂的加工可以继续分解成1张DFD子图 分解方法 将该加工看作一个小系统,该加工的输入/输出数据流就是这个假设的小系统的输入/输出数据流 然后采用画0层图的方法,画出该加工的子图 以0层图中加工1(考试报名)为例 根据业务处理流程来确定由加工1的分解 与加工1相关的业务流程:首先检查考生送来的报名单,然后编准考证号,并产生准考证,最后产生考生名单和考生名册(文件),30,上海大学计算机学院 软件工程 陈圣波,考务处理系统加工1子图,3个子加工:检查报名

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号