首页 第6章 详细设计

第6章 详细设计

举报
开通vip

第6章 详细设计null第6章 详细设计第6章 详细设计6.1 结构程序设计 6.2 人机界面设计 6.3 过程设计的工具 6.4 面向数据结构的设计方法 6.5 程序复杂程度的定量度量6.1 结构程序设计: 易读性程序的质量与程序中所包含的GO TO 语句的数量成反比 Bohm和Jacopini证明了:3种基本的控制结构(顺序,选择,循环)就能实现任何单入口单出口的程序 “结构程序设计是尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。” 6.1...

第6章 详细设计
null第6章 详细 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 第6章 详细设计6.1 结构程序设计 6.2 人机界面设计 6.3 过程设计的工具 6.4 面向数据结构的设计方法 6.5 程序复杂程度的定量度量6.1 结构程序设计: 易读性程序的质量与程序中所包含的GO TO 语句的数量成反比 Bohm和Jacopini证明了:3种基本的控制结构(顺序,选择,循环)就能实现任何单入口单出口的程序 “结构程序设计是尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。” 6.1 结构程序设计: 易读性null6.2人机界面设计 6.2.1设计问题 1. 响应时间: 长度和易变性 2. 用户帮助: 集成和附加, 上下文 3. 出错信息: 如何办, 用户心理 4. 命令交互: 多媒体(图,文,声,光), 自定义宏指令, CTRLnull6.2.2设计过程: 精化,迭代,原型 6.2.3人机界面设计指南 一般交互指南(一致,确认,不同类型,UNDO,易记,层次,多媒体) 信息显示指南(同1.) 数据输入指南(尽量少,同1.)用户界面应具有的特性 1、可使用性 ① 使用简单 ② 用户界面中所用术语的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 化和一致性 ③ 具有HELP功能 ④ 快速的系统响应和低的系统成本 ⑤ 具有容错能力 2、灵活性 ① 考虑用户的特点、能力、知识水平。 ② 提供不同的系统响应信息。 ③ 提供根据用户需求制定和修改界面。 3、界面的复杂性与可靠性 复杂性—界面规模及组织的复杂程度。应该愈简单愈好。 可靠性—指无故障使用的时间间隔。用户界面应该能够保 证用户正确、可靠地使用系统,及程序、数据的安全。用户界面应具有的特性用户界面设计的任务 1、用户特性分析 — 用户模型 了解所有用户的技能和经验,针对用户能力设计或更改界面。从以下方面分析: 用户类型—通常分为:外行型、初学型、熟练型、专家型。 用户特性度量—与用户使用模式和用户群体能力有关。 包括:用户使用频度、用户用机能力、用户的知识、思维能力等。用户界面设计的任务2、用户界面的任务分析 —任务模型(DFD图) 是对系统内部活动的分解,不仅要进行功能分解(用DFD图描述),还要包括与人相关的活动。每个加工即一个功能或任务。 3、确定用户界面类型用户界面的基本类型1、菜单(menu) 按照显示方式 正文菜单、图标菜单、正文和图标混合菜单,如:开始菜单。用户界面的基本类型 从用户角度出发,用户界面设计的类型主要有问题描述语言,数据 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 格、图形与图标、菜单、对话框及窗口等。每一种类型都有不同的特点和性能。讨论以下类型:菜单、图象、对话框和窗口。按屏幕位置和操作风格 固定位置、浮动位置(弹出)、下拉式、嵌入式图3.54 混合菜单null2、图 象 在用户界面中,加入丰富多彩的画面,将能够更加行象地为用户提供有用的信息,以达到可视化的目的。主要的处理操作有:图象的隐蔽和再现、屏幕滚动和图案显示、动画等。null3、对话框  对话框是在需要时,显示在屏幕上一个矩形区域内的图形和正文信息。通过对话,实现系统和用户之间的通信。   对话框显示的方式与弹出式菜单类似,即瞬时弹出。同时,系统还应将对话框所覆盖的原图象进行保存,以便在对话结束后能立即恢复。   有三种对话形式:  图3.58 必须回答式对话框图3.59 无需回答式对话框图3.60 警告式对话框null4、窗口(window) 图形学中称为视图区(Viewport),视为虚拟屏幕。一个实用窗口,可包含部件: 菜单区(menu bar) 图标区(icon bar) 标题区(title bar) 移动区(move bar) 大小区(size bar) 退出区(quit bar) 用户工作区(user’s work bar) 横向滚动区(horizontal scroll bar) 纵向滚动区(vertical scroll bar)图3.61 窗口数据输入界面设计数据输入界面,是系统的重要组成部分。主要从输入速度和减少出错率考虑。1、尽量减少输入工作量 对相同内容输入设置默认值 自动填入 列表选择或点击选择2、输入屏幕与输入格式匹配 即屏幕显示按照数据使用频率、重要性、次序等组织。3、数据输入的一般规则 确定输入 交互动作 确定删除 提供反馈数据输入界面设计6.3 过程设计的工具 6.3 过程设计的工具 1、流程图 2、结构化流程图(N-S图) 3、PAD图—问题分析图 4、 PDL 5、 判定表/判定树, IPO,4.5.1 程序流程图4.5.1 程序流程图图3.44 流程图4.5.2 N—S图N-S图由而且仅由顺序、选择、循环三种基本结构组成。 基本图例如下:4.5.2 N—S图图3.45 N-S图N-S图举例ab条 件 1TF Case Xi, i=2,3,4X2X3X4当条件3成立条 件 2直到条件4成立直 到 条 件 成立cdefghij顺序结构选择结构多分支选择结构先判定型循环结构后判定型循环结构FTTFN-S图举例4.5.2 N—S图N-S图举例4.5.3 PAD图3、PAD图—问题分析图(problem Analysis Diagram) 其基本控制结构如下:4.5.3 PAD图4.5.3 PAD图PAD图基本结构null软件工程PAD示例例2 BEGIN FIRST:=K[1]; SECOND:=0;FIRST=K[I] SECOND=0SECOND =FIRST FIRST=K[I]SECOND =K[I] ELSE SECOND:=K[I] END END END. PASCAL源程序段对应PAD图 FOR I:=2 TO N DO BEGIN IF K[I]>SECOND THEN BEGIN IF K[I]>FIRST THEN BEGIN SECOND:=FIRST; FIRST:=K[I] ENDPAD图应用举例例24.5.3 PAD图PAD图应用举例4.5.4 PDL语言 PDL(Program Design Language)程序设计语言 这是一种结构化的语言。是非形式化比较灵活的语言,用于描述模块内部过程的具体算法,以便在开发人员之间比较精确的进行交流。 PDL的语法是开放式的,其外层语法是确定的,而内层语法则不确定。外层语法描述控制结构它用类似于一般程序设计语言控制结构的关键字: 如 : IF-THEN-ELSE WHILE- DO REPEAT- UNTIL DO CASE DO WHILE 等表示。 有时还用关键字反排,表示控制结构结束: DO - OD IF - FI4.5.4 PDL语言null软件工程示例: 拼词检查程序PROCEDURE spellcheck BEGIN --* split document into single words LOOP get next word add word to word list in sortorder EXIT WHEN all words processed END LOOP --* look up words in dictionary LOOP get word from word listnull软件工程 IF word not in dictionary THEN --* display words not in dictionary display word prompt on user terminal IF user response says word OK THEN add word to good word list ELSE add word to bad word list ENDIF ENDIF EXIT WHEN all words processed END LOOPnull软件工程 --* create a new words dictionary dictionary := merge dictionary and good word list END spellcheck为了区别关键字, 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 关键字一律大写,其它单词一律小写。 内语法使用自然语言来描述处理特性。内语法比较灵活,只要写清楚就可以,不必考虑语法错,以利于人们可把主要精力放在描述算法的逻辑上。null6.4面向数据结构的设计方法 (JACKSON方法)  结构化开发方法是一种面向数据流的开发方法,而JACKSON系统开发方法则是面向数据结构的开发方法。其基本思想实现建立输入输出的数据结构,再将其转换为软件结构。 JACKSON方法由英国的M. Jackson提出,该方法特别适合于数据处理类问题。如企事业管理一类的软件系统。 JSD系统方法简介 Jackson系统开发(JSD)方法是一种典型的面向数据结构的分析与设计方法。其分析的重点放在构造与系统相关的现实世界,并建立现实世界的信息域的模型上。其最终目标是生产软件的过程性描述。 JSD方法的步骤如下: 1、实体动作分析 2、实体结构分析 3、定义初始模型 4、功能描述:详细说明与已定义的动作相对应的功能。 5、绝对系统时间特性:对进程调度特性进行评价和说明。 6、实现:设计组成系统的硬件和软件。 JSD方法的前三步属于需求分析阶段,后三步属于软件设计阶段。 JSD系统方法简介 Jackson系统开发(JSD)方法是一种典型的面向数据结构的分析与设计方法。其分析的重点放在构造与系统相关的现实世界,并建立现实世界的信息域的模型上。其最终目标是生产软件的过程性描述。 JSD方法的步骤如下: 1、实体动作分析 2、实体结构分析 3、定义初始模型 4、功能描述:详细说明与已定义的动作相对应的功能。 5、绝对系统时间特性:对进程调度特性进行评价和说明。 6、实现:设计组成系统的硬件和软件。 JSD方法的前三步属于需求分析阶段,后三步属于软件设计阶段。 JACKSON方法概述 SD法是一种面向数据流的设计方法,JACKSON方法是一种面向数据结构的设计方法。强调程序结构与问题结构相对应。 JACKSON方法的构成 JACKSON方法由JSP(Jackson Structured Programming)和JSD(Jackson System Development)方法构成。 JSP法主要体现程序结构的设计,不严格区分软件概要设计和详细设计。可以根据JSP的规则直接导出程序结构。一般用于规模不大的数据处理系统,而且I/O数据结构容易描述的情况。 JSD法是对JSP法的扩充,针对JSP法的缺陷而提出的解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。其主要特点是:用“分而治之”的策略控制系统的复杂性,解决I/O结构的冲突问题。JACKSON方法概述 SD法是一种面向数据流的设计方法,JACKSON方法是一种面向数据结构的设计方法。强调程序结构与问题结构相对应。 JACKSON方法的构成 JACKSON方法由JSP(Jackson Structured Programming)和JSD(Jackson System Development)方法构成。 JSP法主要体现程序结构的设计,不严格区分软件概要设计和详细设计。可以根据JSP的规则直接导出程序结构。一般用于规模不大的数据处理系统,而且I/O数据结构容易描述的情况。 JSD法是对JSP法的扩充,针对JSP法的缺陷而提出的解决方案。其主要特点是:用“分而治之”的策略控制系统的复杂性,解决I/O结构的冲突问题。nullnullJACKSON方法的设计过程 1、建立数据结构 JACKSON方法中数据结构表示为树型结构,有顺序、选择和循环三种基本结构。 2、以数据结构为基础,建立相应的程序结构图,也称为JACKSON图。当没有结构冲突时,转换过程是简单的。例:合并文件(考虑输入和输出之间的对应关系),输入、 输出数据结构在内容、数量、次序上是对应的。例:合并文件(考虑输入和输出之间的对应关系),输入、 输出数据结构在内容、数量、次序上是对应的。1、数据结构 2、设计程序图 nullJackson方法的技术构成nullnullnull根据报文的中间结构,将输入数据结构转换为与输入的数据结构相对应,消除了结构冲突,图3.42将报文分析的数据结构转换为结构图。 显然,中间结构的选取依赖于设计者对问题的理解及其设计者的设计风格。null       回溯结构设计       回溯结构设计 以上回溯结构由三种构件组成: 1、Posit(假定) 用于表示条件成立时的处理过程,进入Posit构件时程序状态就被保存起来。 2、Quit(退出) 当假定调解不成立,控制转向另一认可。 3、Admit (认可) Admit构件提供了另一条处理路径,在Admit的入口处程序无条件恢复到原有状态。 JACKSON方法 优点:结构清晰、易理解、易修改。不会过多依赖于设计者的 经验。 缺点:当系统规模及复杂度大时,确定数据结构困难。4.8 程序复杂程度的定量度量4.8 程序复杂程度的定量度量4.8.1 McCabe方法 4.8.2 Halstead方法4.6 HIPO法软件工程4.6 HIPO法HIPO法(Hierarchy plus Input-Process-Output) 即按功能层次的结构分析法,是1976年由 IBM 公司推出的软件分析及设计方法,又称HIPO图。 基本思想 结构化方法是以数据流,数据封闭性准则来分解的,HIPO法则是以功能、功能完备性准则逐层分解的。层次图 (H图)软件工程层次图 (H图) 表明各个功能的隶属关系。它是自顶向下逐层分解得到的。 最高一层是整个系统的名称和系统的概括功能说明; 第二层把系统功能展开,分成几个框; 第二层功能进一步分解,就得到了第三层、第四层,…,直到最后一层。 每个框内都应有一个名字,用以标识它的功能。还应有一个编号,以记录它所在的层次及在该层次的位置。层次图 (H图)IPO图软件工程IPO图IPO图为层次图中每一功能框详细地指明输入(I)、处理(P)及输出(O)。 通常,IPO图有固定格式,处理操作部分总是列在中间,输入和输出部分分别在其左边和右边。 由于某些细节很难在一张IPO图中表达清楚,常常把IPO图又分为两部分: 概括的称为概要图(overview diagram) 具体的称为详细图(detail diagram)。null软件工程概要IPO图用于表达对一个系统,或对其中某一子系统功能的概略表达,指明完成某一功能框规定的功能时需要哪些输入,哪些操作和哪些输出。 详细IPO 图详细表明输入、处理、输出三者之间的关系。输入和输出应是确定的文件和记录,或是文件和记录中的字段,以及具体介质和设备类型,处理框中的操作也应是具体的而不是含糊的,调用子程序时应标明子程序名。 层次图 (H图)软件工程层次图 (H图) 表明各个功能的隶属关系。它是自顶向下逐层分解得到的。 最高一层是整个系统的名称和系统的概括功能说明; 第二层把系统功能展开,分成几个框; 第二层功能进一步分解,就得到了第三层、第四层,…,直到最后一层。 每个框内都应有一个名字,用以标识它的功能。还应有一个编号,以记录它所在的层次及在该层次的位置。层次图 (H图)null软件工程例:盘存/销售系统,根据需求分析,系统应具备有以下功能: 1)计算买主订单 2)准备销售报表 3)产生买主文件和应收帐发票 4)运行更新的盘存文件 5)产生托运单和包装单 6)保证库存及时订货null软件工程小说明对应H图上1.1.0框的概要IPO图 软件工程对应H图上1.1.0框的概要IPO图 输入 Input输出 Output处理 Processnull软件工程对应于H图1.1.2框的详细IPO图 从1.1.1框来到 1.1.3框去HIPO法的特点: 优点:简单易行,资料易于查找,不仅适于信息软件的开发,也可用于逻辑关系较复杂的应用软件 缺点:无验证功能,功能完备性很难验证。未能反映系统性能要求。资料量大,不宜规模大的系统。软件工程HIPO法的特点: 优点:简单易行,资料易于查找,不仅适于信息软件的开发,也可用于逻辑关系较复杂的应用软件 缺点:无验证功能,功能完备性很难验证。未能反映系统性能要求。资料量大,不宜规模大的系统。
本文档为【第6章 详细设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_290304
暂无简介~
格式:ppt
大小:3MB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2011-04-19
浏览量:331