软件工程习题课.ppt
用jackson图表示数据结构用Jackson图表示程序结构例子例:高考后将考生的基本情况文件(简称考生基本情况文件)和考生高考成绩文件(简称考分文件)合并成一个新文件(简称考生新文件)。考生基本情况文件和考分文件都是由考生记录组成的。为简便起见,考生基本情况文件中的考生记录的内容包括:准考证号、姓名、通讯地址。考分文件中的考生记录的内容包括:准考证号和各门考分。合并后的考生新文件自然也是由考生记录组成,内容包括:准考证号、姓名、通讯地址和各门考分。Jackson程序设计方法由五个步骤组成:第二步找出输入数据结构和输出数据结构的对应关系第三步确定程序结构图第四步列出并分配所有操作和选择/循环的判定条件某城市电话号码由三部分组成,分别是:地区码——空白或三位数字;前缀——非‘0’或‘1’开头的三位数字;后缀——4位数字。假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。要求.请选择适当的黑盒测试方法,给出测试用例表。使用等价类划分法设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的日期检查功能。
*某火车售票系统的数据流程图如下所示录入员1接受查询查询信息查询信息2分析查询4按班次查询6查询显示3按日期查询5按线路查询旅客班次日期线路查询结果查询结果查询结果查询结果接受查询输入信息查询信息列车查询主模块查询显示分析查询按日期查询按班次查询按线路查询查询信息查询信息查询结果查询结果日期班次线路津贴类别姓名教职工名册表头表体名册表体表头栏名行表名行行类别姓名津贴教龄津贴oo工龄津贴*产生名册文件程序的程序结构产生名册文件产生表体产生表头产生栏名行产生表名行产生行产生类别产生姓名产生津贴产生教龄津贴oo产生工龄津贴*6.3.2Jackson程序设计方法数据结构(Jackon图)程序结构(Jackon图)程序的过程性表示(Jackon伪码)映射程序分析程序设计对要求解的问题进行分析,确定输入数据和输出数据的逻辑结构,并用Jackson图描述这些数据结构。第一步:确定输入输出数据的逻辑结构找出输入数据结构和输出数据结构中有对应关系的数据单元:即有直接因果关系且在程序中可以同时处理的数据单元。需要注意的是,如果这些数据单元要重复出现,则他们重复出现的次序、次数必须都相同,否则不能算有有对应关系。根据下述三规则,由Jackson图导出相应的程序结构图:(1)为每对有对应关系的数据单元,按照它们在数据结构图中所处的层次,在程序结构图中的相应层次画一个处理框。如果这对数据单元在输入数据结构图和输出数据结构图中所处的层次不同,那么应以它们在输入数据结构图和输出数据结构图中层次较低的那个层次作为它们在程序结构图中的处理框所处的层次;(2)对于输入数据结构中剩余的数据单元,根据它们所处的层次,在程序结构图的相应层次为每个数据单元画上相应的处理框;(3)对于输出数据结构中剩余的数据单元,根据它们所处的层次,在程序结构图的相应层次为每个数据单元画上相应的处理框。实际上,这一步是一个综合的过程:每对有对应关系的数据单元合画一个处理框,没有对应关系的数据单元则各画一个处理框。列出所有操作和条件(包括分支条件和循环结束条件),并把它们分配到程序结构图的适当位置。条件:I(1)文件结束。操作:(1)停止;(2)打开两个输入文件;(3)建立输出文件。(4)从输入文件中各读一条记录。(5)生成一条新记录。(6)将新记录写入输出文件。(7)关闭全部文件。把操作和条件分配到程序结构图的适当位置打开两个输入文件建立输出文件从输入文件中各读一条记录关闭全部文件停止生成一条新纪录将新纪录写入输出文件从输入文件中各读一条记录作业及解答(第7章)作业及解答(第7章)STARTINPUT(A,B,C)//判定表达式1IFA5THENX=10ELSEX=1ENDIF//判定表达式2IFB10