下载

5下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 第6章 详细设计

第6章 详细设计.ppt

第6章 详细设计

懿妧嫕
2011-04-19 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《第6章 详细设计ppt》,可适用于IT/计算机领域

第章详细设计第章详细设计结构程序设计人机界面设计过程设计的工具面向数据结构的设计方法程序复杂程度的定量度量结构程序设计:易读性程序的质量与程序中所包含的GOTO语句的数量成反比Bohm和Jacopini证明了:种基本的控制结构(顺序,选择,循环)就能实现任何单入口单出口的程序“结构程序设计是尽可能少用GOTO语句的程序设计方法。最好仅在检测出错误时才使用GOTO语句而且应该总是使用前向GOTO语句。”结构程序设计:易读性人机界面设计设计问题响应时间:长度和易变性用户帮助:集成和附加,上下文出错信息:如何办,用户心理命令交互:多媒体(图,文,声,光),自定义宏指令,CTRL设计过程:精化,迭代,原型人机界面设计指南一般交互指南(一致,确认,不同类型,UNDO,易记,层次,多媒体)信息显示指南(同)数据输入指南(尽量少,同)用户界面应具有的特性、可使用性①使用简单②用户界面中所用术语的标准化和一致性③具有HELP功能④快速的系统响应和低的系统成本⑤具有容错能力、灵活性①考虑用户的特点、能力、知识水平。②提供不同的系统响应信息。③提供根据用户需求制定和修改界面。、界面的复杂性与可靠性复杂性界面规模及组织的复杂程度。应该愈简单愈好。可靠性指无故障使用的时间间隔。用户界面应该能够保证用户正确、可靠地使用系统及程序、数据的安全。用户界面应具有的特性用户界面设计的任务、用户特性分析用户模型了解所有用户的技能和经验针对用户能力设计或更改界面。从以下方面分析:用户类型通常分为:外行型、初学型、熟练型、专家型。用户特性度量与用户使用模式和用户群体能力有关。包括:用户使用频度、用户用机能力、用户的知识、思维能力等。用户界面设计的任务、用户界面的任务分析任务模型(DFD图)是对系统内部活动的分解不仅要进行功能分解(用DFD图描述)还要包括与人相关的活动。每个加工即一个功能或任务。、确定用户界面类型用户界面的基本类型、菜单(menu)按照显示方式正文菜单、图标菜单、正文和图标混合菜单如:开始菜单。用户界面的基本类型从用户角度出发用户界面设计的类型主要有问题描述语言数据表格、图形与图标、菜单、对话框及窗口等。每一种类型都有不同的特点和性能。讨论以下类型:菜单、图象、对话框和窗口。按屏幕位置和操作风格固定位置、浮动位置(弹出)、下拉式、嵌入式图混合菜单、图象在用户界面中加入丰富多彩的画面将能够更加行象地为用户提供有用的信息以达到可视化的目的。主要的处理操作有:图象的隐蔽和再现、屏幕滚动和图案显示、动画等。、对话框 对话框是在需要时显示在屏幕上一个矩形区域内的图形和正文信息。通过对话实现系统和用户之间的通信。  对话框显示的方式与弹出式菜单类似即瞬时弹出。同时系统还应将对话框所覆盖的原图象进行保存以便在对话结束后能立即恢复。  有三种对话形式:  图必须回答式对话框图无需回答式对话框图警告式对话框、窗口(window)图形学中称为视图区(Viewport)视为虚拟屏幕。一个实用窗口可包含部件:菜单区(menubar)图标区(iconbar)标题区(titlebar)移动区(movebar)大小区(sizebar)退出区(quitbar)用户工作区(user’sworkbar)横向滚动区(horizontalscrollbar)纵向滚动区(verticalscrollbar)图窗口数据输入界面设计数据输入界面是系统的重要组成部分。主要从输入速度和减少出错率考虑。、尽量减少输入工作量对相同内容输入设置默认值自动填入列表选择或点击选择、输入屏幕与输入格式匹配即屏幕显示按照数据使用频率、重要性、次序等组织。、数据输入的一般规则确定输入交互动作确定删除提供反馈数据输入界面设计过程设计的工具过程设计的工具、流程图、结构化流程图(NS图)、PAD图问题分析图、PDL、判定表判定树,IPO,5程序流程图5程序流程图图4流程图5NS图NS图由而且仅由顺序、选择、循环三种基本结构组成。基本图例如下:5NS图图N-S图NS图举例ab条件TFCaseXi,i=,,XXX当条件成立条件直到条件成立直到条件成立cdefghij顺序结构选择结构多分支选择结构先判定型循环结构后判定型循环结构FTTFNS图举例5NS图N-S图举例5PAD图、PAD图问题分析图(problemAnalysisDiagram)其基本控制结构如下:5PAD图5PAD图PAD图基本结构软件工程PAD示例例BEGINFIRST:=KSECOND:=FIRST=KISECOND=SECOND=FIRSTFIRST=KISECOND=KIELSESECOND:=KIENDENDENDPASCAL源程序段对应PAD图FORI:=TONDOBEGINIFKI>SECONDTHENBEGINIFKI>FIRSTTHENBEGINSECOND:=FIRSTFIRST:=KIENDPAD图应用举例例PAD图PAD图应用举例5PDL语言PDL(ProgramDesignLanguage)程序设计语言这是一种结构化的语言。是非形式化比较灵活的语言用于描述模块内部过程的具体算法以便在开发人员之间比较精确的进行交流。PDL的语法是开放式的其外层语法是确定的而内层语法则不确定。外层语法描述控制结构它用类似于一般程序设计语言控制结构的关键字:如:IFTHENELSEWHILEDOREPEATUNTILDOCASEDOWHILE等表示。有时还用关键字反排表示控制结构结束:DOODIFFI5PDL语言软件工程示例:拼词检查程序PROCEDUREspellcheckBEGIN*splitdocumentintosinglewordsLOOPgetnextwordaddwordtowordlistinsortorderEXITWHENallwordsprocessedENDLOOP*lookupwordsindictionaryLOOPgetwordfromwordlist软件工程IFwordnotindictionaryTHEN*displaywordsnotindictionarydisplaywordpromptonuserterminalIFuserresponsesayswordOKTHENaddwordtogoodwordlistELSEaddwordtobadwordlistENDIFENDIFEXITWHENallwordsprocessedENDLOOP软件工程*createanewwordsdictionarydictionary:=mergedictionaryandgoodwordlistENDspellcheck为了区别关键字规定关键字一律大写其它单词一律小写。内语法使用自然语言来描述处理特性。内语法比较灵活只要写清楚就可以不必考虑语法错以利于人们可把主要精力放在描述算法的逻辑上。面向数据结构的设计方法(JACKSON方法)  结构化开发方法是一种面向数据流的开发方法而JACKSON系统开发方法则是面向数据结构的开发方法。其基本思想实现建立输入输出的数据结构再将其转换为软件结构。JACKSON方法由英国的MJackson提出该方法特别适合于数据处理类问题。如企事业管理一类的软件系统。JSD系统方法简介Jackson系统开发(JSD)方法是一种典型的面向数据结构的分析与设计方法。其分析的重点放在构造与系统相关的现实世界并建立现实世界的信息域的模型上。其最终目标是生产软件的过程性描述。JSD方法的步骤如下:、实体动作分析、实体结构分析、定义初始模型、功能描述:详细说明与已定义的动作相对应的功能。、绝对系统时间特性:对进程调度特性进行评价和说明。、实现:设计组成系统的硬件和软件。JSD方法的前三步属于需求分析阶段后三步属于软件设计阶段。JSD系统方法简介Jackson系统开发(JSD)方法是一种典型的面向数据结构的分析与设计方法。其分析的重点放在构造与系统相关的现实世界并建立现实世界的信息域的模型上。其最终目标是生产软件的过程性描述。JSD方法的步骤如下:、实体动作分析、实体结构分析、定义初始模型、功能描述:详细说明与已定义的动作相对应的功能。、绝对系统时间特性:对进程调度特性进行评价和说明。、实现:设计组成系统的硬件和软件。JSD方法的前三步属于需求分析阶段后三步属于软件设计阶段。JACKSON方法概述SD法是一种面向数据流的设计方法JACKSON方法是一种面向数据结构的设计方法。强调程序结构与问题结构相对应。JACKSON方法的构成JACKSON方法由JSP(JacksonStructuredProgramming)和JSD(JacksonSystemDevelopment)方法构成。JSP法主要体现程序结构的设计不严格区分软件概要设计和详细设计。可以根据JSP的规则直接导出程序结构。一般用于规模不大的数据处理系统而且IO数据结构容易描述的情况。JSD法是对JSP法的扩充针对JSP法的缺陷而提出的解决方案。其主要特点是:用“分而治之”的策略控制系统的复杂性解决IO结构的冲突问题。JACKSON方法概述SD法是一种面向数据流的设计方法JACKSON方法是一种面向数据结构的设计方法。强调程序结构与问题结构相对应。JACKSON方法的构成JACKSON方法由JSP(JacksonStructuredProgramming)和JSD(JacksonSystemDevelopment)方法构成。JSP法主要体现程序结构的设计不严格区分软件概要设计和详细设计。可以根据JSP的规则直接导出程序结构。一般用于规模不大的数据处理系统而且IO数据结构容易描述的情况。JSD法是对JSP法的扩充针对JSP法的缺陷而提出的解决方案。其主要特点是:用“分而治之”的策略控制系统的复杂性解决IO结构的冲突问题。JACKSON方法的设计过程、建立数据结构JACKSON方法中数据结构表示为树型结构有顺序、选择和循环三种基本结构。、以数据结构为基础建立相应的程序结构图也称为JACKSON图。当没有结构冲突时转换过程是简单的。例:合并文件(考虑输入和输出之间的对应关系)输入、输出数据结构在内容、数量、次序上是对应的。例:合并文件(考虑输入和输出之间的对应关系)输入、输出数据结构在内容、数量、次序上是对应的。、数据结构、设计程序图Jackson方法的技术构成根据报文的中间结构将输入数据结构转换为与输入的数据结构相对应消除了结构冲突图将报文分析的数据结构转换为结构图。显然中间结构的选取依赖于设计者对问题的理解及其设计者的设计风格。       回溯结构设计       回溯结构设计以上回溯结构由三种构件组成:1、Posit(假定)用于表示条件成立时的处理过程进入Posit构件时程序状态就被保存起来。、Quit(退出)当假定调解不成立控制转向另一认可。、Admit(认可)Admit构件提供了另一条处理路径在Admit的入口处程序无条件恢复到原有状态。JACKSON方法优点:结构清晰、易理解、易修改。不会过多依赖于设计者的经验。缺点:当系统规模及复杂度大时确定数据结构困难。程序复杂程度的定量度量程序复杂程度的定量度量McCabe方法Halstead方法HIPO法软件工程HIPO法HIPO法(HierarchyplusInputProcessOutput)即按功能层次的结构分析法是年由IBM公司推出的软件分析及设计方法又称HIPO图。基本思想结构化方法是以数据流数据封闭性准则来分解的HIPO法则是以功能、功能完备性准则逐层分解的。层次图(H图)软件工程层次图(H图)表明各个功能的隶属关系。它是自顶向下逐层分解得到的。最高一层是整个系统的名称和系统的概括功能说明第二层把系统功能展开分成几个框第二层功能进一步分解就得到了第三层、第四层…直到最后一层。每个框内都应有一个名字用以标识它的功能。还应有一个编号以记录它所在的层次及在该层次的位置。层次图(H图)IPO图软件工程IPO图IPO图为层次图中每一功能框详细地指明输入(I)、处理(P)及输出(O)。通常IPO图有固定格式处理操作部分总是列在中间输入和输出部分分别在其左边和右边。由于某些细节很难在一张IPO图中表达清楚常常把IPO图又分为两部分:概括的称为概要图(overviewdiagram)具体的称为详细图(detaildiagram)。软件工程概要IPO图用于表达对一个系统或对其中某一子系统功能的概略表达指明完成某一功能框规定的功能时需要哪些输入哪些操作和哪些输出。详细IPO图详细表明输入、处理、输出三者之间的关系。输入和输出应是确定的文件和记录或是文件和记录中的字段以及具体介质和设备类型处理框中的操作也应是具体的而不是含糊的调用子程序时应标明子程序名。层次图(H图)软件工程层次图(H图)表明各个功能的隶属关系。它是自顶向下逐层分解得到的。最高一层是整个系统的名称和系统的概括功能说明第二层把系统功能展开分成几个框第二层功能进一步分解就得到了第三层、第四层…直到最后一层。每个框内都应有一个名字用以标识它的功能。还应有一个编号以记录它所在的层次及在该层次的位置。层次图(H图)软件工程例:盘存销售系统根据需求分析系统应具备有以下功能:)计算买主订单)准备销售报表)产生买主文件和应收帐发票)运行更新的盘存文件)产生托运单和包装单)保证库存及时订货软件工程小说明对应H图上框的概要IPO图软件工程对应H图上框的概要IPO图输入Input输出Output处理Process软件工程对应于H图框的详细IPO图从框来到框去HIPO法的特点:优点:简单易行资料易于查找不仅适于信息软件的开发也可用于逻辑关系较复杂的应用软件缺点:无验证功能功能完备性很难验证。未能反映系统性能要求。资料量大不宜规模大的系统。软件工程HIPO法的特点:优点:简单易行资料易于查找不仅适于信息软件的开发也可用于逻辑关系较复杂的应用软件缺点:无验证功能功能完备性很难验证。未能反映系统性能要求。资料量大不宜规模大的系统。

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/45

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利