《 管理信息系统》| “朝闻道”知识分享大赛

Thomas Wade 2024-11-08 22:24:10

这是我参加朝闻道知识分享大赛的第 50 篇文章

三、系统设计阶段

总体设计过程

系统总体布局——系统类型                      

系统总体布局——处理方式

总体设计过程:

HIPO图、H图、IPO图

HIPO图是美国IBM公司70年代发展起来的表示软件系统结构的工具。它既可以描述软件总的模块层次结构——H图(层次图),又可以描述每个模块输入/输出数据、处理功能及模块调用的详细情况——IPO图。

HIPO技术包含两个方面的内容: H图,用此图表示自顶向下分解所得系统的模块层次结构,H图又可称为模块层次图。 IPO图(输入—处理—输出图),此图描述分层图中一个模块的输入、输出和处理内容。

总体设计过程

H图:描写叙述软件总的模块层次结构   矩形框表示一个模块,矩形框之间的直线表示模块之间的调用关系,同结构图一样未指明调用顺序。它的设计根据是系统的模块划分,主要由设计者决定。在机房收费系统中。H图能够依照一般用户、操作员、管理员来划分层次。也能够例如以下图来所看到的依照学生管理、用户管理及系统管理来划分。

 IPO图:描写叙述每一个模块输入、输出、处理功能及模块调用的具体情况。  

 IPO图的主体是算法说明部分(数据处理),可採用结构化语言、判定表、判定树,也可用N-S图、问题分析图和过程设计语言等工具进行描写叙述,要准确而简明的描写叙述模块运行的细节。

 

练习 请根据某企业订单处理系统的数据流程图(如下图),应用HIPO图法进行模块层次功能分解。

 参考答案 (1)根据DFD把模块分解为输入、处理、输出三个功能模块,得到总体IPO图。

 (2)根据总体IPO图将各模块逐层进行功能分解,画HIPO图。模块的执行顺序是从上到下,由左向右。

 

 

(3)在HIPO图基础上,绘制低层主要模块的IPO图,作为程序模块结构设计的依据。

 

总体设计原理 ------分治思想

当我们求解某些问题时,由于这些问题要处理的数据相当多,或求解过程相当复杂,使得直接求解法在时间上相当长,或者根本无法直接求出。对于这类问题,我们往往先把它分解成几个子问题,找到求出这几个子问题的解法后,再找到合适的方法,把它们组合形成求整问题的解法。这就是分治策略的基本思想。

模块化

模块:是数据说明、可执行语句等程序对象的集合,它是单独命名的而且可通过名字来访问的。例如,过程、函数、子程序等。 模块化:把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。

人类解决问题的一般规律:

设函数C(x)定义问题x的复杂程度,函数E(x)确定解决问题x需要的工作量(时间)。对于两个问题P1和P2,如果C(P1) > C(P2),显然 E(P1)> E(P2) 根据人类解决一般问题的经验,另一个有趣的规律是C(P1+P2) >C(P1) +C(P2) 就是说,如果一个问题由两个问题P1和P2组合而成,那么它的复杂程度大于分别考虑每个问题时的复杂程度之和。即E(P1+P2) > E(P1)+E(P2)这就是模块化的根据。

如果无限地分割软件,最后为了开发软件而需要的工作量就小得可以忽略了。上述结论不能成立,如图,当模块数目增加时每个模块的规模将减小,开发单个模块需要的成本确实减少了,但是随着模块数目增加,设计模块间接口所需要的工作量也将增加。根据这两个因素。得出了图中的总成本曲线。每个程序都相应地有一个最适当的模块数目M,使得系统的开发成本最小。

 系统分析报告

-----------模块独立性-------------

模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果。 模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。耦合衡量不同模块彼此间互相连接的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。

-------耦合--------

耦合是对一个软件结构内不同模块之间互连程度的度量。在软件设计中应该追求尽可能松散耦合的系统(由于模块间联系简单,发生在一处的错误传播到整个系统的可能性就很小)。

----- 内聚---------

内聚指模块内部各个元素之间彼此结合的紧密程度。内聚和耦合往往密切相关,模块的高内聚通常意味着低耦合。在软件设计时,应该尽量提高模块的内聚程度,使模块内部的各个组成成分都相互关联,使其为了完成一个特定的功能而结合在一起。

 模块结构图的导出

以变换为中心的策略

在数据流程图中找出它的主要功能(即中心变换部分);找出实现该功能所需要的主要输人数据流和经变换产生的主要输出数据流;以中心变换部分为上层模块,以数据传送部分作为下层模块,逐层扩展而产生一个完善的系统结构。

(1)确定数据流程图的中心变换的位置; (2)绘制结构图(包括建立结构图的最高层模块、画出初始结构图、对初始结构图进行优化); (3)为每个模块撰写说明。

 

...全文
145 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,040

社区成员

发帖
与我相关
我的任务
社区描述
中南民族大学CSDN高校俱乐部聚焦校内IT技术爱好者,通过构建系统化的内容和运营体系,旨在将中南民族大学CSDN社区变成校内最大的技术交流沟通平台。
经验分享 高校 湖北省·武汉市
社区管理员
  • c_university_1575
  • WhiteGlint666
  • wzh_scuec
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

欢迎各位加入中南民族大学&&CSDN高校俱乐部社区(官方QQ群:908527260),成为CSDN高校俱乐部的成员具体步骤(必填),填写如下表单,表单链接如下:
人才储备数据库及线上礼品发放表单邀请人吴钟昊:https://ddz.red/CSDN
CSDN高校俱乐部是给大家提供技术分享交流的平台,会不定期的给大家分享CSDN方面的相关比赛以及活动或实习报名链接,希望大家一起努力加油!共同建设中南民族大学良好的技术知识分享社区。

注意:

1.社区成员不得在社区发布违反社会主义核心价值观的言论。

2.社区成员不得在社区内谈及政治敏感话题。

3.该社区为知识分享的平台,可以相互探讨、交流学习经验,尽量不在社区谈论其他无关话题。

试试用AI创作助手写篇文章吧