软件概要设计例子.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件概要设计例子

结构设计示例 教材购销系统的结构设计示例。通过结构化分析,已获得教材购销系统第二层的两张DFD图,即销售子系统DFD图和采购子系统DFD图。试用结构化设计方法,从上述两张DFD图导出教材购销系统的总体结构图,包括初始的SC图和按改进规则进行修改后的最终SC图。 解 按照下图所显示的工作顺序,本例可按照以下的步骤进行。 第一步:细化并修改DFD图。 首先看销售子系统。共有6个加工,其中加工1.3包含登记售书和打印领书单两项功能。为了提高模块独立性,可将它分解为两个加工,让原来的加工1.3(改成1.4)专管登记售书,另添一个加工1.7打印领书单。 再考察图采购子系统。来自书库保管员的“进书通知”,不仅本子系统要用它来修改教材库存(F1)和待购量(F5),还要传送给销售子系统,以便及时通知学生补售。“登记进书”和“补售教材”分属于两个不同的子系统,且补售只能在登记之后进行。为避免补售时在键盘上重复输入“进书通知”的内容,可在系统中增加一个“进书登记表”文件(F7),供两个子系统共享。该文件的组成可以是: 进书登记表 = {书号+书名+数量+登记标志+补售标志} 其中两个标志的初值均为“假”,分别在执行登记和补售功能后改“假”为“真”。 经过上述的细化和修改,即可获得两张新的DFD图,即图6的销售子系统DFD和图7的采购子系统DFD。不言而喻,对它们的父图也要作相应的修改,才能保持一致。为节省篇幅,父图的修改这里就从略了。 第二步:鉴别DFD图的类型。 先考察图6。初看起来,它具有变换型结构。加工1.1与1.6为传入部分,1.3与1.7为传出部分,其余3个(1.2,1.4,1.5)属变换部分。加工1.4(登记售书)和1.5(登记缺书)均不产生输出数据,故不应划入“传出”部分。经过以上的分析,就可以在图上画出两条界线,如图6中的两条虚线所显示。 这样,图6的传入部分就含有两个加工:一个(加工1.1)用于初次出售,产生传入数据流“有效购书单”;一个(加工1.6)用于补售,产生传入数据流“补售书单”。一次售书只能执行一种功能,要么是初售,要么是补售。因此,图6中加工1.2的左方应添加一个 + 号,表明两种传入流不会同时出现,但是在任何一次售书操作中,二者必居其一。 由此可见,图6实际上属于事务型结构。它包括两个动作分支:初售与补售。这两个分支仅有第一个加工不同,其余的加工都是公用的。换句话说,图6在整体上属于事务型结构,但它的两个动作分支都具有变换型结构。 对图7的考察表明,它也是具有两个动作分支的事务型结构。第一个动作分支是“统计缺书”,包含编号2.1与2.2的两个加工;第二个动作分支是“登记进书”,包含一个加工2.3。其中统计缺书分支具有变换型结构,加工2.1是它的传入部分,加工2.2是它的传出部分。它没有中心加工部分,待购教材表(F5)即是这个分支的传入数据,也是它的传出数据。 第三步:画出SC图的框架。 见图8。在本例中,发送分支只画到事务层,它又分两层,相当于两级菜单。 第四步:分解动作分支,补充动作层与细节层。 图9是销售子系统的初始结构图。由于初售与补售的大部分操作是相同的,所以在动作层和细节层都有很多共享模块。此外,应注意: ① 登记缺书模块仅在有教材售缺时才调用,所以在它的调用线始端加了菱形选择符号; ② 为保持画面清楚,图中的调用线两侧暂未标明输入/输出数据,待下一步画最终SC图时再补(参看图14)。 图10显示了采购子系统的初始SC图。 第五步:改进SC图,获得最终的SC图。 为了方便阅读,下面将改进的各部分分片画出,如图11至图13所显示。 (1)改进系统的上层框架。 因本例共只有4种可选的功能,即初售、补售、统计缺书和登记售书,为减少调用层次,两个事务层宜合并为一层,如图11所示。 (2)改进“获得购/售书单”分支 初售时,对购书单要进行两种有效性审查,即①学生是否用这些书;②以前有没有购买过。因此,“获得有效购书单”分支可改进为如图12所示的结构。 图13是“获得补售书单”分支的改进结构。读“进书登记表”文件时,对每一书号,首先检查它的两个标志(登记标志和补售标志),仅当该书号已经登记但尚未补售时,才为它产生补售书单。 (3)为了对改进后的最终SC图有一完整的印象,下面把初售动作分支的所有模块综合画在同一张SC图上,如图14所示。为了便于在计算机上实现,综合时在以下 优化调整: 把“登记售书”模块从由“开发票”模块调用改为由“开领书单”模块调用;把“打印发票”模块从由“初售”模块直接调用改为“开发票”模块的下级模块。其余的三个动作分支(补售、统计缺书和登记进书)以及整个教材购销系统的最终SC图,就不再画出了。 第三部分 软件工程 第22章 软件概要设计

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档