08电子商务应用系统设计(结构化方法)2087.pptx

上传人:muj****520 文档编号:87086009 上传时间:2023-04-16 格式:PPTX 页数:132 大小:2.03MB
返回 下载 相关 举报
08电子商务应用系统设计(结构化方法)2087.pptx_第1页
第1页 / 共132页
08电子商务应用系统设计(结构化方法)2087.pptx_第2页
第2页 / 共132页
点击查看更多>>
资源描述

《08电子商务应用系统设计(结构化方法)2087.pptx》由会员分享,可在线阅读,更多相关《08电子商务应用系统设计(结构化方法)2087.pptx(132页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、电子商务系统建电子商务系统建设与管理设与管理电子商务系统设计电子商务系统设计应用系统设计本部分内容本部分内容v应用系统体系结构风格应用系统体系结构风格 v总体设计总体设计模块设计及子系统划分模块设计及子系统划分数据流图导出结构图数据流图导出结构图v详细设计详细设计代码设计代码设计计算机处理过程设计计算机处理过程设计数据库设计数据库设计用户界面设计用户界面设计 v系统设计说明书系统设计说明书电子商务系统的一般体系框架电子商务系统的一般体系框架电子商务应用系统设计电子商务应用系统设计v应用系统中有些可以直接定制购买,应用系统中有些可以直接定制购买,比如比如ERP、SCM、CRM、办公、仓、办公、仓

2、库管理、支付等系统,可以节约成库管理、支付等系统,可以节约成本以及获得高性能的专业软件,有本以及获得高性能的专业软件,有些需要自己开发,如网站系统等些需要自己开发,如网站系统等电子商务应用系统设计电子商务应用系统设计v应用系统设计阶段要根据新系统逻辑应用系统设计阶段要根据新系统逻辑模型建立应用系统的物理模型,也即模型建立应用系统的物理模型,也即根据新系统逻辑功能的要求,根据实根据新系统逻辑功能的要求,根据实际的技术条件、经济条件和社会条件,际的技术条件、经济条件和社会条件,以及系统的规模和复杂程度等实际条以及系统的规模和复杂程度等实际条件,进行若干具体设计,确定应用系件,进行若干具体设计,确定

3、应用系统的实施方案,解决系统统的实施方案,解决系统“怎么做怎么做”的问题。的问题。v物理模型给出处理功能和数据结构的物理模型给出处理功能和数据结构的实际表示形式实际表示形式应用系统设计基本任务应用系统设计基本任务v应用系统设计基本任务大体包括总体应用系统设计基本任务大体包括总体(概要)设计和详细设计两大部分。(概要)设计和详细设计两大部分。v总体设计是描述应用系统的总体结构,总体设计是描述应用系统的总体结构,其内容有:其内容有:将系统划分成子系统,子系统进将系统划分成子系统,子系统进一步划分成模块一步划分成模块确定每个模块的功能确定每个模块的功能确定模块间调用关系确定模块间调用关系应用系统设计

4、基本任务应用系统设计基本任务v详细设计是为各个具体任务选择适详细设计是为各个具体任务选择适当的技术手段和处理方法,其内容当的技术手段和处理方法,其内容有:有:代码设计;代码设计;处理流程设计;处理流程设计;数据库设计;数据库设计;用户界面设计。用户界面设计。应用系统体系结构风格应用系统体系结构风格v二层二层C/S体系结构:客户机负责信息系统的体系结构:客户机负责信息系统的图形显示、数据录入和业务处理;服务器图形显示、数据录入和业务处理;服务器负责对数据的存储和管理负责对数据的存储和管理客户机客户机数据库数据库服务器服务器请求请求响应响应应用系统体系结构风格应用系统体系结构风格v优点:实现了分布

5、式计算,降低了优点:实现了分布式计算,降低了服务器端的负载,对业务数据的集服务器端的负载,对业务数据的集中式管理中式管理v缺点:缺点:客户端程序设计复杂,程序臃肿客户端程序设计复杂,程序臃肿对硬件要求高,增加开发成本对硬件要求高,增加开发成本软件维护和升级困难软件维护和升级困难难以扩展至大型企业和难以扩展至大型企业和Internet数据安全性不好数据安全性不好应用系统体系结构风格应用系统体系结构风格v三层体系结构(三层体系结构(1)C/S/S:将应用逻辑置:将应用逻辑置于应用服务器上,仅把表示层放在客户机于应用服务器上,仅把表示层放在客户机上,底层是数据库服务器和数据库上,底层是数据库服务器和

6、数据库客户机客户机应用服应用服务器务器数据库数据库服务器服务器数据库数据库应用系统体系结构风格应用系统体系结构风格v三层体系结构(三层体系结构(2)B/W/S:客户端只有浏:客户端只有浏览器,仅负责与用户交互;览器,仅负责与用户交互;Web服务器集成服务器集成了应用系统、应用逻辑和控制;底层是数据了应用系统、应用逻辑和控制;底层是数据库服务器和数据库库服务器和数据库浏览器端浏览器端基于基于Web的的应用服务器应用服务器数据库数据库服务器服务器数据库数据库应用系统体系结构风格应用系统体系结构风格v多层结构:多层结构:将将B/W/S结构中结构中Web应用服务器分应用服务器分为两部分,为两部分,We

7、b服务器和应用服务服务器和应用服务器,分别负责系统的表示逻辑和业器,分别负责系统的表示逻辑和业务逻辑;务逻辑;甚至在应用服务器和数据库服务器甚至在应用服务器和数据库服务器之间加一中间层(事务服务器),之间加一中间层(事务服务器),形成多层结构形成多层结构应用系统体系结构风格应用系统体系结构风格Web服务器服务器Web服务器服务器应用服务器应用服务器应用服务器应用服务器事务服务器事务服务器数据库服务器数据库服务器数据库服务器数据库服务器应用系统体系结构风格应用系统体系结构风格v多层结构的优点:多层结构的优点:可实现高度的可伸缩性。可实现高度的可伸缩性。可增强整个系统的模块化程度,提可增强整个系统

8、的模块化程度,提高系统的灵活性。高系统的灵活性。可以使开发工作在具有不同专长的可以使开发工作在具有不同专长的人员之间进行合理分工。便于分配适合人员之间进行合理分工。便于分配适合的开发人员以完成相应的开发任务。的开发人员以完成相应的开发任务。可以实现高度的代码重用。可以实现高度的代码重用。模块设计与子系统的划分模块设计与子系统的划分v结构化设计原理结构化设计原理自顶向下把一个大系统分解成多个分层次自顶向下把一个大系统分解成多个分层次的、规模比较小的被称之为模块的一些部分;的、规模比较小的被称之为模块的一些部分;系统划分模块是按层次进行,划分工作进系统划分模块是按层次进行,划分工作进行到模块功能都

9、十分简单,并易于修改;行到模块功能都十分简单,并易于修改;模块应尽可能独立,应尽可能减少模块间模块应尽可能独立,应尽可能减少模块间的调用关系和数据交换关系;的调用关系和数据交换关系;模块间的关系应阐明,以便追踪和控制。模块间的关系应阐明,以便追踪和控制。v通过分别实现这些模块的设计,而最终实现整个通过分别实现这些模块的设计,而最终实现整个系统的设计。系统的设计。模块设计与子系统的划分模块设计与子系统的划分v子系统的划分子系统的划分v划分原则:划分原则:子系统要具有相对独立性子系统要具有相对独立性子系统间的数据依赖性要尽量小,要将子系统间的数据依赖性要尽量小,要将联系较多的模块都列入同一子系统内

10、部联系较多的模块都列入同一子系统内部子系统划分应该便于系统分阶段的实现子系统划分应该便于系统分阶段的实现子系统的划分应该考虑设备、信息等资子系统的划分应该考虑设备、信息等资源的充分利用源的充分利用模块设计与子系统的划分模块设计与子系统的划分v功能功能/数据分析数据分析v进行这种划分的有力工具之一就进行这种划分的有力工具之一就是功能数据分析。是功能数据分析。v功能数据分析法是通过功能数据分析法是通过U/CU/C矩阵矩阵的建立和分析来实现的。的建立和分析来实现的。模块设计与子系统的划分模块设计与子系统的划分v用用U/C图划分子系统图划分子系统根据企业过程和数据类相对应的关系在根据企业过程和数据类相

11、对应的关系在U/C矩阵中相应的位置填写矩阵中相应的位置填写U或或C,然后分别对,然后分别对数据类和企业过程进行调整,使数据类和企业过程进行调整,使U和和C尽量尽量集中在对角线附近集中在对角线附近按照按照U和和C密度最大原则用小矩形进行组织,密度最大原则用小矩形进行组织,同时使得小矩形能够排列在对角线上同时使得小矩形能够排列在对角线上对小矩形内表示的数据,在开发新系统时应对小矩形内表示的数据,在开发新系统时应放在该子系统所对应的设备上运行,矩形外放在该子系统所对应的设备上运行,矩形外的的U所表示的数据应放在服务器上或通过网所表示的数据应放在服务器上或通过网络进行传输络进行传输UC 矩阵的建立矩阵

12、的建立模块设计与子系统的划分模块设计与子系统的划分表上移动作业过程表上移动作业过程模块设计与子系统的划分模块设计与子系统的划分系统功能划分系统功能划分v系统逻辑功能的划分:系统逻辑功能的划分:在求解后的在求解后的U UC C 矩阵中划出一个个矩阵中划出一个个的方块;的方块;每一个小方块即为一个子系统。每一个小方块即为一个子系统。v划分时应注意:划分时应注意:沿对角线一个接一个地画,既不能沿对角线一个接一个地画,既不能重叠,又不能漏掉任何一个数据和功重叠,又不能漏掉任何一个数据和功能;能;小方块的划分是任意的,但必须将小方块的划分是任意的,但必须将所有的所有的“C”“C”元素都包含在小方块元素都

13、包含在小方块内。内。子系统划分子系统划分模块设计与子系统的划分模块设计与子系统的划分模块设计与子系统的划分模块设计与子系统的划分v模块设计模块设计模模块块(Module)是是可可以以组组合合、分分解解和和更更换换的的单单元元,是是组组成成系系统统、易易于于处处理理的的基基本本单单位。位。模模块块设设计计主主要要描描述述系系统统的的模模块块结结构构及及模模块块间的联系,它是软件总体设计的主要内容。间的联系,它是软件总体设计的主要内容。模块设计的结果用模块结构图表示。模块设计的结果用模块结构图表示。模块结构图又称层次模块结构图模块结构图又称层次模块结构图模块设计与子系统的划分模块设计与子系统的划分

14、 -模块设计模块设计v模块通常有以下个特点:模块通常有以下个特点:模块具有输入和输出;模块具有输入和输出;具有把输入转换成输出的功能;具有把输入转换成输出的功能;仅供模块引用的内部数据;仅供模块引用的内部数据;用以实现模块功能的程序代码。用以实现模块功能的程序代码。模块结构图的基本符号模块结构图的基本符号模块模块调用调用控制控制数据数据模块设计与子系统的划分模块设计与子系统的划分v模块用矩形框表示,并用模块的名字标模块用矩形框表示,并用模块的名字标记。记。模块设计与子系统的划分模块设计与子系统的划分 模块的调用关系:模块之间用单模块的调用关系:模块之间用单向箭头联结,箭头从调用模块指向向箭头联

15、结,箭头从调用模块指向被调用模块,表示调用模块调用了被调用模块,表示调用模块调用了被调用模块。被调用模块。模块设计与子系统的划分模块设计与子系统的划分通讯通讯:伴随着模块调用而发生的模块间的信伴随着模块调用而发生的模块间的信息交换称为模块间的通讯。息交换称为模块间的通讯。模块间的通讯有两种方式:模块间的通讯有两种方式:数据通讯数据通讯 控制通讯控制通讯 模块间的信息传递:当一个模模块间的信息传递:当一个模块调用另一个模块时,调用模块把块调用另一个模块时,调用模块把数据或控制信息传送给被调用模块,数据或控制信息传送给被调用模块,以使被调用模块能够运行。以使被调用模块能够运行。而被调用模块在执行过

16、程中又而被调用模块在执行过程中又把它产生的数据或控制信息回送给把它产生的数据或控制信息回送给调用模块调用模块模块设计与子系统的划分模块设计与子系统的划分例:“查找成功信号”就是控制信息o查职工档案查职工档案o读人事文件读人事文件o档案数据档案数据o职工号职工号o无此职工无此职工模块设计与子系统的划分模块设计与子系统的划分模块设计与子系统的划分模块设计与子系统的划分o模块结构图可以描述的几个问题模块结构图可以描述的几个问题:o如何将系统划分成一个个模块如何将系统划分成一个个模块o模块间传递什么数据模块间传递什么数据o模块间组成层次的调用关系模块间组成层次的调用关系模块设计与子系统的划分模块设计与

17、子系统的划分 模块间的调用关系有以下三种:模块间的调用关系有以下三种:直接调用直接调用 条件调用条件调用 循环调用循环调用模块设计与子系统的划分模块设计与子系统的划分直接调用:直接调用:最简单的调用关系,指一个模块无条最简单的调用关系,指一个模块无条件地调用另一个模块。件地调用另一个模块。A AB BC C模块设计与子系统的划分模块设计与子系统的划分条件调用:也称为选择调用。如果一个模条件调用:也称为选择调用。如果一个模块是否调用另一个模块取决于调用模块块是否调用另一个模块取决于调用模块内部的某个条件,则把这种调用称为条内部的某个条件,则把这种调用称为条件调用。用菱形符号件调用。用菱形符号 表

18、示,其含义是:表示,其含义是:根据条件满足情况决定调用哪一个模块。根据条件满足情况决定调用哪一个模块。A BCD模块设计与子系统的划分模块设计与子系统的划分循环调用:也称为重复调用。如果一个循环调用:也称为重复调用。如果一个模块内部存在一个循环过程,每次循环模块内部存在一个循环过程,每次循环中均需调用一个或几个下属模块,则称中均需调用一个或几个下属模块,则称这种调用为循环调用或重复调用。用符这种调用为循环调用或重复调用。用符号号 表示,含义是:上层模块对下层表示,含义是:上层模块对下层模块的多次反复的调用。模块的多次反复的调用。MABC模块设计与子系统的划分模块设计与子系统的划分v聚合聚合v聚

19、合是用于衡量模块内部各个组成部分聚合是用于衡量模块内部各个组成部分彼此结合的紧密程度的指标。彼此结合的紧密程度的指标。v模块的聚合方式,一般可分为七种,不模块的聚合方式,一般可分为七种,不同聚合方式其聚合度不同:同聚合方式其聚合度不同:模块设计与子系统的划分模块设计与子系统的划分-聚聚合合v 功能聚合功能聚合v 顺序聚合顺序聚合v 通讯聚合通讯聚合v 过程聚合过程聚合v 时间聚合时间聚合v 逻辑聚合逻辑聚合v 偶然聚合偶然聚合o尽量使用尽量使用o尽量避免使用尽量避免使用模块设计与子系统的划分模块设计与子系统的划分-聚聚合合v功能聚合功能聚合指一个模块内部的各个组成部分的处指一个模块内部的各个组

20、成部分的处理功能全部为执行同一个功能而存在,理功能全部为执行同一个功能而存在,并且只执行一个功能。如:求平方根并且只执行一个功能。如:求平方根模块模块功能聚合模块的优点是与其它模块联功能聚合模块的优点是与其它模块联系低,易修改和维护,故其聚合度高系低,易修改和维护,故其聚合度高最理想的聚合方式,独立性最强。最理想的聚合方式,独立性最强。模块设计与子系统的划分模块设计与子系统的划分-聚聚合合顺序聚合:如果一个模块内部各个顺序聚合:如果一个模块内部各个组成部分执行几个处理功能组成部分执行几个处理功能,且一且一个处理功能所产生的输出数据直接个处理功能所产生的输出数据直接成为下一个处理功能的输入数据成

21、为下一个处理功能的输入数据,则该种聚合为顺序聚合。则该种聚合为顺序聚合。o合同输入合同输入o汇总汇总 一个顺序聚合模块一个顺序聚合模块,它先执行它先执行合同输入功能合同输入功能,然后再执行合同汇然后再执行合同汇总功能总功能,而且前者的输出正是后者而且前者的输出正是后者的输入。的输入。模块设计与子系统的划分模块设计与子系统的划分-聚聚合合通讯聚合:指一个模块内部各个组通讯聚合:指一个模块内部各个组成部分执行的处理功能,都使用相成部分执行的处理功能,都使用相同的输入数据或产生相同的输出数同的输入数据或产生相同的输出数据据,且其中各个处理功能是无序的。且其中各个处理功能是无序的。配件处理配件处理配件

22、配件编号编号库存量库存量牌价牌价 使用相同的输入数据使用相同的输入数据,即即配件编号配件编号,分别完成两个处分别完成两个处理功能理功能,一是按配件编号检一是按配件编号检索获得配件牌价索获得配件牌价;另一个是另一个是按配件编号检索获得该配按配件编号检索获得该配件的当前库存量。件的当前库存量。模块设计与子系统的划分模块设计与子系统的划分-聚合聚合过程聚合:如果一个模块过程聚合:如果一个模块内部各个组成部分的处内部各个组成部分的处理功能各不相同理功能各不相同,彼此也彼此也没有什么关系没有什么关系,但它们都但它们都受同一个控制流支配受同一个控制流支配,决决定它们的执行次序定它们的执行次序,则该则该种聚

23、合为过程聚合。种聚合为过程聚合。在该种聚合模块中在该种聚合模块中,效率效率是唯一重要的是唯一重要的,这种次序可这种次序可能是顺序、判断或循环能是顺序、判断或循环。模块设计与子系统的划分模块设计与子系统的划分-聚聚合合时间聚合:如果一个模块内各个组成时间聚合:如果一个模块内各个组成部分的处理功能和时间有关,则称部分的处理功能和时间有关,则称该种聚合为时间聚合。该种聚合为时间聚合。例:例:初始化模块是典型的时间聚合模块初始化模块是典型的时间聚合模块 初始模块要为各种变量赋初值,并同时初始模块要为各种变量赋初值,并同时打开若干个文件。打开若干个文件。模块设计与子系统的划分模块设计与子系统的划分-聚聚

24、合合逻辑聚合:如果一个模块内部各个逻辑聚合:如果一个模块内部各个组成部分的处理功能彼此无关,组成部分的处理功能彼此无关,但处理逻辑相同但处理逻辑相同,则称该种聚合为则称该种聚合为逻辑聚合。逻辑聚合。例:例:将所有的输入操作:读磁带文件、将所有的输入操作:读磁带文件、读磁盘文件、接收键盘输入都放在一读磁盘文件、接收键盘输入都放在一个模块中。个模块中。模块设计与子系统的划分模块设计与子系统的划分-聚聚合合例例:A、B、C均为输出报表模块均为输出报表模块,即从逻辑上即从逻辑上讲它们是功能类似讲它们是功能类似,将它们组合到一个模块中将它们组合到一个模块中,则为逻辑组合。在调用逻辑组合的模块时则为逻辑组

25、合。在调用逻辑组合的模块时,必必须知道如何调用模块内部的某一报表模块。须知道如何调用模块内部的某一报表模块。逻辑组合模块和其他模块之间有相当复杂的逻辑组合模块和其他模块之间有相当复杂的块间耦合块间耦合,其修改性差其修改性差,维护困难。维护困难。模块设计与子系统的划分模块设计与子系统的划分-聚聚合合偶然聚合:机械聚合。如果一个模块偶然聚合:机械聚合。如果一个模块的构成是由若干个毫无关系的功能的构成是由若干个毫无关系的功能偶然组合在一起的偶然组合在一起的,则称该种聚合为则称该种聚合为偶然聚合。偶然聚合。聚合度最低聚合度最低,可修改性最差。可修改性最差。c 模块聚合模块聚合功能功能聚合聚合顺序顺序聚

26、合聚合通信通信聚合聚合过程过程聚合聚合时间时间聚合聚合逻辑逻辑聚合聚合偶然偶然聚合聚合强强弱弱模块独立性模块独立性高高聚合性聚合性低低o在模块设计时,应尽量使模块成为功能聚在模块设计时,应尽量使模块成为功能聚合模块,避免偶然聚合模块。合模块,避免偶然聚合模块。功能功能聚合聚合顺序顺序聚合聚合通信通信聚合聚合过程过程聚合聚合时间时间聚合聚合逻辑逻辑聚合聚合偶然偶然聚合聚合强强弱弱模块独立性模块独立性高高聚合性聚合性低低模块设计与子系统的划分模块设计与子系统的划分-耦耦合合v耦合是用来衡量一个系统内模块之耦合是用来衡量一个系统内模块之间联系程度的指标。模块间的耦合方间联系程度的指标。模块间的耦合方

27、式通常有四种:式通常有四种:数据耦合数据耦合 控制耦合控制耦合 公共环境耦合公共环境耦合 内容耦合内容耦合模块设计与子系统的划分模块设计与子系统的划分-耦耦合合数据耦合:数据耦合:如果两个模块如果两个模块间彼此通过参数交换信息,间彼此通过参数交换信息,而且交换的信息仅仅是数而且交换的信息仅仅是数据,则这种耦合被称为数据,则这种耦合被称为数据耦合。据耦合。是一种理想的耦合,耦是一种理想的耦合,耦合度最低,因为一个模块与合度最低,因为一个模块与其它模块之间的联系全部是其它模块之间的联系全部是数据联系,这个模块就是一数据联系,这个模块就是一个黑箱个黑箱。开发货单开发货单计算金额计算金额单价单价数量数

28、量金额金额模块设计与子系统的划分模块设计与子系统的划分-耦耦合合v控制耦合:控制耦合:如果两个模块间交换的信息如果两个模块间交换的信息除了传递数据信息外,还除了传递数据信息外,还包括控制信息,包括控制信息,则这种耦合被称为控制耦合。则这种耦合被称为控制耦合。v此种耦合是中等程度耦合。此种耦合是中等程度耦合。模块设计与子系统的划分模块设计与子系统的划分-耦耦合合公共耦合:如果两个公共耦合:如果两个模块或多个模块都通模块或多个模块都通过同一个公共数据环过同一个公共数据环境相互作用时,则这境相互作用时,则这种耦合被称为公共耦种耦合被称为公共耦合。合。公共数据环境可公共数据环境可以是全程变量,内存的以

29、是全程变量,内存的公共覆盖区,任何存储公共覆盖区,任何存储介质上的文件等。介质上的文件等。模块设计与子系统的划分模块设计与子系统的划分-耦合耦合内容耦合:内容耦合:如果一个模块的执行需要另一个模块如果一个模块的执行需要另一个模块的内部信息(的内部信息(程序或内部数据程序或内部数据)支持,则这种耦支持,则这种耦合被称为内容耦合。该耦合方式的耦合度最高。合被称为内容耦合。该耦合方式的耦合度最高。内容耦合的两个模块间是病态联结内容耦合的两个模块间是病态联结,在修改其中在修改其中一个模块时一个模块时,将直接影响到另一个模块将直接影响到另一个模块,产生波产生波动现象动现象,影响整个系统。因此影响整个系统

30、。因此,在系统设计时在系统设计时,应应完全避免内容耦合。完全避免内容耦合。例如:例如:一个模块访问另一个模块内部的数据;一个模块访问另一个模块内部的数据;一个模块调用另一个模块的部分程序代码;一个模块调用另一个模块的部分程序代码;c 模块耦合模块耦合低低耦合性耦合性高高弱弱强强模块独立性模块独立性在模块设计时,应尽量使用数据耦合,少用在模块设计时,应尽量使用数据耦合,少用控制耦合,限制公共环境耦合的范围,完全控制耦合,限制公共环境耦合的范围,完全不用内容耦合不用内容耦合数据耦合数据耦合控制耦合控制耦合公共耦合公共耦合内容耦合内容耦合模块设计与子系统的划分模块设计与子系统的划分-耦耦合合降低模块

31、间的耦合度的好处:降低模块间的耦合度的好处:耦合度越低,模块间相互影响就越耦合度越低,模块间相互影响就越小,产生连锁反应的概率就越低;小,产生连锁反应的概率就越低;耦合度越低,可以使修改范围控制耦合度越低,可以使修改范围控制在最小限度;在最小限度;一个模块修改时对系统其它部分正一个模块修改时对系统其它部分正常运行的影响小。常运行的影响小。模块的聚合度和耦合度模块的聚合度和耦合度v模块的聚合度和耦合度成反方向模块的聚合度和耦合度成反方向变化,即高聚合能带来低耦合,变化,即高聚合能带来低耦合,高耦合则将导致低聚合。高耦合则将导致低聚合。模块设计的原则模块设计的原则v模块设计的经验原则有以下几点模块

32、设计的经验原则有以下几点:模块的独立性原则模块的独立性原则 模块与模块之间没有过多的交互模块与模块之间没有过多的交互作用作用 模块的独立性原则要求将模块设模块的独立性原则要求将模块设计成高聚合、低耦合。计成高聚合、低耦合。模块设计的原则模块设计的原则v(2)(2)模块规模大小适中原则模块规模大小适中原则该原则该原则要求在划分模块时,模块规模既要求在划分模块时,模块规模既不可太大,也不可太小。不可太大,也不可太小。v另外模块的规模与开发成本有关。另外模块的规模与开发成本有关。当系统规模一定时,单个模块的成本与当系统规模一定时,单个模块的成本与系统中所有模块数成反方向变化,而模系统中所有模块数成反

33、方向变化,而模块的接口成本与模块数成正方向变化块的接口成本与模块数成正方向变化 模块设计时要使系统模块的总成本最低模块设计时要使系统模块的总成本最低模块与成本模块与成本成本模块数开发成本/模块接口成本/模块系统总成本模块设计的原则模块设计的原则v模块作用域与控制域适当原则模块作用域与控制域适当原则 模块的控制域是模块所能调用模块的控制域是模块所能调用的下属模块及其本身所构成的集的下属模块及其本身所构成的集合,下属模块包含直接下属模块合,下属模块包含直接下属模块及间接下属模块。及间接下属模块。模块的作用域是指该模块中的模块的作用域是指该模块中的处理影响到的所有其它模块的集处理影响到的所有其它模块

34、的集合。合。好模块应满足的要求:好模块应满足的要求:p对于任何一个具有处理功能的模块对于任何一个具有处理功能的模块,其其处理影响范围都应当是它控制范围的一处理影响范围都应当是它控制范围的一个子集;个子集;p最理想的处理影响范围是由处理所在模最理想的处理影响范围是由处理所在模块及其直接下层模块组成。块及其直接下层模块组成。以上原则主要是为保障系统的可维护性。以上原则主要是为保障系统的可维护性。模块设计的原则模块设计的原则v系统的深度与宽度适当原则系统的深度与宽度适当原则 深度是系统划分出的层数,宽深度是系统划分出的层数,宽度是系统中同层次上所包括的模度是系统中同层次上所包括的模块数。块数。深度和

35、宽度之间应有一定的比例深度和宽度之间应有一定的比例关系,即深度和宽度均要适当。关系,即深度和宽度均要适当。模块设计的原则模块设计的原则v模块的扇入与扇出原则模块的扇入与扇出原则v模块的扇出数是指一个模块拥有的直模块的扇出数是指一个模块拥有的直属下级模块的个数。属下级模块的个数。v模块的扇入数是指一个模块的直接上模块的扇入数是指一个模块的直接上级模块的个数。级模块的个数。v在设计中,一般要把模块的扇出数控在设计中,一般要把模块的扇出数控制在合适范围内。制在合适范围内。v在设计中,可以加大模块的扇入数。在设计中,可以加大模块的扇入数。但不能违背模块独立性原则但不能违背模块独立性原则数据流图导出结构

36、图数据流图导出结构图v面向数据流程的设计方法把数据面向数据流程的设计方法把数据流程映射成系统内部模块结构和流程映射成系统内部模块结构和相互关系。相互关系。v数据流图有两种典型的结构:变数据流图有两种典型的结构:变换型结构和事务型结构。换型结构和事务型结构。v这两种结构可以分别通过变换分这两种结构可以分别通过变换分析和事务分析方法导出标准形式析和事务分析方法导出标准形式的结构图。的结构图。变换分析变换分析v变换型结构可以明显地把数据流变换型结构可以明显地把数据流图分成逻辑输入、主加工和逻辑图分成逻辑输入、主加工和逻辑输出。输出。v变换分析即是把变换型数据流图变换分析即是把变换型数据流图映射出模块

37、结构图的过程。映射出模块结构图的过程。变换分析的一般形式变换分析的一般形式变换分析变换分析v变换分析方法由以下四步组成:变换分析方法由以下四步组成:获取数据流图;获取数据流图;区分逻辑输入、逻辑输出和中心区分逻辑输入、逻辑输出和中心变换部分;变换部分;进行一级分解,设计上层模块;进行一级分解,设计上层模块;进行二级分解,设计输入、输出进行二级分解,设计输入、输出和中心变换部分的中、下层模块。和中心变换部分的中、下层模块。第一级分析的方法第一级分析的方法MInputOutputProcess第二级分析的方法第二级分析的方法例例变换分析变换分析例例变换分析变换分析例例变换分析变换分析事务分析事务分

38、析v事务是指流入系统并引起一组处事务是指流入系统并引起一组处理动作的一组数据或事件。理动作的一组数据或事件。v事务分析即是用事务型结构的数事务分析即是用事务型结构的数据流图映射出模块结构图的过程。据流图映射出模块结构图的过程。事务型结构的数据流的特征事务型结构的数据流的特征v事务型结构的数据流的特征是:事务型结构的数据流的特征是:数据流发散,存在有事务中心。数据流发散,存在有事务中心。v事务(单个数据项)沿传入路径事务(单个数据项)沿传入路径进入系统,事务中心根据数据项进入系统,事务中心根据数据项计值结果从若干动作路径中选择计值结果从若干动作路径中选择一条继续执行。一条继续执行。事务中心事务中

39、心MIIISABCIIISBAC事务分析事务分析事务分析事务分析v事务分析如变换分析一样,也是采用自事务分析如变换分析一样,也是采用自顶向下、逐步分解的方法,即顶向下、逐步分解的方法,即先设计主模块先设计主模块再为每一个事务设计一个事务处理模块再为每一个事务设计一个事务处理模块然后,为每个事务处理模块再设计下层的然后,为每个事务处理模块再设计下层的处理模块处理模块最后是为处理模块设计下层的细节模块最后是为处理模块设计下层的细节模块数据流图层次的转换数据流图层次的转换例例事务分析事务分析例例事务分析事务分析混合型混合型v事实上,一个大的系统一般是变换型事实上,一个大的系统一般是变换型结构和事务型

40、结构的混合体,往往需结构和事务型结构的混合体,往往需要同时采用变换分析和事务分析。通要同时采用变换分析和事务分析。通常是以变换分析为主,事务分析为辅常是以变换分析为主,事务分析为辅进行设计。进行设计。代码设计代码设计v代码是用来表示事务、属性、状态代码是用来表示事务、属性、状态等的一组有序的符号,它应易于计算等的一组有序的符号,它应易于计算机和人识别与处理。机和人识别与处理。v编码就是用数字或字母代表事物。编码就是用数字或字母代表事物。代码及其作用代码及其作用v代码意义代码意义v代码通常用数字、字母和某些特代码通常用数字、字母和某些特殊符号(如)及其组合表示,殊符号(如)及其组合表示,是把较长

41、的、用自然语言表达的是把较长的、用自然语言表达的实体或属性概括成适合于计算机实体或属性概括成适合于计算机处理的比较简单的字符串处理的比较简单的字符串代码及其作用代码及其作用v代码的作用主要有两个:代码的作用主要有两个:v识别:这是代码最主要的功能,识别:这是代码最主要的功能,用来标识客观实体或属性,是识别用来标识客观实体或属性,是识别对象的唯一标识。对象的唯一标识。v分类:即按照一定规则进行分分类:即按照一定规则进行分类。类。代码设计的原则代码设计的原则v必须保证有足够的容量必须保证有足够的容量v唯一性唯一性v可扩充性可扩充性v简单性简单性v规范性规范性v便于记忆和使用便于记忆和使用代码的分类

42、代码的分类v顺序码顺序码v以数字的某种顺序形式编码以数字的某种顺序形式编码如:票据编号如:票据编号代码的分类代码的分类v数字码数字码即以纯数字符号形式编码。即以纯数字符号形式编码。常用的有区间码和层次码。常用的有区间码和层次码。区间码:将顺序码分成若干区段,每一区区间码:将顺序码分成若干区段,每一区段代表编码对象的部分属性。如:身份证号段代表编码对象的部分属性。如:身份证号层次码:层次码:以编码对象的从属层次关系为排以编码对象的从属层次关系为排列顺序的编码。代码分为若干层,并与对象列顺序的编码。代码分为若干层,并与对象的分类层次对应。如:邮编,学号,职工编的分类层次对应。如:邮编,学号,职工编

43、号号代码的分类代码的分类v字符码字符码即以纯字符形式编码(英文、汉语即以纯字符形式编码(英文、汉语拼音等)。拼音等)。这类编码常出现在我们程序设计中这类编码常出现在我们程序设计中的字段名、变量名编码。的字段名、变量名编码。这种编码优点是可辅助记忆,缺点这种编码优点是可辅助记忆,缺点是校对不易,不易反映分类的结构。是校对不易,不易反映分类的结构。代码的分类代码的分类v混合码混合码即以数字和字符混合形式编码。即以数字和字符混合形式编码。例如例如 GBxxxx GBxxxx表示国际标准的某类编码,表示国际标准的某类编码,IEEE802XIEEE802X表示某类网络协议标准名称表示某类网络协议标准名称

44、的编码。的编码。所有的汽车牌照编号,都是混合码。所有的汽车牌照编号,都是混合码。优点是易于识别,易于表现对象的系优点是易于识别,易于表现对象的系列性,缺点是不易校对。列性,缺点是不易校对。代码设计可按下列步骤进行代码设计可按下列步骤进行v代码设计步骤:代码设计步骤:确定代码对象确定代码对象确定代码特征确定代码特征考查是否已有相应的标准代码考查是否已有相应的标准代码决定代码种类决定代码种类决定代码的位数决定代码的位数编写代码表编写代码表代码设计举例代码设计举例v部门码部门码v通常用通常用2 2位,可以采用顺序码,从位,可以采用顺序码,从“01”“01”开始,按部门依次编码。开始,按部门依次编码。

45、代码设计举例代码设计举例v职工码职工码可以采用顺序码,也可以采用层可以采用顺序码,也可以采用层次码,位数根据单位职工人数及管次码,位数根据单位职工人数及管理要求决定。理要求决定。如采用如采用5 5位,头两位代表职工所在位,头两位代表职工所在部门,后部门,后3 3位代表职工所在部门中位代表职工所在部门中的顺序号。如职工码中还要表示其的顺序号。如职工码中还要表示其它属性,可以扩充代码位数。它属性,可以扩充代码位数。代码设计举例代码设计举例v产品码产品码v可采用数字码等。可采用数字码等。代码设计举例代码设计举例v凭证号编码凭证号编码采用顺序码,长度为采用顺序码,长度为 4 4位或位或 5 5位:位:

46、“XXXX”XXXX”或或“XXXXX”“XXXXX”。第一位表示凭证类别,如用第一位表示凭证类别,如用“1“1、2 2、3 3、4”4”分别表示现金、银行存款、转账和机分别表示现金、银行存款、转账和机器自动转账凭证。器自动转账凭证。后后 3 3位为该类凭证的顺序码,例中位为该类凭证的顺序码,例中“”为分隔符。为分隔符。代码设计举例代码设计举例v支票号、合同号、发票号、领料单号支票号、合同号、发票号、领料单号码码一般采用顺序码,位数由具体的业务量一般采用顺序码,位数由具体的业务量而定,以方便管理为宜。而定,以方便管理为宜。计算机处理过程的设计计算机处理过程的设计p处理过程设计是用一种合适的表处

47、理过程设计是用一种合适的表达方法来描述每个模块的执行过程。达方法来描述每个模块的执行过程。p应达到程序员根据描述即可编出应达到程序员根据描述即可编出程序代码。程序代码。计算机处理过程的设计计算机处理过程的设计v描述程序处理逻辑结构的工具称描述程序处理逻辑结构的工具称为过程设计的工具。为过程设计的工具。v过程设计工具分为图形、表格和过程设计工具分为图形、表格和语言三类,如传统的流程图、盒语言三类,如传统的流程图、盒图、判定树、判定表及过程设计图、判定树、判定表及过程设计语言(语言(PDLPDL)(Program Design(Program Design Language)Language)。计

48、算机处理过程的设计计算机处理过程的设计v1.程序程序流程图流程图(flow chartflow chart)又称)又称程序框图程序框图,包括三种基本成分:包括三种基本成分:加工步骤,用方框表示;加工步骤,用方框表示;逻辑条件,用菱形表示;逻辑条件,用菱形表示;控制流,用箭头表示。控制流,用箭头表示。流程图的优点流程图的优点v流程图的优点是:流程图的优点是:直观、形象,容易理解,便于初学直观、形象,容易理解,便于初学者掌握。者掌握。v流程图的缺点如下:流程图的缺点如下:描述控制的箭头过于灵活。描述控制的箭头过于灵活。流程图只描述执行过程而不能描述流程图只描述执行过程而不能描述有关数据。有关数据。

49、计算机处理过程的设计计算机处理过程的设计v5.5.2盒图(盒图(N-S图)图)是为支持结是为支持结构化程序而产生的一种描述工具。构化程序而产生的一种描述工具。1973年,年,Nassi和和Shneiderman提出用方框图(提出用方框图(block diagram)来代替传统的流程图)来代替传统的流程图 简称为简称为NS图(图(NS chart)又又称为称为NSNS图。图。计算机处理过程的设计计算机处理过程的设计v盒图五种基本控制结构由五种图形盒图五种基本控制结构由五种图形构件表示。构件表示。计算机处理过程的设计计算机处理过程的设计:N-S图的嵌套定义形式图的嵌套定义形式v例:例:用用N-S图

50、表示求和算法见下图:图表示求和算法见下图:计算机处理过程的设计计算机处理过程的设计vN-S图特点图特点每个处理步骤用一个盒子表示。每个处理步骤用一个盒子表示。一个特定控制结构的作用域明确。一个特定控制结构的作用域明确。局部和全局数据的作用域可以很容易地局部和全局数据的作用域可以很容易地被确定。被确定。很容易描述嵌套关系,也可以用来描述很容易描述嵌套关系,也可以用来描述模块的层次关系。模块的层次关系。盒不允许随意转移控制,保证了程序的盒不允许随意转移控制,保证了程序的良好结构。良好结构。计算机处理过程的设计计算机处理过程的设计vN-S图图不足:不足:当程序内嵌套的层数增多时,内层的当程序内嵌套的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 一级建造

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁