- 1、本文档共34页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章需求建模流程行为和模式
顺序图 第二种表现行为的方式在UML中称作顺序图,说明事件如何引发一个对象到另一个对象的转移。一旦通过检查用例确认了事件,建模人员就创建了一个顺序图——用时间函数表现事件如何引发流从一个对象到另一个对象。它表现了导致行为从一个类流到另一个类的关键类和事件。 图6-7列举了SafeHome安全功能的部分顺序图。 一旦完成了完整的顺序图,所有导致系统对象之间转移的事件都可以被整理为输入事件集合和输出事件集合。 顺序图 图6-7 SafeHome安全功能的顺序图(部分) 需求建模的模式 软件模式是获取领域知识的一种机制从而遇到新问题时可以反复使用。在某些情况下,领域知识在同一应用领域中用于解决新问题。在另外一些情况下,通过模式获取的领域知识可借助模拟用于完全不同的应用领域。 分析模式的最初创作者没有“创建”模式,但在需求工程工作中发现了模式。一旦发现模式则记载“明确的常见问题:哪种模式适用、规定的解决方案、在实践中使用模式的假设和约束,以及关于模式的某些常见的其他消息,诸如使用模式的动机和驱动力,讨论模式的优缺点,参考在实践应用中某些已知的使用模式的样例”。 需求模式举例:执行器-传感器模式(p122) 作业 P125页 6.4,6.8 第6章 需求建模:流程、行为和模式 主要内容 需求建模策略 面向流程建模 生成行为模型 需求建模的模式 小结 需求建模 面向流程的建模提供了一种如何利用处理功能转换数据对象的表示方法。行为建模描述了系统及其类的状态,以及事件对这些类的影响。基于模式的建模利用现有领域的知识使得需求分析更为容易。 需求建模策略 一种考虑数据和处理的分析建模方法被称作结构化分析,其中数据作为独立实体转换。数据对象建模定义了对象的属性和关系,操作数据对象的处理建模应表明当数据对象在系统内流动时处理如何转换数据。 分析建模的第二种方法称作面向对象的分析,这种方法关注于定义类和影响客户需求的类之间的协作方式。UML和统一过程主要是面向对象的。 面向流程的建模 面向流的数据建模至今仍是广泛使用的分析表达法之一。尽管数据流图及相关的图和信息不是UML的正式组成部分,但是它们可以补充UML图并提供对系统需求和流的补充认识。 DFD采取了系统的输入-处理-输出观点。流入软件的数据对象,经由处理元素转换,最后以结果数据对象的形式流出软件。数据对象由带标记的箭头表示,转换由圆圈(也称作泡泡)表示。DFD使用分层的方式表示,即第一个数据流模型从整体上表现系统,随后的数据流图改进环境图,提供每个后续层增加的细节。 创建数据流模型 数据流图有助于软件工程师开发信息域的模型,并同时开发功能域的模型。当DFD被改进到非常详细的程度时,分析师同时也就完成了系统功能分解。 创建数据流模型 导出数据流图时有一些很有用的简单的指导原则: 第0层的数据流图应将软件或系统描述为一个泡泡 ; 应仔细标记主要的输入和输出; 通过把在下一层表示的候选处理过程、数据对象和数据存储分离,开始求精过程; 应使用有意义的名称标记所有的箭头和泡泡; 当从一个层转到另一个层时要保持信息流连续性; 一次精化一个泡泡。 Safehome安全功能的DFD如图6-1所示 SafeHome安全功能的DFD图 图6-1 SafeHome安全功能的DFD图 创建数据流模型 第0层的DFD现在要扩展到第1层。 有个简单而有效的方法是对描述环境层泡泡的叙述进行“语法分析”,即将第一次需求收集会议中获得的SafeHome处理叙述中的所有名词与动词分离开来。 SafeHome实例[25] 创建数据流模型 这里提到的语法分析,开始形成一种模式。动词是SafeHome处理,它们最终将被表示为后来的DFD中的泡泡;名词是外部实体(方框)、数据或控制对象(箭头)、数据存储(双横线)。通过对任何DFD层次中某个泡泡的处理叙述文字进行语法分析,可以产生许多关于如何精化到下一个层次的有用信息。使用这些信息,第1层DFD如图6-2所示。在第0层和第1层之间要保持信息流的连续性。 SafeHome安全功能的第1层DFD图 图6-2 SafeHome安全功能的第1层DFD图 创建数据流模型 在DFD第1层中表示的处理可以被进一步精化到更低的层次。例如,监测传感器处理可以被精化为如图6-3所示的第2层DFD。在这两层之间保持了信息流的连续性。 DFD的求精持续地进行,直到每个泡泡都执行一个简单的操作,即直至每个泡泡所代表的处理都执行一个功能,并且该功能可以很容易地被程序实现。 精化监测传感器处理的第2层DFD图 图6-3 精化监测传感器处理的第2层DFD图 创建控制流模型 有一大类应用问题是事件驱动的而不是数据驱动的;这类问题产生控制信息而不是报告或显示信息,并且,处理信息时非常关注时间和性能。这样的应用除了数据流建
文档评论(0)