资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第6章 面向数据的分析方法与形式化方法,除了面向数据流的分析方法,仍有其他一些方法可供分析人员选择,这些方法包括面向数据结构的系统开发方法(DSSD),Jackson系统开发方法(JSD)以及形式化软件规格说明技术。前两种统称为面向数据的需求分析方法。它们的共同特点是:,1以信息对象及其操作为核心进行需求分析,这,一点与面向对象分析有相似之处。,2认为复合信息对象具有层次结构,并且可按顺,序、选择、重复三种结构分解为成员信息对象。,3提供将层次信息结构映射为程序结构的机制,,从而为软件设计奠定较好的基础。,6.1,面,面向数,据,据结构的,系,系统开发,方,方法,DSSD,也,也叫Warnier-Orr方法。,1974,年,年,法国,人,人J.D.Warnier,提,提出了一,种,种LCP,(,(LogicalConstruction ofPrograms,逻辑,构,构造程序,),)。他利,用,用顺序、,选,选择、重,复,复三种结,构,构表示信,息,息的层次,分,分解,并,指,指出可以,从,从信息层,次,次结构推,导,导出程序,结,结构。,1981,年,年KenOrr,对,对Warnier,的,的工作进,行,行了扩充,,,,使其不,仅,仅包含了Warnier的,信,信息层次,结,结构,还,引,引进了数,据,据流和处,理,理功能,,从,从而发展,成,成为一种,需,需求分析,方,方法。,本节首先,介,介绍Warnier图,然,后,后以此为,基,基础阐述DSSD,方,方法,其,主,主要内容,包,包括:如,何,何创建实,体,体图、信,息,息过程图,及,及Warnier,Orr,原,原型图。,Warnier图,Warnier图,又,又称为Warnier-Orr图,,可,可以表示,数,数据结构,和,和程序结,构,构。考虑,一,一个典型,的,的报纸自,动,动组版系,统,统。报纸,作,作为其中,重,重要的信,息,息对象,,具,具有以下,内,内容:,1首版,1)标题,新,新闻,2)国内,新,新闻,3)本地,新,新闻,2商业,金,金融版,1)股市,行,行情,2)商业,新,新闻,3)广告,3文化,体,体育版,1)文化,、,、体育新,闻,闻,2)散文,3)新书,评,评论,该信息结,构,构用Warnier图如图611所示。,Warnier图,图61,1Warnier,图,图示例,标题新闻,国内新闻,本地新闻,股市行情(0,1),商业新闻,广告(1,5),文化、体育新闻,散文,新书评论,文化体育版,首 版,商业金融版,报 纸,Warnier图,花括号内,的,的信息条,目,目构成顺,序,序关系;,花括号从,左,左至右排,列,列表示树,型,型层次结,构,构;,符号“,”,”表示不,可,可兼具的,选,选择关系,;,;,“”表,示,示“非”,。,。,圆括号内,的,的数字表,示,示重复次,数,数:,(1,n,),)表示重,复,复结构,,(1)或,不,不标次数,表,表示顺序,结,结构,,(0,1,),)表示选,择,择结构。,6.1.2 DSSD方,法,法,基于DSSD需求,分,分析方法,的,的主要步,骤,骤是:,1)标识,与,与应用问,题,题有关的,实,实体。,2)创建,一,一种类似,于,于数据流,图,图的信息,过程图,。,。,3)创建WarnierOrr原,型,型图。,在详细介,绍,绍DSSD的具体,步,步骤之前,,,,首先用,数,数据流图,描,描述一个,基,基于计算,机,机的软件,专,专卖店管,理,理系统,,见,见图612。,(,(该数据,流,流图并非DSSD,的,的组成部,分,分,仅用,于,于说明后,面,面将要用,到,到的应用,问,问题实例,。,。),图61,2 软,件,件专卖店,管,管理系统,的,的数据流,图,图,结算系统,管理系统,客户,订单处理,员,员接收并,登,登录订单,邮寄员提,取,取、包装,软,软件产品,订单,订单编号,订单文件,订单编号,客户姓名,、,、地址,预定日期,支票编号,软件名称,、,、编号,作者,数量,单价,总价,软件编号,数量,预定日期,客户姓名、地,址,址,邮局,邮寄品,订单编号,1标识实体,图,图,在DSSD中,,,,与应用问题,有,有关的实体及,它,它们之间的信,息,息流用实体图,表,表示。,具体地,分析,人,人员可以通过,对,对下述问题的,回,回答来生成实,体,体图:,1)软件系统,必,必须处理哪些,信,信息项?,2)信息项的,生,生产者和消费,者,者分别是哪些,实,实体?,在上述应用问,题,题中,有关的,实,实体是:客户,、,、订单处理员,、,、邮寄员、银,行,行、结算员、,管,管理员和邮局,,,,如图61,3(a)所,示,示。,订单处理员的,实,实体图如图6,13(b,),)所示。,注:实体图中,的,的结点表示实,体,体、有向边表,示,示实体之间的,信,信息流。,(a)信息的,生,生产者和消费,者,者,(,(b)实体,图,图示例,图613,软件名称、,编号,地 址,订单编号,支票编号,客户姓名,客户,邮寄员,订单,处理员,银行,结算员,管理员,邮局,客户,邮寄员,结算员,订单处理员,订单,编号,订单编号,图614,组,组合实体,图,图示例,当所有实体的,实,实体图都构造,完,完成后,将它,们,们综合起来便,形,形成整个目标,软,软件系统的实,体,体图。,客户,邮寄员,软件产品库,结算员,管理员,银行,订单信息=,客户姓名+,地址+,软件名称与编,码,码+,支票编号,邮寄品,支付,催款,软件 产品,月报表,收据,存款,订单编号,订单编号,订单信息,订单编号,订单,处理员,2创建信息,过程图,DSSD中的,信,信息过程图,与,与数据流图的,作,作用类似,都,是,是用来表示信,息,息流及其处理,功,功能的。但是,,,,信息过程,图,图从每个实体,的,的输出信息流,开,开始,逆向寻,找,找用于生成该,输,输出信息的输,入,入信息流及相,应,应的处理功能,。,。,2创建信息,过程图,图615,信,信息过,程,程图示例,邮寄品是由订,单,单编号和软件,产,产品经过邮寄,品,品包装过程生,成,成的,订单编,号,号又是由客户,订,订购信息和订,单,单编号过程生,成,成的。,邮寄品,订单编号,软件产品,+,邮寄品包装,订购信息,+,订单编号过程,3创建WarnierOrr原型图,DSSD方法,要,要求分析人员,在,在最后以表格,形,形式给出主要,的,的输出信息的,组,组成元素(见,图,图616,(,(a),然,后,后将其精确地,表,表示为WarnierOrr图(见图616(b),姓名,客户信息,地,地址,电话,软件编号(1n),邮寄品,单,单,价,价(1n),总价,姓名,客户信息,地,地址,电话,邮寄品,客户姓名,地 址,电 话,总 价,发件人姓名,地址,电话,定单编号,软件编号,单 价,数 量,总 价,(a)输出信,息,息的表格表示,(,(b,),)WarnierOrr,图,图,图616,软件产品,信息,6.2 Jackson,系,系统开发方法,1975年,,英,英国人M.A.Jackson提出了软,件,件工程领域中,著,著名的Jackson方法,,,,当时它只用,于,于软件设计。1983年,Jackson又对它进行,了,了多方面的扩,充,充和完善,最,终,终发展成为一,种,种需求分析方,法,法。,其核心思想是,:,:根据作用于,数,数据的行为序,列,列的结构(顺,序,序、选择、重,复,复),建立目,标,标软件系统的,模,模型,然后在,软,软件设计阶段,将,将模型转换为,相,相应的程序结,构,构。,Jackson方法在需求,分,分析阶段的主,要,要步骤是:,(1)标识实,体,体与行为。,(2)生成实,体,体结构图。,(3)创建软,件,件系统模型。,6.2.1,标,标识实体与,行,行为,类似于面向对,象,象分析中对象,及,及其行为的识,别,别,Jackson方法针,对,对初步需求分,析,析形成的用户,需,需求描述进行,语,语法分析:,名词,及,及名,词,词短,语,语,潜,在,在的,实,实体,,,,,相关,的,的动,词,词,构,成,成实,体,体的,潜,潜在,行,行为,。,。,分析,人,人员,根,根据,应,应用,问,问题,的,的边,界,界及,自,自己,的,的理,解,解,,决,决定,对,对潜,在,在实,体,体和,行,行为,的,的取,舍,舍。,6.2.1,标,标,识,识实,体,体与,行,行为,【例6.1】,北,北华,大,大学,决,决定,将,将分,处,处两,地,地的,校,校园,用,用直,达,达交,通,通车,连,连接,起,起来,。,。在,每,每个,校,校园,设,设一,个,个站,,,,站,内,内配,置,置一,个,个按,钮,钮。,学,学生,通,通过,按,按钮,请,请求,交,交通,车,车搭,载,载。,交,交通,车,车应,尽,尽快,满,满足,学,学生,的,的请,求,求。,空,空闲,时,时,,交,交通,车,车停,在,在任,意,意站,等,等候,。,。,分析,人,人员,可,可从,“,“大,学,学”,、,、“,校,校园,”,”、,“,“交,通,通车,”,”、,“,“车,站,站”,、,、“,学,学生,”,”、,“,“按,钮,钮”,等,等名,词,词中,选,选取,与,与应,用,用问,题,题相,关,关的,实,实体,:,:“,交,交通,车,车”,、,、“,车,车站,”,”、,“,“按,钮,钮”,。,。与,它,它们,有,有关,的,的行,为,为是,:,:“,到,到站,”,”、,“,“离,站,站”,、,、“,按,按键,”,”。,“,“等,候,候”,和,和“,运,运行,”,”可,以,以作,为,为“,交,交通,车,车”,的,的状,态,态。,6.2.2,生,生,成,成实,体,体结,构,构图,在Jackson,方,方法,中,中,,实,实体,结,结构,是,是指,实,实体,在,在时,间,间坐,标,标系,中,中的,行,行为,序,序列,。,。这,种,种序,列,列以,顺,顺序,、,、选,择,择和,重,重复,三,三种,结,结构,进,进行,复,复合,。,。Jackson,给,给出,的,的实,体,体结,构,构图,的,的表,示,示机,制,制如,图,图6,2,1,所,所示,。,。其,中,中的,子,子结,点,点既,可,可以,是,是行,为,为,,也,也可,以,以是,子,子实,体,体。,在,在后,一,一种,情,情况,下,下,,子,子实,体,体应,该,该继,续,续分,解,解,,不,不能,作,作为,实,实体,结,结构,图,图的,叶,叶结,点,点。,顺序,结,结构,*,重复,结,结构,选择,结,结构,图6,2,1,实,实体,结,结构,图,图的,图,图形,记,记号,图6,2,2,实,实体,结,结构,图,图示,例,例,例6.1,的,的实,体,体结,构,构图,如,如图622所,示,示。,在,在图,中,中,i,只,只能,取,取值1或2。,并,并且,,,,在,“,“站,(,(i,),)”,的,的重,复,复序,列,列中,,,,i,首,首先,取,取2,,,,然,后,后交,替,替变,化,化。,交,交通,车,车首,先,先停,在,在站1,,然,然后,在,在两,站,站之,间,间反,复,复往,返,返运,行,行,,最,最后,停,停靠,在,在站1。,为,为了,刻,刻画,交,交通,车,车在,两,两站,之,之间,的,的往,返,返穿,梭,梭,,引,引入,了,了虚,拟,拟的,概,概念,实,实体,“,“Shuttlebody”,。,。,Shuttle,Shuttle*body,Station(i),Arrive(i),Leave(i),Arrive(1),Button,Push,*,Leave(1),6.2.3,创,创,建,建软,件,件系,统,统模,型,型,创建,目,目标,软,软件,系,系统,模,模型,的,的第,一,一步,,,,Jackson,方,方法,要,要求,分,分析,人,人员,首,首先,用,用图623所,示,示的,图,图形,记,记号,建,建立,系,系
展开阅读全文