第3步:将上图对应转换为程序流程图,并将每个处理框编号。

Slides:



Advertisements
Similar presentations
数据库原理及应用(ORACLE)实用教程
Advertisements

第一章 資料結構導論 1-1 資料結構簡介 1-2 認識程式設計 1-3 演算法效能分析 1-4 物件導向程式設計與Java.
An Introduction to Database Systems
第二章 可行性研究.
Tool Command Language --11级ACM班 金天行.
第八章 信息系统开发概述.
第9章 系統建置.
第六章 详细设计 6.1 结构化程序设计 6.2 详细设计工具 6.3 面向数据结构的设计方法 退出.
第三章 数据类型和数据操作 对海量数据进行有效的处理、存储和管理 3.1 数据类型 数据源 数据量 数据结构
D、結構化技術 主要的結構化技術 結構化程式設計 (Structured Programming)
HSPICE 基本操作.
Oracle数据库 Oracle 子程序.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
程序的形式验证 - 简介 中国科学院软件研究所 张文辉 1.
企業會計資訊系統發展現況與電腦審計實務分享
Chapter 5 Verilog硬體描述語言
單元3:軟體設計 3-2 順序圖(Sequence Diagrams)
面向对象建模技术 软件工程系 林 琳.
Transact-SQL 語言設計教學.
第5章 結構化分析與設計-流程塑模.
第六章 详细设计.
計算機概論 第十章 檔案與資料庫管理系統 陳維魁/陳邦治 旗標出版社.
品質管理系統 華南品規課 鴻准精密模具有限公司 2018/12/6.
走进编程 程序的顺序结构(二).
Visual Studio Team System 简介
資訊系統文件化工具 東吳大學會計學系 謝 永 明.
Programmable Logic Architecture Verilog HDL FPGA Design
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
電腦解題─流程圖簡介 臺北市立大同高中 蔡志敏老師.
邏輯設計 Logic Design 顧叔財, Room 9703, (037)381864,
软件工程 Software Engineering
第五章 详细设计.
结构程序设计 过程设计的工具 面向数据结构的设计方法 程序复杂程度的定量度量
第二章 Java语言基础.
数据挖掘工具性能比较.
陳維魁 博士 儒林圖書公司 第五章 控制結構 陳維魁 博士 儒林圖書公司.
B+ Tree.
Instructions: Language of the Machine
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
Unit 11.Operating System 11.1 What’s OS 11.2 Related Courses
程序设计工具实习 Software Program Tool
SOA – Experiment 2: Query Classification Web Service
資料結構 Data Structures Fall 2006, 95學年第一學期 Instructor : 陳宗正.
C语言程序设计 主讲教师:陆幼利.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
$9 泛型基础.
Engineering Documents Manager – EDM 工程文件管理员-EDM
质量管理体系和认证人员管理 Quality management system and certification personnel management.
软件工程 第四章 软件设计 软件过程设计技术与工具.
梁文新 办公室:综合楼108 电 话: 软件工程导论 梁文新 办公室:综合楼108 电 话:
软件设计任务 从工程管理的角度来看,软件设计分两步完成。 概要设计,将软件需求转化为数据结构和软件的系统结构。
虚 拟 仪 器 virtual instrument
VisComposer 2019/4/17.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
第5章 软件详细设计 本章内容结构 本章引言 学习目标 教学内容 本章小结 思考和练习 课堂讨论 2019年4月26日.
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
iSIGHT 基本培训 使用 Excel的栅栏问题
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
计算机绘图 AutoCAD2016.
临界区问题的硬件指令解决方案 (Synchronization Hardware)
第二节 C语言的特点.
第七章 软件测试 Software Testing
第6章 详细设计 Detailed Design
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
第十七讲 密码执行(1).
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
编译原理实践 6.程序设计语言PL/0.
§2 自由代数 定义19.7:设X是集合,G是一个T-代数,为X到G的函数,若对每个T-代数A和X到A的函数,都存在唯一的G到A的同态映射,使得=,则称G(更严格的说是(G,))是生成集X上的自由T-代数。X中的元素称为生成元。 A变, 变 变, 也变 对给定的 和A,是唯一的.
Presentation transcript:

第3步:将上图对应转换为程序流程图,并将每个处理框编号。

第4步:Pseudocode 分类。分析每个处理框应该做的动作并用伪码表示 这些动作。得到分类指令表。

Warnier方法 第5步:将前一步分类指令表中有同样处理框标识(序号)的指令归为一组,基本上按照“输入-处理-输出”的顺序组织这些指令,并按处理序号排序 例如:010-读 若文件没有结束 040-顾客号送访问顾客号 -旧余额送工作区 ……

设计方法比较: 没有一种方法能够适用于所有的应用领域; 设计“优劣程度”的评定标准,大都建立在不可证明的假设的基础之上; “设计”首先是解决问题的活动,而解决问题的过程和办法是因人而异的; 方法是重要的,但只有在支撑环境中运用它们才能得到成功。

详细设计 详细设计是给出软件结构中各模块的内部过程描述。 模块的内部过程描述也就是模块内部的算法设计。 详细设计也既是要导出一种算法设计表示,由此可以直接而简单地导出程序代码。

详细设计 详细设计的逻辑基础: 使用结构化构造(即用顺序、选择和重复三种程序结构)表示程序过程,降低程序的复杂性,从而提高可靠性、易测试性和易维护性。

详细设计 详细设计工具作用: 工具: 对软件开发人员来说,提高软件开发效率。 对软件测试和维护人员来说,提供摆脱繁琐的程序代码,了解模块程序结构的途径。 工具: 图形工具: 将过程细节用图形来表示,在图中,逻辑结构用具体的图形表示 列表工具:利用表来表示过程细节,表列出了各种操作和相应的条件 语言工具:用类语言(伪码)表示过程的细节,很接近编程语言。

设计工具 图形工具 1、程序流程图(Program Flow Chart) 2、盒图(Box Diagram) 3、PAD图

程序流程图 5种基本控制结构 (1) 顺序结构(sequential structure) (3) 先判定型循环结构(while-loop structure) (1) 顺序结构(sequential structure) (2) 选择结构(selective structure) T P S F A B P B A F T (5) 多情况选择(case structure) T A1 F P=1 A2 P=2 … An P=n (4) 后判定型循环结构(until-loop structure) F S T P 5种基本控制结构

程序流程图  优点:直观、容易掌握,且历史“悠久”,使用 广泛。  缺点:本质上不具备逐步求精的特点,对于提高  任何复杂的程序流程图都应由以上五种基本结构组合而成。  ISO 认可的规定符号:  优点:直观、容易掌握,且历史“悠久”,使用 广泛。  缺点:本质上不具备逐步求精的特点,对于提高 大型系统的可理解性作用甚微; 不易表示数据结构;转移控制太方便。  趋势:使用越来越少。

盒图 2、盒图(Box Diagram): Nassi &Shneiderman 1973年提出,又称为N-S Charts。Chapin 1974年作扩充,故也称为Chapin charts. P F T A B Selective  Do-While P S While Sequential A B Call subroutine A Do-Until P S Until Case P 1 2 n A1 A2 An

盒图 例: x4 i g h f k x1 b a j x2 c d e k : Do-Until x6 1 Do-While x3 2 3

盒图 特点: ① 没有箭头,不允许随意转移控制; ② 每个矩形框(Case中条件取值例外)都是一个功能域(即一个特定结构的作用域),结构表示明确; ③ 局部及全程数据的作用域易见; ④ 易表现嵌套关系(embedded structure)以及模块的层次结构。

PAD 3、PAD(Problem Analysis Diagram):日立公司,1973 A B While P S Until P P Sequential While P S Until P Loops P A B THEN ELSE Selective P = A1 A2 Case An 1 2 n … Statement Index def Definition

PAD

PAD 例:N-S图与PAD的转换 练习:请将N-S图转化成PAD图 x2 c d e k : x4 i g h f k x1 b a j Do-While x3 2 3 d e k : x4 T F Do-Until x5 i g h f k x1 b Do-Until x6 a j P A B THEN ELSE Selective While P S Until P Loops A B Sequential P = A1 A2 Case An 1 2 n …

PAD a j Until x5 i Until x6 b x1 k f x4 g h k x2 d e While x3 c 开始  结束  a j Until x5 i Until x6 b x1 k f x4 g h def k x2 d e 1 2 3 While x3 c

PAD 特点: ① 结构清晰,层次分明,易读; ② 支持自顶向下、逐步求精的设计思想; ③ 容易将PAD自动转换为高级语言源程序。

设计工具 列表工具 判定表 & 判定树(Decision Table & Tree)表示复杂的条件(input)组合与应做动作(output)之间的对应关系。

列表工具 例: 航空行李托运费的算法 按规定:重量不超过30公斤的行李可免费托运。重量超过30公斤时,对超运部分,头等舱国内乘客收4元/公斤;其它舱位国内乘客收6元/公斤;外国乘客收费为国内乘客的2倍;残疾乘客的收费为正常乘客的1/2。

判定表 Rules Rule numbers  Condition rows Action rows

判定树 用判定树表示计算行李费的算法 行李费算法 行李重量W > 30 行李重量W  30 免费 国内乘客 外国乘客 头等舱 其他舱 残疾乘客 正常乘客 (W-30)  2 (W-30)  4 (W-30)  3 (W-30)  6 (W-30)  8 (W-30)  12 注:判定表与判定树并不适用于作为一种通用的设计工具,通常将之用于辅助测试 用判定树表示计算行李费的算法

语言工具 例: PDL (Program Design Language):又称 Pseudocode. PROCEDURE spell_check IS BEGIN Split document into single words Look up words in dictionary Display words which are not in dictionary Create a new dictionary END spell_check External statements Internal

工具 ① 有固定的外语法(keyword); ② 内语法用自然语言描述; ③ 有数据说明,例如: ④有子程序定义与调用机制,例如: 应具备以下特点: ① 有固定的外语法(keyword); ② 内语法用自然语言描述; 抽象类型 ③ 有数据说明,例如: TYPE number IS STRING LENGTH (12) TYPE table IS INSTANCE OF symbol_table ④有子程序定义与调用机制,例如: PROCEDURE <子程序名> <属性:内部\外部,编程语言等等> INTERFACE <参数表:I\O等等> pseudocode lines  END 调用时可用:PERFORM <子程序名> USING<参数表>

设计工具 优点:易于实现由PDL到源代码的自动转换。 缺点:不够直观。 6、文件夹: 记录模块开发过程的文档。建议每个开发小组建立自己的文件夹。

工具 项目名称: 模块名称: 开发人员: 完成日期: 模块简述:

工具的使用 设计工具应具有的属性: 选用设计工具,应考虑的问题: 模块性、简明性、便于编辑、机器可读性、 易维护性、强行结构化、自动处理、 数据表示、逻辑验证、编程能力 选用设计工具,应考虑的问题: 是否能导致易于理解和评审的过程表达式? 是否能提高“编码”能力? 是否易于维护?以便设计总能给出正确的程序。

设计规约 分为总体设计和详细设计规约。 总体设计规约主要说明系统的结构设计,是详细设计的基础。 详细设计规约主要说明系统结构中的每个模块的过程设计。

Design specification Design specification Ⅰ. Scope A. System objectives B. Major software requirements C. Design constraints, limits

Design specification Ⅱ. Data design A. Data objects and resultant data structures B. File and database structures 1. External file structure a. Logical structure b. Logical record description c. Access method 2. Global data 3. File and data cross reference

Design specification Ⅲ. Architectural design A. Review of data and control flow B. Derived program structure Ⅳ. Interface design A. Human-machine interface specification B. Human-machine interface design rules C. External interface design 1. Interface to external data 2. Interface to external systems or devices D. Internal interface design rules

Design specification Ⅴ. Procedural Design for each module: A. Processing narrative B. Interface description C. Design language description D. Modules used E. Internal data structures F. Comments/restrictions/limitations

Design specification Ⅵ. Requirements cross-reference Ⅶ. Test provisions A. Test guideline B. Integration strategy C. Special consideration Ⅷ. Special Notes Ⅸ. Appendix

Design Review Design review 设计的复审 软件的设计由管理方面的代表、技术开发方面的代表和其他有关人员(诸如用户、质量保障和软件支持者等)共同进行复审。 对设计进行复审的明显好处是可以比较早地发现软件的缺陷,从而可以使每个缺陷在进行编程、测试和交付之前予以纠正,从而显著地降低随后的开发阶段和维护阶段的费用。 设计复审包括正规的审查、非正规的审查和检查三种方式。

Design Review 设计复审的标准: 易追溯性: 风险 : 实用性: 易维护性 质量 该软件设计包括了软件需求规格说明的所有要求了吗? 该软件的每个部件与某个具体的软件要求有关吗? 风险 : 实现该设计会有很大风险吗?也就是说,没有技术性的突破该设计也能完成吗? 实用性: 该软件对软件要求所确定的问题是一种实用的解决办法吗? 易维护性 该设计是否将导致一个便于维护的系统? 质量 该设计具备一个“好”的软件应有的质量特征吗?

Design Review (Cont.) 接口 技术清晰度 选择方案 限制 某些具体的问题 外部和内部的接口已经规定得足够明确了吗? 该设计的表达方式是否使它便于转化成程序? 选择方案 考虑了其他设计方案了吗?采用什么标准来选择最后方案呢? 限制 软件限制是否现实?与要求相符合吗? 某些具体的问题 该软件便于人控制机器吗?便于测试吗?与其他系统部分相适应吗?有足够的文档吗?

Design Review 正规的复审 通常是为了评价软件的结构和接口; 这种类型的复审的特点在于:设计人员和复审人员都要认真的准备;有相当多的复审者参加,他们对该软件研制项目有不同程度的兴趣; 管理方面和技术方面站得高,视野开阔; 提供正式的设计文档; 由通知到开会的时间间隔至少有两个星期。

Design Review 非正规的复审 所谓非正规的复审指的是从临时通知的碰头会到有关同事参加的比较有组织的复审这整个范围而言的,一般由通知到开会的时间间隔只有二至三天。

小结 体系结构设计 面向数据流的设计 面向数据结构的设计 详细设计 设计规约与评审