结构化概要设计工具之IPO图

简介

IPO是指结构化设计中变换型结构的输入(Input)、加工(Processing)、输出(Output)。IPO图是对每个模块进行概要设计的工具,它是输入加工输出(INPUT PROCESS OUTPUT)图的简称,它是由美国IBM公司发起并完善起来的一种工具。在系统的模块结构图形成过程中,产生了大量的模块,在进行详细设计时开发者应为每一个模块写一份说明。IPO图就是用来说明每个模块的输入、输出数据和数据加工的重要工具。

IPO图是输入/处理/输出图的简称,它是美国IBM公司提出的一种图形工具,能够方便地描绘输入数据、处理数据和输出数据的关系。

IPO图输入-处理-输出图是在层次结构图的基础上推出的一种描述系统结构和模块内部处理功能的工具。在总体设计、详细设计、设计、评审、测试和维护的不同阶段,都可以使用IPO图对设计进行描述。IPO图的最重要的特征是它能够表示输入/输出数据(外部数据和内部数据流程)与软件的过程之间的关系,主要是配合层次图详细说明每个模块内部功能的一种工具。

组成

IPO图使用的基本符号少而简单,因此很容易掌握使用这种工具。它的基本形式是在左边的框中列出有关的输人数据,在中间的框中列出主要的处理,在右边的框中列出产生的输出数据。处理框中列出了处理的顺序,但是用这些基本符号还不足以精确描述执行处理的详细情况。如下例子

IPO图的设计可因人因具体情况而异,例如,下图所示的IPO图。但无论怎样设计它都必须包括输入、处理、输出,以及与之相应的数据库文件在总体结构中的位置等信息。

其实上图也叫IPO表。IPO图其他部分的设计和处理都是很容易的,惟独其中的处理过程描述部分较为困难。对于一些处理过程较为复杂的模块,用自然语言描述其功能十分困难,并且对同一段文字描述,不同的人还可能产生不同的理解(即所谓的二义性问题)。目前用于描述模块内部处理过程还有如下几种方法:结构化英语方法、决策树方法、判定表方法和算法描述语言方法。几种方法各有其长处和不同的适用范围,在实际工作中究竟用哪一种方法,需视具体的情况和设计者的习惯而定。 一个软件可由一张总的层次化模块结构图和若干张具体模块内部展开的IPO图组成。前者描述了整个系统的设计结构及各类模块之间的关系,后者描述了某个特定模块内部的处理过程和输入输出关系。

作用

开发人员不仅可以利用IPO图进行模块设计,而且还可以利用它评价总体设计。用户和管理人员可利用IPO图编写、修改和维护程序。因而,IPO图是系统设计阶段的一种重要文档资料。在IPO图中,输入、输出数据来源于数据词典。局部数据项是指个别模块内部使用的数据,与系统的其它部分无关,仅由本模块定义、存贮和使用。注释是对本模块有关问题作必要的说明。

HIPO图既反映了系统的总体结构,又反映了系统各个模块之间的关系。所以,HIPO图是模块设计中一种重要的图形工具。但是,在HIPO图中每个模块只有名称,没有细节。按照系统设计的目标,还必须有模块的详细描述。模块IPO图就是这样一种图形工具。

改进型IPO图

一种改进的模块IPO图的形式如下表所示,这种图除了描述输入、处理、输出过程外,还包括了某些附加的信息,这些附加的信息非常有利于理解系统及对该模块的实现,它们包括系统的名称、设计人员、设计日期、模块名称、模块在结构图中的编号,调用本模块的模块清单、本模块调用的模块清单以及全局的、局部的数据变量等。

原文地址:https://www.cnblogs.com/yilang/p/12266167.html

时间: 2024-08-30 07:18:12

结构化概要设计工具之IPO图的相关文章

结构化概要设计工具之层次图

简介 又称H图.层次图用来描绘软件的层次结构.很适于在自顶向下设计软件的过程中使用.用此图表示自顶向下分解所得系统的模块层次结构,H图又可称为模块层次图. 组成元素 模块/功能符号:矩形框H图中一个方形的方块代表一个模块,方块内可写出标识此模块的处理功能或模块名. 调用关系符号:连线模块间的调用关系,用联结两模块的直线表示. 例子 原文地址:https://www.cnblogs.com/yilang/p/12264478.html

结构化概要设计工具之结构图

简介 软件结构图是为了反映软件系统中组件之间相互关系和约束的体系结构设计图,称为软件体系结构图更为合适,一般通过分层次或分时间段等方式说明体系结构的各个组成部分的组合关系.在结构化设计方法中,软件结构图主要分为变换型软件结构图和事务型软件结构图两种. 软件结构包括构成系统的设计元素的描述.设计元素之间的交互.设计元素的组合模式以及在这些模式中的约束.一个系统由一组构件以及它们之间的交互关系组成,这种系统本身又可以成为一个更大的系统的组成元素. 组成元素 方框代表一个模块: 方框之间的直线表示模块

PTC.Arbortext.Editor.and.Architect.v5.3.zip结构化创作工具+PTC.Arbortext.IsoDRAW_7.0.M050 技术插图软件

PTC.Arbortext.Editor.and.Architect.v5.3.zip结构化创作工具PTC.ArborText.Editor.v6.0.M010.Win32_64-ISOPTC.Arbortext.IsoDRAW_7.0.M050 技术插图软件 Arbortext Editor 是一个全功能的解决方案,可满足所有产品信息创作需求.全球各地有几万位作者使用 Arbortext Editor 来生成产品信息,例如操作员手册和维护手册.服务指南和电子教学材料,以及其他营销.销售和参考文

什么是结构化数据?什么是半结构化数据?

概述 相对于结构化数据(即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据)而言,不方便用数据库二维逻辑表来表现的数据即称为非结构化数据,包括所有格式的办公文档.文本.图片.XML.HTML.各类报表.图像和音频/视频信息等等. 非结构化数据库是指其字段长度可变,并且每个字段的记录又可以由可重复或不可重复的子字段构成的数据库,用它不仅可以处理结构化数据(如数字.符号等信息)而且更适合处理非结构化数据(全文文本.图象.声音.影视.超媒体等信息). 非结构化WEB数据库主要是针对非结构化

结构化数据(structured),半结构化数据(semi-structured),非结构化数据(unstructured)

概念 结构化数据:即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据. 半结构化数据:介于完全结构化数据(如关系型数据库.面向对象数据库中的数据)和完全无结构的数据(如声音.图像文件等)之间的数据,HTML文档就属于半结构化数据.它一般是自描述的,数据的结构和内容混在一起,没有明显的区分. 非结构化数据:不方便用数据库二维逻辑表来表现的数据即称为非结构化数据,包括所有格式的办公文档.文本.图片.XML.HTML.各类报表.图像和音频/视频信息等等. 数据模型 结构化数据:二维表(关系

深入研究 Win32 结构化异常处理(好多相关文章)

摘要 就像人们常说的那样,Win32 结构化异常处理(SEH)是一个操作系统提供的服务.你能找到的所有关于 SEH 的文档讲的都是针对某个特定编译器的.建立在操作系统层之上的封装库.我将从 SEH 的最基本概念讲起. Matt Pietrek 著董岩 译Victor 转载自 Xfocus 并整理 在所有 Win32 操作系统提供的机制中,使用最广泛的未公开的机制恐怕就要数结构化异常处理(structured exception handling,SEH)了.一提到结构化异常处理,可能就会令人想起

深入研究 Win32 结构化异常处理(作者博客有许多SEH的研究文章)

摘要 就像人们常说的那样,Win32 结构化异常处理(SEH)是一个操作系统提供的服务.你能找到的所有关于 SEH 的文档讲的都是针对某个特定编译器的.建立在操作系统层之上的封装库.我将从 SEH 的最基本概念讲起. Matt Pietrek 著董岩 译Victor 转载自 Xfocus 并整理 在所有 Win32 操作系统提供的机制中,使用最广泛的未公开的机制恐怕就要数结构化异常处理(structured exception handling,SEH)了.一提到结构化异常处理,可能就会令人想起

阿里云OTS(开放结构化数据服务)可视化管理工具的设计和功能介绍

设计初衷 最近一段时间,工作中一直用阿里云的服务器ECS以及SLB.OTS(开放结构化数据服务)等相关的服务,特别是OTS刚刚商业化,官方还没出一种可视化的管理工具,而且我曾跟阿里云OTS的架构师深入交谈过,虽然他们有推出可视化管理工具的想法,但是无奈由于种种原因,目前暂时未提上日程,而自己又在开发中负责OTS源码的修改以适合公司相应的业务逻辑并且其他人也需要调用我封装的OTS相关的服务,为了方便.高效的快速应用ots,所以一个可视化.方便快捷的OTS管理工具的需求迫在眉睫..so--我决定自己

用结构化思维策划一个会议

引言:一个复杂问题进行拆分,最后会形成一个数量巨大的细分问题群.如果没有严格的按照"逐层不漏不重"原则进行,细分出的问题将很难形成合力来完整有效地支撑解决原问题.本文以策划一个会议为例,来了解结构化思维的应用. 本文选自<数源思维:业务导向的数据思维秘籍>. 在对问题进行拆分时,应该采用什么样的逻辑或者结构呢? 当然最直接的办法就是采用前人已经总结好的问题思考框架,比如在战略分析领域有经典的SWOT框架.BCG矩阵或GE矩阵(图1)等. 图1 GE矩阵 在外部环境分析时有波