系统分析及设计 笔记整理3_第1页
系统分析及设计 笔记整理3_第2页
系统分析及设计 笔记整理3_第3页
系统分析及设计 笔记整理3_第4页
系统分析及设计 笔记整理3_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、系统分析与设计 笔记整理第三部分 系统设计任务第9章 进入系统设计9.1理解设计要素9.5应用程序结构9.5.1客户/服务器结构(C/S)客户端:向网络中一个或多个服务器请求服务的一个进程、模块、对象或计算机。服务器:在网络中提供服务的一个进程、模块、对象或计算机。优点:1、位置灵活性:可在不影响系统其他部件的情况下移动系统的特定部件,从而可改变组织的规模和物理位置。2、可扩展性:可通过升级或更换核心软件运行的硬件来提高系统性能。3、可维护性:可更新系统中某部件的内部实现而不影响其他部件的工作(如可重写或更换信用验证程序只要新软件仍然使用现有的C/S)。缺点:1、引入C/S协议后所带来的复杂性

2、,及通过网络连接所造成的潜在性能、安全性和可靠性方面的问题。9.5.2三层客户/服务器结构(B/S)三层结构:一种C/S结构,它将应用程序划分为:1、数据层:负责和DB交互的部分。2、业务逻辑层:实现业务规则处理程序的部分。业务逻辑层是应用软件的核心部分,是根据在分析阶段开发出来的需求模型设计的。3、可视层:用户界面的部分,负责接收用户的输入,并将处理结果格式化输出。优点:1、多层可放在同一台计算机上,每层也可由独立的计算机来实现。复杂的层可由多台计算机来实现。2、通过将层的功能分配给多台计算机或者在冗余计算机之间实现负载均衡,可提高系统的处理能力。3、故障时,若服务器负载可从一台计算机转移到

3、另一台计算机(冗余)将增强系统的可靠性。4、具有灵活性,各层间是响应与请求的交互方式,使得层与层间相对独立,各层间的实现细节彼此互不影响。 9.6网络设计9.6.2网络描述网络图:应用层是如何分布在不同的位置和计算机系统之间的模型。(RMO客户支持系统的网络图)部分RMO客户支持系统的活动数据矩阵,更新了数据大小和容量。第10章 传统设计方法10.1采用结构化方法进行应用程序结构的设计模块:计算机程序的可标识部分,用来完成某种具体定义的功能;计算机程序:由一系列模块组成的可执行的实体;系统流程图:描述系统内计算机程序之间所有控制流的图;伪码:与结构化编程类似的语句,它描述了模块的逻辑。10.3

4、系统流程图常用符号:工资系统的系统流程图样例:10.4结构图结构图:用来展示一个计算机程序模块间关系的层次图。数据耦合:在程序调用中模块间传递的单独的数据项。常用符号:计算工资总额模块的简单结构图:10.4.1模块结构图的标准形式1、变换型结构变换型系统由三部分组成:输入、数据加工(中心变换)和输出;功能:将输入的数据经过加工后输出。2、事务型结构事务型系统由三层组成:事务层、操作层和细节层;功能:对接收的事务,按其类型选择某一类事务处理。10.4.2评价结构图的质量1、模块耦合:模块与其他模块的相关程度,较好的耦合是数据耦合;2、模块内聚:模块内部的凝聚程度;最好做到低耦合、高内聚。10.4

5、.3模块结构设计的原则1、尽量降低模块之间的耦合度耦合:指模块与模块之间联系的程度,模块间的耦合度越低,模块的独立性就越高。模块间的耦合形式: 数据耦合 控制耦合 公共耦合 内容耦合2、尽量提高模块的聚合度(内聚)聚合:指模块内部各组成部分之间的联系程度,模块的聚合度越高,其独立性也就越高。模块的聚合度分为七个等级: 功能聚合 顺序聚合 通讯聚合 过程聚合 时间聚合 逻辑聚合 偶然聚合3、模块的分解在分解模块时,主要是按功能进行分解。在分解时既要考虑到模块的聚合度,又要考虑到模块之间的耦合程度,在这两者之间选择一最佳的方案。4、模块的扇入和扇出模块的扇入表达了一个模块与其直属上级模块的关系。扇

6、入系数:指其直接上级模块的个数。模块的扇出表达了一个模块对它的直属下级模块的控制范围。扇出系数:指其直属下级模块的个数。Ø 模块的扇出系数大,说明模块的直属下级模块多,表明它要控制的模块多,要做的事情也就多,它的聚合度可能较低。Ø 故应把模块的直属下级模块控制在较小范围内,即模块的扇出系数不要太大,一般应控制在7以内,若超过7则出错的概率可能会加大。Ø 若一个模块较大而它的扇出系数却很小,一般表明或者是其上级模块仍然很大,或者是其下级模块很大,故要适当地加大扇出系数,简化模块的结构。10.7三层设计10.7.1系统流程图客户订单程序三层结构的系统流程图:10.7.

7、2结构图创建新订单活动三层结构的结构图:第11章 面向对象设计方法:用例实现11.1面向对象设计程序分析和设计的桥梁(P331)11.2设计类和设计类图11.2.1设计类符号构造型:按照模型元素的特征进行归类的一种方式,用符号描述;设计模型中的标准构造型:实体类:(最常见)是问题域类的设计标识符,持久类是程序结束后仍然存在的实体类;边界类:(设计阶段)存在于系统的自动化边界上的类,如输入窗口;控制类:(设计阶段)是在边界类和实体类中间起协调作用的类,在域层和可视层之间起开关控制的作用;数据访问类:是从数据库或许信息的类;11.2.2设计类表示Ø 名字:类名、构造型Ø 属性:

8、属性可见性(+:可见,-:不可见。可见性表示其他对象是否能直接访问这些属性);属性名称;类型表达式(如字符型、字符串型、整型、数字型、货币型或日期型);初值;原型(在花括号内),比如关键字;Ø 方法:方法可见性;方法名;类型表达式(方法返回参数的类型);方法参数列表(输入参数)。方法特征:描述调用该方法所需的所有信息的符号。11.2.3开发初步设计类图1、属性细化;2、导航可见性(设计图与设计类图最大的区别):Ø 一个对象可看到另一个对象并与之交互(导航、可见性)。Ø 一个对象可导航(发送消息)到另一个对象。 导航可见性可是单向也可是双向的。设计类图中,导航可见性

9、用类之间的箭头表示,箭头指向可见的类。例子:Ø Customer类的myOrder变量的值指向某个Order实例。Ø 通常变量myOrder并不直接在设计类中出现。Ø 导航的箭头表示一个类对另一个类有可见的要求。Ø 在该例添加myOrder变量来强调这个概念。11.3实现用例和定义方法顺序图设计11.3.2初步顺序图顺序图用来解释对象间相互关系,并且记录设计决策。系统顺序图用来为一个用例或者一个场景记录系统的输入与输出。捕捉系统与参与者所描述的外部世界之间的相互关系。系统本身被看做是一个叫做系统的对象。系统的输入是参与者传递给系统的消息,输出通常是回复的

10、消息,表示数据正在返回。 输入消息句法:*true/false condition return-value:=message-name(parameter-list)*真/假条件返回值:=消息名(参数列表)输出消息:只须写出参数表而不要加括号。详细的顺序图与SSD(系统顺序图):Ø 详细的顺序图和SSD使用相同的元素;Ø 差别:在详细的顺序图中,系统中所有的内部对象和消息取代了系统;Ø 换言之,对于SSD,系统被看做一个黑箱,不知道其内部处理过程;Ø 设计的目标:打开黑箱,并找到那些在自动化系统中进行的内部处理。“查询可用条目”用例的初步顺序图:这个位

11、于:AvailabilityHandler和Catalog生命线上垂直的矩形框叫做激活生命线。第七章曾讲过,对象的生命线用一条垂直的虚线来表示,一个对象只能处于激活状态或者未激活状态。如果一个对象在执行一个方法,那么它就处于激活状态;反之,如果这个方法完成了,那么它就处于未激活状态。11.3.4为查询可用条目用例创建一个多层次设计1. 设计可视层2. 设计数据访问层10.7 包图将主要部分结构化10.7.1包图设计人员需要将不同层次(可视层、域层和数据访问层)中对象间相互关系的相同点不同点进行记录,则可能根据分布的处理环境不同而分开或者分组。 为此,将每层都表示为一个分离的包。从每个用例的设计

12、类图和交互图里提取信息来创建包图。 10.7.2包图使用的符号包的记号:制表方框。虚箭头:代表依赖关系(单向),箭头的尾部连接着有依赖性的包,而箭头连接着被依赖的包。Ø 依赖关系:包图、类图及交互图中元素之间的一种关系用于说明系统中哪些元素影响其他元素,使得设计人员可以跟踪变化的传递效果。Ø 依赖关系可存于包与包之间,或者包中的类与类之间。(RMO子系统包)10.7.3包图的应用将系统分割成子系统;显示包内的嵌套;通常使用包图来联系类或者其他的系统组成部分,如网络结点。 11.8三层设计的实现问题每层的主要任务:1、可视层类:(1)展示电子表单和报告;(2)捕捉输入,例如单击、滚动和键盘输入等事件;(3)显示数据字段;(4)接收输入数据;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论