收藏 分销(赏)

详细设计jj.pptx

上传人:a199****6536 文档编号:4199743 上传时间:2024-08-22 格式:PPTX 页数:66 大小:454.65KB 下载积分:14 金币
下载 相关 举报
详细设计jj.pptx_第1页
第1页 / 共66页
详细设计jj.pptx_第2页
第2页 / 共66页


点击查看更多>>
资源描述
2024/8/22 周四1详细设计详细设计2024/8/22 周四2详细设计详细设计w详细设计阶段的根本目段的根本目标是确定是确定应该怎怎样具体地具体地实现所所要求的系要求的系统。w结构程序构程序设计是是实现上述目上述目标的关的关键技技术,因此是,因此是详细设计的的逻辑基基础。w 软件定件定义阶段定段定义了了问题结构构,叫做叫做软件件设计的一的一级蓝图;软件件总体体设计确定了确定了软件件结构,即确定模构,即确定模块的划分、模的划分、模块间的接口,称的接口,称为软件件设计二二级蓝图;软件件详细设计确确定每个定每个软件模件模块的的实现算法,可称算法,可称为软件件设计的三的三级蓝图。2024/8/22 周四3详细设计详细设计基本步基本步骤n确定模确定模块如何如何实现n编写写详细设计说明明书n制定制定单元元测试计划划n详细设计评审2024/8/22 周四4结构程序设计结构程序设计w1965年,年,E.W.Dijkstra指出:指出:“可以从高可以从高级语言中取言中取消消GOTO语句句”,“程序的程序的质量与程序中所包含的量与程序中所包含的GOTO语句的数量成正比句的数量成正比”。w1966年年Bohm和和Jacopini证明了,只用三种基本的控制明了,只用三种基本的控制结构就能构就能实现任何任何单入口入口单出口的程序。出口的程序。这三种基本的三种基本的控制控制结构是构是“顺序序”、“选择”和和“循循环”。w理理论上最基本的控制上最基本的控制结构只有两种:构只有两种:顺序序结构和循构和循环结构(构(DO-WHILE结构)。构)。w经典定典定义:“如果一个程序的代如果一个程序的代码块仅仅通通过顺序、序、选择和循和循环这3种基本控制种基本控制结构构进行行连接,并且每个代接,并且每个代码块只有一个入口和一个出口,只有一个入口和一个出口,则称称这个程序是个程序是结构化的。构化的。”2024/8/22 周四5三种基本的控制结构三种基本的控制结构 2024/8/22 周四6其他常用的控制结构其他常用的控制结构2024/8/22 周四7判断一个数判断一个数m是否为素数流程图是否为素数流程图开始开始结束结束输入输入mi=2m%i!=0i=i+1im-1输出输出m是素数是素数输出输出m不是素数不是素数2024/8/22 周四8详细设计的描述工具MAX=A(1)i=2i=i+1MAX=A(i)in?MAXmax IF Aimax THEN max:=Ai THEN max:=Ai i:=i+1 i:=i+1注注.1.A.1.A是一个是一个n n元数组;元数组;2.2.省略变量说明;省略变量说明;3.3.省略输入、输出语句。省略输入、输出语句。例例例例.“在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数”的的的的程序流程图程序流程图程序流程图程序流程图2024/8/22 周四9 任何复任何复杂的程序流程的程序流程图都都应由以上五种基本由以上五种基本结构构组合而成。合而成。缺点:本质上不具备逐步求精的特点,对于提高缺点:本质上不具备逐步求精的特点,对于提高 大型系统的可理解性作用甚微;大型系统的可理解性作用甚微;不易表示数据结构;不易表示数据结构;转移控制太方便。转移控制太方便。趋势:停止使用趋势:停止使用 优点:容易掌握,且历史优点:容易掌握,且历史“悠久悠久”,使用广泛。,使用广泛。ISO 认可的规定符号:认可的规定符号:工具工具2024/8/22 周四10SequentialABPFTABSelectivePFT BDo-While PSWhileDo-Until PSUntilCaseP12nA1A2AnCallsubroutineA2、盒图、盒图(Box Diagram):Nassi&Shneiderman 1973年提出,年提出,又称为又称为N-S Charts。Chapin 1974年作扩充,故年作扩充,故也称为也称为Chapin charts.工具工具2024/8/22 周四11画出下列伪码程序的程序流程图,盒图(画出下列伪码程序的程序流程图,盒图(N-S图)。图)。STARTIF p THENWHILE q DO fEND DOELSEBLOCK g nEND BLOCKEND IFSTOP2024/8/22 周四12根据伪码画出根据伪码画出NSSTARTIF A THENX1DO UNTIL BELSEX2YEND IFZSTOPATFUNTILBX1X2YZ2024/8/22 周四13输入输入mw=0i=2m%i!=0T Fi=i+1W=1直到直到im-1或或w=1w=0 F T输出输出m是素数是素数输出输出m不是素数不是素数NS流程图流程图2024/8/22 周四14详细设计的描述工具FOR i=2 TO nMAX=A(1)MAXmax IF Aimax THEN max:=Ai THEN max:=Ai;注注.1.A.1.A是一个是一个n n元数组;元数组;2.2.省略变量说明;省略变量说明;3.3.省略输入、输出语句。省略输入、输出语句。例例例例.“在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数”的的的的N N N NS S S S图图图图2024/8/22 周四15特点:特点:没有箭头,不允许随意转移控制;没有箭头,不允许随意转移控制;每个矩形框每个矩形框(Case中条件取值例外中条件取值例外)都都是一个功能域是一个功能域(即一个特定结构的作即一个特定结构的作用域用域),结构表示明确;,结构表示明确;局部及全程数据的作用域易见;局部及全程数据的作用域易见;易表现嵌套关系易表现嵌套关系(embedded structure)以以及模块的层次结构。及模块的层次结构。工具工具2024/8/22 周四16ABSequential While PS Until PSLoopsPABTHENELSESelectiveP=A1A2CaseAn12nStatementIndexdefDefinition3、PAD(Problem Analysis Diagram):日立公司,日立公司,1973工具工具2024/8/22 周四17详细设计的描述工具NAX=A(1)WHILE inMAX=A(i)i=i+1MAXmax IF aimax THEN max:=ai THEN max:=ai;i=i+1 i=i+1 注注.1.A.1.A是一个是一个n n元数组;元数组;2.2.省略变量说明;省略变量说明;3.3.省略输入、输出语句。省略输入、输出语句。例例例例.“在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数在一组数中找出其中最大的数”的的的的PADPADPADPAD图图图图2024/8/22 周四18x4TFDo-Until x5ighfkx1TFbDo-Until x6ajx21cDo-While x323dek:例:例:N-S图与图与PAD的转换的转换工具工具练习:请将练习:请将N NS S图转化成图转化成PADPAD图图ABSequentialPABTHENELSESelective While PS Until PSLoopsP=A1A2CaseAn12n2024/8/22 周四19开始开始 结束结束 aj Until x5i Until x6bx1kfx4ghdefkx2de123 While x3c工具工具2024/8/22 周四20对应于增量型循环结构对应于增量型循环结构for i:=n1 to n2 step n3 do在在PAD中有相应的循环控制结构中有相应的循环控制结构PADPAD的扩充控制结构的扩充控制结构的扩充控制结构的扩充控制结构2024/8/22 周四21特点:特点:结构清晰,层次分明,易读;结构清晰,层次分明,易读;支持逐步求精的设计思想;支持逐步求精的设计思想;容易将容易将PAD自动转换为高级语言源程序。自动转换为高级语言源程序。工具工具2024/8/22 周四224 4、判定表、判定表&判定树判定树(Decision Table&Tree)(Decision Table&Tree)表示复杂的条件表示复杂的条件(input)(input)组合与应做动作组合与应做动作(output)(output)之间的对应关系。之间的对应关系。判定表能够清晰地表示复杂的条件组合与应做的动作之间的对应关系,而其它的工具不易表示。一张判定表由四部分组成,左上部列出所有条件,左下部是所有可能做的动作,右上部是表示各种条件组合的一个矩阵,右下部是和每种条件组合相对应的动作。判定表的每一列实质上是一条规则,规定了与特定的条件组合相对应的动作。判定树是判定表的变种,也能清晰地表示复杂的条件组合与应做的动作之间的对应关系。优点:形式简单,不需任何说明,易看出含义,易于掌握和使用。缺点:简洁性不如判定表,相同的数据元素往往要重复写多遍,而且越接近树的叶端重复次数越多。工具工具2024/8/22 周四2312345教授TFFF副教授FTFF讲师FFTF助教FFFT讲座TFFFF5030252015例:某 校制定了教师的讲课课时津贴标准。对于各种性质的讲座,无论教师是什么职称,每课时津贴费一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。判定表示例判定表示例2024/8/22 周四24教师课时津贴判定树判定树示例判定树示例2024/8/22 周四25例:例:航空行李托运费的算法航空行李托运费的算法按规定:重量不超过按规定:重量不超过30公斤的行李可免费托运。公斤的行李可免费托运。重量超过重量超过30公斤时,对超运部分,头等公斤时,对超运部分,头等舱国内乘客收舱国内乘客收4元元/公斤;其它舱位国内公斤;其它舱位国内乘客收乘客收6元元/公斤;外国乘客收费为国内公斤;外国乘客收费为国内乘客的乘客的2倍;残疾乘客的收费为正常乘倍;残疾乘客的收费为正常乘客的客的1/2。工具工具2024/8/22 周四26RulesRule numbers Condition rowsAction rows工具工具2024/8/22 周四27行李费行李费算法算法行李重量行李重量W 30行李重量行李重量W 30免费免费国内乘客国内乘客外国乘客外国乘客头等舱头等舱其他舱其他舱残疾乘客残疾乘客正常乘客正常乘客(W-30)2(W-30)4残疾乘客残疾乘客正常乘客正常乘客(W-30)3(W-30)6头等舱头等舱其他舱其他舱残疾乘客残疾乘客正常乘客正常乘客(W-30)4(W-30)8残疾乘客残疾乘客正常乘客正常乘客(W-30)6(W-30)12用判定树表示计算行李费的算法用判定树表示计算行李费的算法注:判定表与判定树并注:判定表与判定树并不适用于作为一种通用不适用于作为一种通用的设计工具,通常将之的设计工具,通常将之用于辅助测试用于辅助测试工具工具2024/8/22 周四28判定表与判定树【例】问题处理描述:耗电记费系统可以采用固定价格收费、浮动价格收费和其他方式收费三种方式。若采用固定价格方式收费,对每月耗电100kWh以下的用户只征收最低标准费,超过100kWh的用户按价格表A收费;若采用浮动价格方式收费,则每月耗电100kWh以下的用户按价格A收费,超过100kWh的用户按价格B收费。2024/8/22 周四29 判定表规 则12345 固定价格方式 浮动价格方式 耗电100kW.h 耗电100kW.h TFTFTFFTFTTFFTFTFF 收取最低标准费 按价格表A收费 按价格表B收费 其他处理 条件条件动作动作2024/8/22 周四30【例】判定树 耗电100kWh 收取最低标准费 固定方式 耗电100kWh 按价格表A收费 耗电100kWh 按价格表A收费耗电收费 浮动方式 耗电100kWh 按价格表B收费 其他方式 其他处理用判定树表示计算耗电收费的算法 2024/8/22 周四31过程设计语言(PDL)PDL(Procedure Design Language)也称为结构英语或伪码,是所有正文形式的过程设计工具的统称。PDL经常表现为一种“混杂”的形式,允许自然语言(如英语)的词汇与某种结构化程序设计语言(如Pascal、C、Ada等)的语法结构交织在一起2024/8/22 周四32过程设计语言(PDL)PDL应具有下述特点:1关键字采用固定语法并支持结构化构件、数据说明机制和模块化;2处理部分采用自然语言描述;3允许说明简单(标量、数组等)和复杂(链表、树等)的数据结构;4子程序的定义与调用规则不受具体接口方式的影响。2024/8/22 周四33过程设计语言(PDL)考察一个PDL的原型,它可以建立在任意一个通用的结构化程序设计语言之上。基本成分包括:子程序定义、界面描述、数据说明、块结构、分支结构、循环结构和I/O结构。数据说明的形式为:TYPE IS 其中:局部变量或全局变量;某个特定关键字(例如,SCALAR,ARRAY,LIST,STRING,STRUTURE等);说明此处定义的变量在该过程或整个程序中应如何使用。2024/8/22 周四34过程设计语言(PDL)w可进行抽象数据类型的定义,例如:TYPE table_1 IS INSTACE OF symbol_table 而symbol_table在另一处已定义如下:TYPE symbol_table IS STRUCTURE DEFINED2024/8/22 周四35过程设计语言(PDL)w该PDL的块结构描述一个过程元素,即一个块内的所有语句将作为一个整体执行,形式为 BEGIN END该PDL的分支结构有if-then-else和case两种形式,分别为 IF THEN ELSE ENDIF2024/8/22 周四36过程设计语言(PDL)CASE OF WHEN SELECT WHEN SELECT WHEN SELECT DEFAULT:ENDCASE2024/8/22 周四37过程设计语言(PDL)循环结构包括三类,表达形式分别为:DO WHILE ENDWHILEREPEAT UNTIL ENDREPEATDOFOR =ENDFOR2024/8/22 周四38过程设计语言(PDL)此PDL还提供了NEXT和EXIT两种语句:EXIT语句,退出本层循环;NEXT语句强迫本次循环结束,新一轮循环开始。在该PDL中,子程序说明为:PROCEDURE INTERFACE END 其中属性表指明该子程序的引用特性(比如,是INTERNAL还是EXTERNAL模式)和其他依赖于实现(即程序设计语言)的特性。2024/8/22 周四39过程设计语言(PDL)输入/输出说明部分常用的形式有 READ/WRITE TO 或 ASK ANSWER 后一种形式多用于人机交互部分的设计。2024/8/22 周四40请使用请使用PDL语言描述在数组语言描述在数组A(1)A(10)中)中找最大数的算法。找最大数的算法。N=1WHILE N=10 DOIF A(N)=A(N+1)MAX=A(N+1);ELSE MAX=A(N)ENDIF;N=N+1;ENDWHILE;2024/8/22 周四41面向数据结构的设计设计方法设计方法面向数据流的设计面向数据流的设计面向数据结构的设计面向数据结构的设计工作基础工作基础最终目标最终目标主要适用主要适用范范 围围 在详细设计阶段确定部分或全在详细设计阶段确定部分或全部模块的逻辑过程。部模块的逻辑过程。在概要设计阶段用在概要设计阶段用SD方法确定软件的方法确定软件的结构。结构。以数据结构以数据结构 为基础。为基础。从问题的数从问题的数据结构出发据结构出发导出它的程序结构导出它的程序结构。以数据流图为基础。在分析阶段用以数据流图为基础。在分析阶段用DFD表示软件的逻辑模型,在设计阶段表示软件的逻辑模型,在设计阶段按数据流类型,将按数据流类型,将数据流图数据流图转换为软件转换为软件结构。结构。两种方法的共同点:两种方法的共同点:1.遵循遵循“由顶向下、逐步细化由顶向下、逐步细化”的原则;的原则;2.服从服从“程序结构必须适应问题结构程序结构必须适应问题结构”的原则。的原则。一一.面向数据结构的设计面向数据结构的设计 面向数据结构的设计方法是按输入和输出以及内部存储信息的数据结构面向数据结构的设计方法是按输入和输出以及内部存储信息的数据结构 进行设计进行设计,然后再把数据结构的描述变换为对软件结构的描述。然后再把数据结构的描述变换为对软件结构的描述。二二.面向数据结构的设计与面向数据流的设计的异同面向数据结构的设计与面向数据流的设计的异同程序的过程性描述。程序的过程性描述。软件的最终软件的最终SC图图2024/8/22 周四42Jackson图重复结构重复结构选择结构选择结构ABCAB0C0AB*ABCAB0C0sAB*I A由由B、C两部分顺序组成两部分顺序组成 A可以包含可以包含B或或C(S代表选择代表选择)A由由B重复任意次重复任意次(含零次含零次)构成构成(I 代表重复代表重复)注:改进的注:改进的Jackson图规定顺序执行的处理中不许混有选择执行和重复执行。图规定顺序执行的处理中不许混有选择执行和重复执行。顺序结构顺序结构*S(i)I(i)2024/8/22 周四43Jackson图三三三三.Jackson.Jackson.Jackson.Jackson图与层次图的区别图与层次图的区别图与层次图的区别图与层次图的区别 JacksonJacksonJacksonJackson图是层次图的一种精化,两者的图形类似,但有着许图是层次图的一种精化,两者的图形类似,但有着许图是层次图的一种精化,两者的图形类似,但有着许图是层次图的一种精化,两者的图形类似,但有着许多区别,表现在:多区别,表现在:多区别,表现在:多区别,表现在:1.1.1.1.层次图主要描绘软件结构层次图主要描绘软件结构层次图主要描绘软件结构层次图主要描绘软件结构,而而而而JacksonJacksonJacksonJackson图除描绘软件结构图除描绘软件结构图除描绘软件结构图除描绘软件结构 外外外外,也能描绘数据结构;也能描绘数据结构;也能描绘数据结构;也能描绘数据结构;2.2.2.2.层次图中的一个方框代表一个模块层次图中的一个方框代表一个模块层次图中的一个方框代表一个模块层次图中的一个方框代表一个模块,而而而而JacksonJacksonJacksonJackson图即使在图即使在图即使在图即使在 描绘程序结构时描绘程序结构时描绘程序结构时描绘程序结构时,一个方框也不表示一个模块一个方框也不表示一个模块一个方框也不表示一个模块一个方框也不表示一个模块,而只代表而只代表而只代表而只代表 几个语句;几个语句;几个语句;几个语句;3.3.3.3.层次图表现的是调用关系层次图表现的是调用关系层次图表现的是调用关系层次图表现的是调用关系,通常一个模块除了调用下级模通常一个模块除了调用下级模通常一个模块除了调用下级模通常一个模块除了调用下级模 块外还完成其它操作;而块外还完成其它操作;而块外还完成其它操作;而块外还完成其它操作;而JacksonJacksonJacksonJackson图表现的是组织关系,图表现的是组织关系,图表现的是组织关系,图表现的是组织关系,一个方框中包括的操作仅仅由它下层框中的哪些操作组一个方框中包括的操作仅仅由它下层框中的哪些操作组一个方框中包括的操作仅仅由它下层框中的哪些操作组一个方框中包括的操作仅仅由它下层框中的哪些操作组 成。成。成。成。2024/8/22 周四44Jackson图重复结构伪代码重复结构伪代码选择结构伪代码选择结构伪代码 A seq B C end AA select cond1 B or cond2 C end AABCAB0C0SAB*I untilA iter cond while Bend A 四四.JacksonJacksonJacksonJackson伪代码伪代码伪代码伪代码 JacksonJackson图中三种结构对应的伪代码如下图中三种结构对应的伪代码如下(凡带下划线的字均为关键字凡带下划线的字均为关键字)顺序结构伪代码顺序结构伪代码2024/8/22 周四45Jackson图姓名姓名类别类别津贴津贴表头表头表体表体教职工名册教职工名册2024/8/22 周四46Jackson图名册名册栏名行栏名行表名行表名行表头表头表体表体行行*姓名姓名类别类别津贴津贴工龄津贴工龄津贴0教龄津贴教龄津贴0IS教职工名册的数据结构教职工名册的数据结构教职工名册的数据结构教职工名册的数据结构2024/8/22 周四47Jackson图产生名册文件产生名册文件产生栏名行产生栏名行产生表名行产生表名行产生表头产生表头产生表体产生表体产生行产生行*产生姓名产生姓名产生类别产生类别产生津贴产生津贴产生工龄津贴产生工龄津贴0产生教龄津贴产生教龄津贴0SI教职工名册的程序结构教职工名册的程序结构教职工名册的程序结构教职工名册的程序结构2024/8/22 周四48Jackson方法二二.Jackson.Jackson方法的步骤方法的步骤 1.1.分析并确定输入数据和输出数据的逻辑结构分析并确定输入数据和输出数据的逻辑结构,用用JacksonJackson图描绘这些数据结构。图描绘这些数据结构。实质是对求解的问题进行需求分析。用实质是对求解的问题进行需求分析。用JacksonJackson图表示数据结构时图表示数据结构时,省略与解题省略与解题无关的多余信息无关的多余信息,仅保留需要用到的数据单元。仅保留需要用到的数据单元。2.2.找出输入数据结构和输出数据结构中有对应关系的数据单元找出输入数据结构和输出数据结构中有对应关系的数据单元(即有因果关系即有因果关系,在在程序中可以同时处理的数据单元程序中可以同时处理的数据单元)按照下列映射规则按照下列映射规则,导出描绘程序结构的导出描绘程序结构的JacksonJackson图。图。为每一对在输入结构和输出结构中有对应关系的单元画一个处理框;为每一对在输入结构和输出结构中有对应关系的单元画一个处理框;为输入数据结构中每一剩余的数据单元画一个处理框;为输入数据结构中每一剩余的数据单元画一个处理框;为输出数据结构中每一剩余的数据单元画一个处理框;为输出数据结构中每一剩余的数据单元画一个处理框;所有处理框在程序结构上的位置所有处理框在程序结构上的位置,应与由它处理的数应与由它处理的数 据单元在数据结构据单元在数据结构 Jackson图上的位置相对应图上的位置相对应(程序中具有因果关系程序中具有因果关系)。3.写出程序的过程性表示写出程序的过程性表示:列出所有操作和条件,并把它们分配到程序结构图的适列出所有操作和条件,并把它们分配到程序结构图的适当位置。当位置。4.用用Jackson伪代码写出与程序结构图对应的过程性表示。伪代码写出与程序结构图对应的过程性表示。2024/8/22 周四49Jackson方法例例1.1.有两个输入文件有两个输入文件:考生基本情况文件考生基本情况文件(简称考生情况文件简称考生情况文件)和考生和考生 高考成绩文件高考成绩文件(简称考分文件简称考分文件)如下如下:考生情况文件考生情况文件 考分文件考分文件准考证号准考证号姓姓 名名通讯地址通讯地址准考证号准考证号考考 分分 产生输出文件产生输出文件:考生新文件考生新文件 准考证号准考证号姓姓 名名通讯地址通讯地址考考 分分 试用试用JacksonJackson方法完成下列工作方法完成下列工作 (1)(1)用用JacksonJackson图表示输入与输出结构,找出它们之间的对应单元;图表示输入与输出结构,找出它们之间的对应单元;(2)(2)画出用画出用JacksonJackson图表示的程序结构;图表示的程序结构;(3)(3)列出程序所需要的操作,并加到上一步画出的程序结构图上;列出程序所需要的操作,并加到上一步画出的程序结构图上;(4)(4)用用JacksonJackson伪代码写出与程序结构图对应的过程性表示。伪代码写出与程序结构图对应的过程性表示。2024/8/22 周四50Jackson方法 (1)(1)输入结构输入结构考生情况文件考生情况文件通讯地址通讯地址姓姓 名名准考证号准考证号考生情况文件考生情况文件考分文件考分文件考考 分分准考证号准考证号输出结构输出结构通讯地址通讯地址姓姓 名名准考证号准考证号考考 分分考生记录考生记录I I考生记录考生记录I I考生记录考生记录I I2024/8/22 周四51Jackson方法 输入结构与输出结构中对应的数据单元输入结构与输出结构中对应的数据单元产生新文件产生新文件(2)(2)程序结构图程序结构图产生通讯地址产生通讯地址产生姓名产生姓名产生准考证号产生准考证号产生考分产生考分考生情况文件考生情况文件考生记录考生记录通讯通讯地址地址姓名姓名准考准考证号证号I I处理考生记录处理考生记录I I考生新文件考生新文件考分考分通讯通讯地址地址姓名姓名准考准考证号证号考生记录考生记录I I考分文件考分文件考生记录考生记录I I考分考分准考准考证号证号2024/8/22 周四52Jackson方法(3)(3)列出程序所需用的操作,并加到上一步画出的程序结构图上列出程序所需用的操作,并加到上一步画出的程序结构图上I(1)I(1)停止;停止;从输入文件中各读一条记录;从输入文件中各读一条记录;关闭全部文件;关闭全部文件;打开两个输入文件;打开两个输入文件;生成一条新记录;生成一条新记录;I(1)I(1)文件结束文件结束建立输出文件;建立输出文件;将新记录写入输出文件;将新记录写入输出文件;分析考生记录分析考生记录产生新文件产生新文件处理考生记录处理考生记录产生通讯地址产生通讯地址产生姓名产生姓名产生准考证号产生准考证号产生考分产生考分1 14 46 65 57 74 43 32 22024/8/22 周四53Jackson方法 (4)(4)用用JacksonJackson伪代码写出上述程序的过程表示。伪代码写出上述程序的过程表示。产生新文件产生新文件 seqseq 打开两个输入文件打开两个输入文件 建立输出文件建立输出文件 从输入文件中各读一条记录从输入文件中各读一条记录 分析考生记录分析考生记录iter untiliter until文件结束文件结束 处理考生记录处理考生记录 seqseq 产生准靠证号产生准靠证号 产生姓名产生姓名 产生通讯地址产生通讯地址 产生考分产生考分 生成一条新记录生成一条新记录 将新记录写入输出文件将新记录写入输出文件 从输入文件中各读一条记录从输入文件中各读一条记录 处理考生记录处理考生记录 endend 关闭全部文件关闭全部文件 停止停止 产生新文件产生新文件 endend2024/8/22 周四54程序复杂程度的定量度量程序复杂程度的定量度量w定量度量程序复定量度量程序复杂程度的价程度的价值w把程序的复把程序的复杂程度乘以适当常数即可估算出程度乘以适当常数即可估算出软件件中故障的数量以及中故障的数量以及软件开件开发需要用的工作量需要用的工作量w定量度量的定量度量的结果可比果可比较两个不同两个不同设计或两个不同或两个不同算法的算法的优劣劣w程序定量的复程序定量的复杂程度可以作程度可以作为模模块规模的精确限模的精确限度度2024/8/22 周四55McCabeMcCabe方法方法w程序程序图是是“退化了的退化了的”程序流程程序流程图,把程序流程,把程序流程图中每个中每个处理符号理符号都退化成一个点,原来都退化成一个点,原来连接不同接不同处理符号的箭理符号的箭头变成成连接不同点的接不同点的有向弧,得到的有向有向弧,得到的有向图就称就称为程序程序图,程序,程序图仅描描绘程序内部的控程序内部的控制流程。制流程。2024/8/22 周四56HalsteadHalstead的软件科学度量的软件科学度量根据程序中可执行代码行的操作符和操作数的数量来计算程序的复杂性n1:程序中出现的不同操作符数目n2:程序中出现的不同操作数数目N1:程序中操作符出现的总数N2:程序中操作数出现的总数2024/8/22 周四57用户界面应具备的特性用户界面应具备的特性w可使用性n n 使用的简单性n n 用户界面中的术语标准化和一致性n n 拥有HELP帮助功能n n 快速的系统响应和低的系统成本n n 用户界面应具有容错能力2024/8/22 周四58w w灵活性灵活性n n 算法的可算法的可隐隐可可显显性性n n 用用户户可以根据需要制定和修改界面方式可以根据需要制定和修改界面方式n n 能能够够按照用按照用户户的希望和需要,提供不同的希望和需要,提供不同详细详细程度的程度的系系统统响响应应信息信息n n 与其它与其它软软件系件系统应统应有有标标准的界面准的界面 为为使用使用户户界面具有一定的灵活性,需要付出代价,而且界面具有一定的灵活性,需要付出代价,而且有可能降低有可能降低软软件系件系统统的运行效率。的运行效率。2024/8/22 周四59w w复杂性和可靠性复杂性和可靠性n n 用用户户界面的界面的规规模和模和组织组织的复的复杂杂程度就是界面的程度就是界面的复复杂杂性。性。n n 在完成在完成预预定功能的前提下,定功能的前提下,应应当使得用当使得用户户界面界面越越简单简单越好。但不是把所有功能和界面安排成越好。但不是把所有功能和界面安排成线线性序列就一定性序列就一定简单简单。n n 用用户户界面的可靠性是指无故障使用的界面的可靠性是指无故障使用的间间隔隔时间时间。n n 用用户户界面界面应应能保能保证证用用户户正确、可靠地使用系正确、可靠地使用系统统,保保证证有关程序和数据的安全性有关程序和数据的安全性。2024/8/22 周四60用户界面设计的任务分析用户界面设计的任务分析w w这这一部分工作一部分工作应应与与软软件系件系统统的需求分析的需求分析同步同步进进行行。它主要包括它主要包括w w 用用户户特性分析特性分析w w 用用户户工作分析工作分析w w 记录记录有关系有关系统统的概念和的概念和术语术语w w 确定界面确定界面类类型型 等等4 4个步个步骤骤。2024/8/22 周四612024/8/22 周四62用户特性分析用户特性分析w w用用户户界面是适界面是适应应人的需要而建立的,因此,首先要人的需要而建立的,因此,首先要弄清将要使用弄清将要使用这这个界面的用个界面的用户类户类型。型。w w用用户户特性分析的目的是要特性分析的目的是要详细详细了解所有用了解所有用户户的技能的技能和和经验经验,以便能,以便能够预测够预测用用户对户对不同界面不同界面设计设计会做出会做出什么反什么反应应,这样这样在更改界面在更改界面时时,就能做出正确的判,就能做出正确的判断。断。2024/8/22 周四631.1.用户类型用户类型n 外行型外行型n n 初学型初学型n n 熟熟练练型型n n 专专家型家型 用用户户的的类类型并不是一成不型并不是一成不变变的。因此,要做用的。因此,要做用户户特特性性测测量,以帮助量,以帮助设计设计者者选择选择适合于大多数用适合于大多数用户户使用使用的界面的界面类类型和支持型和支持级别级别。2024/8/22 周四642.用户特性度量用户特性度量w w用用户户特性的度量与用特性的度量与用户户使用模式及使用模式及观测观测到的用到的用户户群群体能力有关。体能力有关。n n 用用户户使用的使用的频频度度:即系即系统统是否是否经经常使用。常使用。n n 用用户户是否能是否能够够自由自由选选用界面:用界面:所有的界面都所有的界面都应应当是良好的。当是良好的。n n 用用户对计户对计算机的熟悉程度:算机的熟悉程度:对计对计算机的熟悉程算机的熟悉程度决定了要使用度决定了要使用户户达到熟达到熟练练程度需要多少程度需要多少训练训练。2024/8/22 周四65n 用用户户知知识识:有些用有些用户户已有相当多的已有相当多的计计算机算机编编程和程和操作的知操作的知识识。他。他们们需要一种灵活的可需要一种灵活的可编编程的或命程的或命令令语语言的界面。言的界面。n n 用用户户思思维维能力:能力:这这是是对对用用户户的的综综合知合知识识和智力的和智力的衡量。衡量。n n 用用户户的生理能力和技能:的生理能力和技能:主要指人的主要指人的视觉视觉、听、听觉觉、认认知及知及记忆记忆等方面的特点。因此,等方面的特点。因此,应该应该在在这这一方一方面去收集信息。面去收集信息。2024/8/22 周四66w w用用户户群体的度量可以用群体的度量可以用打分打分的的办办法来法来简单简单地度量。地度量。n n 平均平均值值反映了用反映了用户户群体的平均特性。群体的平均特性。n n 标标准偏差准偏差反映了用反映了用户户群体的差异大小,主要用群体的差异大小,主要用于判断用于判断用户户界面界面对对不同不同类类型的用型的用户户的适的适应应范范围围。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服