软件工程SoftwareEngineeringppt课件.ppt
《软件工程SoftwareEngineeringppt课件.ppt》由会员分享,可在线阅读,更多相关《软件工程SoftwareEngineeringppt课件.ppt(70页珍藏版)》请在三一办公上搜索。
1、2023/8/5,国防科技大学计算机学院,1,软件工程 Software Engineering,国防科技大学计算机学院 2004.07,齐治昌 教授,谭庆平 教授,宁洪 教授,董威 博士,2023/8/5,国防科技大学计算机学院,2,第七章 面向数据的分析方法与 形式化方法,前面介绍的面向数据流和面向对象的分析是目前被广泛采用并具有较好发展潜力的需求分析 方法。然而,在软件开发实践中仍有其它一些方法可供分析人员选择,它们在各自适用的领域也表现出了一定的优越性和生命力。这些方法包括面向数据结构的系统开发方法(DSSD),Jackson系统开发方法(JSD)以及形式化软件规格说明技术。前两种统称
2、为面向数据的需求分析方法。,2023/8/5,国防科技大学计算机学院,3,面向数据的分析方法与形式化方法,特点以信息对象及其操作为核心进行需求分析,与面向对象分析相似。复合信息对象具有层次结构,并且可按顺序、选择、重复三种结构分解为成员信息对象。提供将层次信息结构映射为程序结构的机制,从而为软件设计奠定较好的基础。,第七章 面向数据的分析方法与形式化方法,2023/8/5,国防科技大学计算机学院,4,7.1 面向数据结构的系统开发方法,DSSD起源于七十年代Warnier在信息领域分析方面的杰出工作。利用顺序、选择、重复 三种结构表示信息的层次分解,并指出可以从信息层次结构推导出程序结构。Ke
3、n Orr 对Warnier的工作进行了扩充,引进了数据流和处理功能,从而发展成为一种需求分析方法。本节介绍 Warnier图 DSSD方法 创建实体图、信息过程图、Warnier-Orr原型图。,第七章 面向数据的分析方法与形式化方法,2023/8/5,国防科技大学计算机学院,5,面向数据结构的系统开发方法,(1)首版标题新闻 国内新闻 本地新闻(2)商业金融版股市行情 商业新闻 广告(3)文化体育版文化、体育新闻 散文 新书评论,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,6,7.1.1 Warnier图,Warnier图是一种表示信息层次结构的紧致机制。W
4、arnier图具有树形层次结构,可以用另外一些Warnier图继续分解图中的叶结点。例报纸自动组版系统图,花括符内的信息条目构成顺序关系,园括符内的数字表示重复次数,如,广告 可以有1至5条,股市行情出现0到1次。符号“”表示不可兼具的选择关系。,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,7,7.1.2 DSSD方法,基于DSSD需求分析方法的步骤(1)标识与应用问题有关的实体。(2)创建一种类似于数据流图的信息过程图。(3)创建Warnier-Err原型图。在详细介绍DSSD的具体步骤之前,首先用数据流图描述一个基于计算机的软件专卖店管理系统,见图7.2.注
5、意,数据流图并非DSSD的组成部分。图7.2仅用于说明后面将要用到的应用问题实例。,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,8,软件专卖店管理系统的数据流图表示,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,9,1.标识实体图,在DSSD中,与应用问题有关的实体及它们之间的信息流用实体图表示。它与面向对象分析中 的对象消息传递图有相似之处,因此,识别实体和信息流的方法也类似于面向对象分析。,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,10,标识实体图,在DSSD中,分析人员可通过对下述问题的回答来
6、生成实体图(1)软件系统必须处理哪些信息项?(2)信息项的生产者和消费者分别是哪些实体?上述问题的有关实体是:客户、订单处理员、邮寄员、银行、结算员、管理员和邮局,见图7.3(a)。订单处理员的实体图如图7.3(b)所示。当所有实体的实体图都构造完成后,将它们综合起来便形成整个目标软件系统的实体图,见图7.4。,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,11,标识实体图,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,12,标识实体图,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,13,2.创建信息过程
7、图,DSSD中的信息过程图与数据流图的作用类似,都是用来表示信息流及其处理功能的。信 息过程图从每个实体的输出信息流开始,逆向寻找用于生成该输出信息的输入信息流及相 应的处理功能。,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,14,3.创建Warnier-Orr原型图,DSSD方法分析人员以表格形式给出主要的输出信息元素精确地表示为Warnier-Orr图,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,15,创建Warnier-Orr原型图,7.1面向数据结构的系统开发方法,2023/8/5,国防科技大学计算机学院,16,7.2 J
8、ackson系统开发方法,七十年代Jackson提出了软件工程领域中著名的Jackson方法,当时它只用于软件设计。八十年代初,Jackson又对它进行了多方面的扩充和完善,最终发展成为一种需求分析方法。Jackson方法的核心思想是:根据作用于数据的行为序列的结构(顺序、选择与重复),建立目标软件系统的模型,然后在软件设计阶段将模型演化为相应的程序结构。,第七章 面向数据的分析方法与形式化方法,2023/8/5,国防科技大学计算机学院,17,Jackson系统开发方法,Jackson方法在需求分析阶段的主要步骤(1)标识实体与行为。(2)生成实体结构图。(3)创建软件系统模型。,7.2Jac
9、kson系统开发方法,2023/8/5,国防科技大学计算机学院,18,7.2.1 标识实体与行为,Jackson方法针对初步需求分析形成的用户需求描述进行语法分析。名词及名词短语是潜在的实体,相关的动词构成实体的潜在行为。分析人员根据应用问题的边界及自己的理解,决定对潜在实体和行为的取舍。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,19,标识实体与行为,例7.1 某大学决定将分处两地的校园用直达交通车连接起来。在每个校园设一个站,站内配置一个按钮。学生通过按钮请求交通车搭载。交通车应尽快满足学生的请求。空闲时,交通车停在 任意站等候。分析人员可从“大学”、“校
10、园”、“交通车”、“车站”、“学生”、“按钮”等名词中选取与应用问题相关实体、行为、状态。相关的实体:“交通车”、“车站”、“按钮”。相关的行为:“到站”、“离站”、“按键”。“交通车”的状态:“等候”和“运行”。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,20,7.2.2 生成实体结构图,在Jackson方法中,实体结构是指实体在时间坐标系中的行为序列。这种序列以顺序、选择 和重复三种结构进行复合。Jackson给出的实体结构图示机制如图7.7所示。其中的子结点 既可以是行为,也可以是子实体。在后一情况下,子实体应该继续分解,不能作为实体结构图的叶结点。,7
11、.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,21,实体结构图的图形记号,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,22,实体结构图的图形记号,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,23,7.2.3 创建软件系统模型,为了创建目标软件系统的模型,Jackson方法要求分析人员首先用图7.9所示的图形记号建立系统规格说明图(System Specification Diagram,SSD)。“数据流”(Data Stream)记号表示现实世界中的过程或装置不断地向目标软件系统中的相应过程发送数据,
12、后者以先进 先出方式消费数据。两者之间的缓冲区容量是无限的。“状态向量”(State Vector)记号表示在两者之间存在状态向量,发送方设置状态向量,接收方读取状态向量。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,24,创建软件系统模型,站内按钮和目标软件中的按钮处理过程之间以“数据流”方式连接交通车和交通车控制过程之间则应以“状态向量”方式连接。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,25,系统规格说明图示例,利用Jackson给出的“结构正文”(Structure Text)将实体结构图和系 统规格说明图综合起来,并
13、针对目标软件系统中的每一过程用正文方式给出更为精确、更为详尽的描述。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,26,正文描述,BUTTON1 read ButtonDown信号 PUSHBODY itr while ButtonDown 循环结构 PUSH 按键处理 read ButtonDown信号 PUSHBODY endBOTTON1 end,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,27,正文描述,SHUTTLE1 seq 顺序结构 read 状态向量 WAITBODY1 itr while Wait(1)如果状态向
14、量中等待 标志置位,则循环等待 read 状态向量 WAITBODY1 end Leave(1)控制交通车离开站1 TRANSITBODY1 itr while Transit(1)如果状态向量中运行标志 置位,则一直运行 read 状态向量 TRANSITBODY1 end,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,28,正文描述,SHUTTLEBODY1 itr 往返重复运行 STATION seq Arrive(i)控制交通车减速,准备停靠站I WAITBODY itr while Wait(i)如果状态向量中在站i的 等待标志置位,则循环等待 read
15、 状态向量 WAITBODY end Leave(i)TRANSITBODY itr while Transit(i)read 状态向量 TRANSITBODY end STATION end SHUTTLEBODY1 end Arrive(1)SHUTTLE1 end,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,29,正文描述,Wait(i)Transit(i)(i=1,2)现实世界的交通车 SHUTTLE0 向软件过程 SHUTTLE1 发出的状态向量的一部分。,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,30,结构正文的结构
16、图,7.2Jackson系统开发方法,2023/8/5,国防科技大学计算机学院,31,7.3 形式化方法,前面对数据流图、面向对象的需求表示图等语言机制都未给出数学意义上严格的语法和语义说明。因此,这些需求模型都或多或少地带有不精确性、不完全性,甚至不一致性。许多软件开发实践希望借助于形式化方法严格地定义用户需求,并通过数学推演确保需求定义的一致性和完全性。对于正确性至关重要的实时嵌入式系统关键部件的软件开发,形式化方法更是不可或缺的。,第七章 面向数据的分析方法与形式化方法,2023/8/5,国防科技大学计算机学院,32,形式化方法,主要思想Z语言 形式化规格说明语言简单实时操作系统内核的形
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 SoftwareEngineeringppt 课件

链接地址:https://www.31ppt.com/p-5641474.html