《软件工程-第11章第4节.pptx

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

11.4系统设计

系统设计是问题求解及建立系统的高级策略,它包括系统的分解、系统的固有并发性、子系统分配给硬软件、数据管理、资源协调及软件控制实现等。

11.4.1系统设计过程设计阶段先从高层入手,然后细化。系统设计要决定整体结构及风格,这种结构为后面设计阶段的更详细的策略设计提供了基础。1.系统分解系统中主要的组成部分称为子系统,子系统既不是一个对象也不是一个功能,而是类、关联、操作、事件和约束的集合。每次分解的各子系统数目不能太多,最底层子系统称为模块。

11.4.1系统设计过程1)子系统之间的关系子系统之间的关系可以分为“客户/服务器”关系和同等关系两类。在“客户/服务器”关系中,客户调用服务器,执行了某些服务,返回结果。客户必须了解服务器的接口,但服务器并不知道其他客户的接口,因为所有交互都是由使用服务器接口的客户来驱动的。在同等关系中,各子系统都有可能调用其他子系统,子系统之间的通信不一定紧跟着一个即时响应。同等关系的交互更复杂,因为各子系统相互了解对方的接口。由于存在通信环路,造成理解上的困难,并容易造成不易察觉的设计结果,因此尽可能使用“客户/服务器”关系。

11.4.1系统设计过程2)系统组织从系统到子系统的分解可以组织成水平的层次结构或垂直的块结构。(1)层次结构是真实世界的有序集,上层部分建立在下层的基础上,下层为上层提供了实现的基础,各层上的对象是独立的,而不同层次上的对象常有相互关系。层次结构又分封闭式和开放式。在封闭式结构中,各层只根据其直接的低层来建立,这种方式减少了各层之间的依赖,修改起来更为容易。

11.4.1系统设计过程因为某层次的接口只影响紧跟的下一层,在开放式结构中,层可以使用其任何深度的任何低层的性质。这种方式减少了各层上重新定义操作的需求,但没有遵守信息隐蔽原则,任何对子系统的变更都会影响到更高层的子系统。图11.36典型应用的块图通常问题陈述中只说明了顶层和底层的内容。顶层是目标系统,底层是一些可用资源,如硬件、操作系统及数据库等。两者差别太大,应引入中间层次来弥补不同层次之间的概念差别。

11.4.1系统设计过程(2)块结构是将系统垂直分解成几个独立的或弱耦合的子系统,一个块提供一种类型的服务,运用层次和块的各种可能的组合,可将系统成功地分解成多个子系统,层次可以分块,而块也可以分层。图11.36表示典型应用的块图,涉及交互图形的模拟,大多数的系统要求混合地采用层次和块的结构。

11.4.1系统设计过程2.确定并发性分析模型、现实世界及硬件中的所有对象均是并发的。系统设计的一个重要目标就是确定哪些对象必须是同时动作的对象及哪些对象是互斥的对象,后者可放在一起,综合成单个控制线或任务。3.处理器及任务分配各并发子系统必须分配给单个硬件单元,要么是一个一般的处理器,要么是一个具体的功能单元.必须完成下面的工作:

11.4.1系统设计过程(1)估计性能要求和资源需求。(2)选择实现子系统的硬软件。(3)将软件子系统分配给各处理器以满足性能要求和极小化处理器之间的通信。(4)决定实现各子系统的各物理单元的联结。4.数据存储管理系统中的内部数据存储是子系统和友好性接口之间的清晰分界点。通常各数据存储可以将数据结构、文件及数据库组合在一起,不同数据存储在费用、访问时间、容量及可靠性之间作出折衷考虑。

11.4.1系统设计过程5.全局资源的处理必须确定全局资源,并且制定访问全局资源的策略。全局资源包括物理资源(如处理器、驱动器等)、空间(如盘空间、工作站屏幕等)、逻辑名字(如对象标识符、类名及文件名等)。如果资源是物理对象,则通过建立协议可实现对并发系统的访问,达到自身控制;如果资源是逻辑实体(如对象标识符,在共享环境中有冲突访问的可能,独立的事务可能同时使用同一个对象标识符),则各个全局资源都必须有一个保护对象,由保护对象来控制对该资源的访问。

11.4.1系统设计过程6.选择软件控制机制软件系统中存在外部控制与内部控制。外部控制是系统中对象之间外部事件的事件流,有三种外部事件控制流:过程驱动序列、事件驱动序列及并发序列。所采用的控制风格取决于可用资源和应用中交互的模式。

11.4.1系统设计过程1)过程驱动序列过程驱动的系统中,控制包含在程序代码中,程序要求外部输入并等待该输入,当输入到达后,程序中的控制就开始执行调用。过程驱动控制的主要优点是用传统语言很容易实现,缺点是要求把对象中固有的并发性映射到一个控制流序列中。

11.4.1系统设计过程2)事件驱动序列事件驱动控制系统中,控制放在语言、子系统或操作系统所提供的调度器或监控机制中。应用程序加入到监控机制中,每当

文档评论(0)

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

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

1亿VIP精品文档

相关文档