欢迎来到天天文库
浏览记录
ID:49377452
大小:115.00 KB
页数:34页
时间:2020-02-05
《软件工程第七章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第7章系统设计:贯彻设计目标7.2系统设计活动概述系统设计设计目标标识子系统分解子系统分解求精——实现设计目标开发人员在分解系统时需要面对整个系统范围的问题。特别需要解决的问题:软/硬件映射系统的硬件配置是什么?哪个节点负责哪个功能?节点间的通信如何实现?哪些服务是用已有的软件构件实现的?这些构件如何封装?软硬件映射问题经常会导致从一个节点将数据传送到另一个节点的用于处理并发性和可靠性的附加子系统的定义。商业外购构件能使开发人员更加经济地实现复杂的服务。商业外购构件例:用户接口包和数据库管理系统。数据管理哪些数据需要是持久的?把这些
2、持久的数据存储在什么地方?如何访问它们?持久的数据在系统的许多不同方面都是瓶颈:系统的很多功能都与创建和处理持久数据有关。因此,访问数据要快速而可靠。影响选择数据库管理系统和管理持久数据的附加子系统。访问控制谁可以访问哪个数据?访问控制能否动态变化?如何定义/定义并实现访问控制?控制流系统的操作顺序如何?是由事件驱动的吗?系统能同时处理一个以上的用户的文互吗?控制流的选择会对子系统的接口产生影响。如果选择了事件驱动的控制流,子系统就会提供事件处理器。如果选择线程,则子系统需要保证临界区的互斥。边界条件系统如何初始化?系统如何关闭?异
3、常情况如何检测和处理?初始化、关闭和异常处理对所有子系统的接口都有影响。系统设计活动每个活动解决上面描述过的一个问题。解决任何一个上述问题都会引起子系统分解中的变化并产生新的问题。7.3UML配置图UML配置图:用来描述运行时构件和硬件节点间的关系。构件是为其他构件或执行者提供服务的独立实体。某个Web服务器是为web浏览器提供服务的构件。IExplorer之类的Web浏览器是为用户提供服务的构件。一个分布式系统可以由许多交互的运行构件组成。UML配置图表示:该配置图主要集中于构件对节点的分配位置,并提供每个构件的高层视图配置图中的
4、构件可以提供构件的接口信息和含有的类信息。web服务器组件为浏览器提供两个接口:浏览器通过GET接口访问统一资源定位器URL所标识的文件内容通过POST发送表单GETPOSTHttpRequestURLFileWebServerDBQueryDBResult系统设计活动7.4.1将于系统映射到处理器和构件1、选择硬件配置:包括选择将系统建造在怎样的虚拟机上。虚拟机包括操作系统和所有必要的软件构件,比如数据库管理系统和通信包。虚拟机的选择缩小了系统和系统运行的硬件平台之间的距离。构件提供的功能越多,则开发的工作越少。但是虚拟机的选择要
5、受限于项目启动前拥有硬件的顾客。虚拟机的选择可能还要考虑费用:在有些情况下,很难估计构造一个构件的费用是否比购买一个构件的费用要高。MyTrip系统硬件配置选择:RoutingSubsystemPlanningSubsystem:OnBoardComputer:WebServer将对象和子系统分配给节点TripLocationPlanningServiceSegmentCrossingRouteAssistantDirectionDestinationTripProxySegmentProxyPlanningSubsystemMes
6、sageConnectionCommunicationSubsystemRoutingSubsystem7.4.2标识并存储持久性数据持久性数据的生命周期比系统的一次执行周期要长。数据存储的地点以及如何存储会对系统的分解产生影响。例:仓库体系结构,某个子系统完全用来存储数据。数据库管理系统的选择也对全局控制策略和并发管理有影响。例,MyTrip系统PlanningSubsystemMapDBStoreSubsystemTripFileStoreSubsystemRoutingSubsystemCommunicationSubsyst
7、em1、标识持久性对象在分析过程中,标识出的实体对象是候选的持久性数据。例:旅程类及其相关的(路口,目的地,路段)并非所有的实体对象都是持久性的。例:位置类。有些边界对象的属性是持久性的。例:用户界面偏好。——持久对象是在系统关闭后必须要保存的数据。2、选择存储管理策略存储管理策略常常受非功能性需求制约。例:检索对象是否要比较快?是否需要复杂查询?对象会占据大量空间吗(比如是否存储图片)?选择存储管理策略:平面文件关系数据库面向对象数据库存储管理选择的取舍原则比较P203图7-77.4.3定义访问控制在多用户系统中,不同的操作者需要
8、访问不同的功能和数据。比如,每个操作者只能访问他创建的数据,但是系统管理员可以没有限制地访问系统数据和其他用户的数据。分析时,通过将不同的用例与不同的操作者相联系来为这些区别建模。在系统设计时,通过检查对象模型,定义操作者共享哪些对象
此文档下载收益归作者所有