- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch05如何基于用例描述创建顺序图.pptx
软件工程授课章节:第五章授课内容:需求分析知 识 点:如何基于用例描述创建顺序图回顾:如何展开用例分析将用例表示为顺序图的基本思路上述思路的顺序图表示为什么引入边界类和控制类?为什么引入边界类和控制类?面向对象软件开发方法学的基本思想:通过分属不同类的多个对象之间的协作,完成某项较复杂的任务反对:设置一个庞大的万能对象,独立承担较复杂的任务每个类负责特定的职责边界类:负责与执行者交互,……控制类:负责任务分派、协调,……边界类的职责(详)界面控制输入数据的格式或内容转换输出结果的呈现软件运行过程中界面的变化与切换等;外部接口目标软件系统与外部系统或外部设备之间的信息交换和互操作边界类的职责(续)环境隔离:将目标软件系统与环境软件等进行交互的功能与特性封装于边界类,使目标软件系统的其余部分尽可能地独立于环境软件环境软件示例:操作系统、数据库管理系统、应用服务器中间件为什么隔离?提高目标软件系统的可修改性、可移植性。控制类的职责(详)进一步问题:控制类的对象如何完成任务?作为用例任务的责任承担者,负责协调、控制其他类的对象共同完成用例规定的功能或行为任务分解子任务分派协调(例如,将已完成的子任务的处理结果作为剩余子任务的参数发给这些子任务的承担者)及综合(例如,基于各子任务的处理结果生成最终结果)控制类如何完成任务?如果任务非常简单控制类的对象独立完成如果任务比较复杂:控制类的对象可寻求辅助类、实体类,甚至其他控制类的对象的帮助即,分派任务给他们,综合他们的处理结果,形成最终结果什么是辅助类?辅助类的对象控制类的对象辅助控制类完成子任务的类,例如“PathPlanner”什么是实体类?返回消息(如不强调,可省略)负责保存目标软件系统中具有持久的信息向并向其他类提供信息访问的操作,例如“Path”实体类的特征“内敛”:仅向目标软件系统的其余部分提供读、写信息项内容的操作接口一般不涉及(复杂的)业务逻辑处理小结:表示用例的顺序图的样板如何展开用例分析?让我们再回到月球车控制仿真问题(MCS)MCS的用例图“移动至指定位置”用例的基本交互动作序列1.用户指定目标坐标;系统规划从当前位置到达指定位置的最佳路径;2.系统发出移动指令;在移动完成后,系统指示全景相机拍照留存,2.1 系统判断月球车是否已经移出当前画面,如是,移动画面以保证月球车始终位于当前画面之内;2.2 根据规划路径发出下一步移动指令,如此重复直至到达路径终点。“移动”用例的顺序图表示(第1步)边界类的对象辅助类的对象控制类的对象为什么设置辅助类“PathPlanner”?“移动至指定位置”用例的基本交互动作序列(2)1.用户指定目标坐标;系统规划从当前位置到达指定位置的最佳路径;2.系统发出移动指令;在移动完成后,系统指示全景相机拍照留存,2.1 系统判断月球车是否已经移出当前画面,如是,移动画面以保证月球车始终位于当前画面之内;2.2 根据规划路径发出下一步移动指令,如此重复直至到达路径终点。“移动”用例的顺序图表示(第2步)先调整画面,还是先移动?在分析过程中加深理解并精化需求模型“移动”用例的顺序图表示(第2步)为简化,未标识出WalkEffector与“行动机构”及PanoramaCamera与“全景相机”之间的消息“移动至指定位置”用例的基本交互动作序列(3)1.用户指定目标坐标;系统规划从当前位置到达指定位置的最佳路径;2.系统发出移动指令;在移动完成后,系统指示全景相机拍照留存,2.1 系统判断月球车是否已经移出当前画面,如是,移动画面以保证月球车始终位于当前画面之内;2.2 根据规划路径发出下一步移动指令,如此重复直至到达路径终点。“移动”用例的顺序图表示(第3步)“移动”用例的顺序图表示(顺序图1)在月球车移动过程中允许暂停扩展交互动作序列2a.用户发出暂停指令2a.1月球车暂停2a.2用户提供新的目的地坐标,系统重新规划路径。在用户发出恢复移动的指令后,返回至2。允许暂停的顺序图表示(第1步)为什么设置条件变量“isPaused”?在月球车移动过程中允许暂停扩展交互动作序列2a.用户发出暂停指令2a.1月球车暂停2a.2用户提供新的目的地坐标,系统重新规划路径。在用户发出恢复移动的指令后,返回至2。允许暂停的顺序图表示(第2步)接下来,必须做什么?确保分析模型的一致性!必须相应地修改“移动至指定位置(顺序图1)”MCS的用例图(2)“移动至指定位置[避障]”用例用例名:移动至指定位置[避障]基本交互动作序列:同 移动至指定位置扩展交互动作序列:2a.如果导航相机在近前方1米内发现障碍2a.1 系统重新规划路径,再执行2障碍识别软件如何发现障碍?“移动至指定位置[避障]”用例顺序图表示障碍识别软件如何发现障碍因此,必须再次精化“移动至指定位置(顺序图1)
文档评论(0)