第04讲软件需求.ppt

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实时系统需求分析 基于实时系统的特点,在开发一个复杂的实时系统时,一个充分再现系统特性的建模工具至关重要,对于系统分析、设计、实现、成本控制、可重用都具有重要的意义。 可选用UML-RT工具进行实时系统的需求分析。 UML-RT是利用通用建模语言UML的扩展机制并借鉴实时的面向对象的方法ROOM(Real-time Object-Oriented Modeling)的优点发展而来。 实时系统需求分析 UML-RT用协作图表示特定环境下类之间的关系。 UML-RT有两种结构元素:模型结构和模型行为。 模型结构: 封装体 端口 连接器 模型行为: 协议 状态机 定时服务 Petri Net (Activity Diagram) Elements Position Transition Transition arc Marking Petri Net 行为(功能)建模 FSM有限状态机 - 通过输入输出之间的因果关系对系统的行为进行建模 系统可看作有若干个相互区别的稳定状态 外部刺激使系统从当前某个状态改变到另一个状态 状态转移图State Transition Diagram 状态图State Chart Diagram Specification and description language (SDL)规范与描述语言 Petri Net 基于USE CASE的需求分析 ——用例图 用例:系统和外部角色的交互 符号表示: 系统名称 系统 用例名 用例 角色 关联 保险商务系统 签定保险单 销售统计 客户统计 客户 保险销售员 基于USE CASE的需求分析 ——Use Case图例子 基于USE CASE的需求分析 ——用例之间的关系 扩展关系 使用关系 组合关系 《扩展》 签保险单 签汽车购买契约 《使用》 《使用》 签保险单 签汽车保险单 签房屋保险单 类图 面向对象需求分析 因为人类自然地趋向于用“对象”的观点或“方法”来认识问题,分析问题以及解决问题,用基于“对象”的概念模型来建立问题域模型自然成为系统分析员与用户交流的有效工具。 用面向对象的方法进行需求分析,其根本要点在于,利用对象的概念模型建立一个针对于问题域的模型,用户和软件工程师通过该模型进行交流。通过在这么一个基于对象的问题域模型的基础上形成需求规格说明书。 面向对象需求分析 - 步骤 通过查看相关资料并与用户广泛地接触,自己对问题域有一个大致的了解。在这个基础上,将问题域中与系统和问题有关的对象提取出来。这就是标识对象的工作。 将第一步中抽象出来的对象(类)的之间的关系考虑清楚;如整体与部分、从属关系等; 为“类”提取与系统问题域有关的属性、服务等; 由于要完成一项任务,肯定是有不同的对象互相协作完成的。同时一个对象的属性、服务也是在与相关对象的协作中体现出来的。将问题域中所有任务的对象的协作关系搞清楚,是面向对象需求分析的关键一环。即将问题域中的“剧情”搞清楚,是需求分析的主要工作之一。  面向对象需求分析 以上四步并不是单独的而是互有联系,可以同时进行的。通过,对以上4步工作的反复执行我们就可以建立一个基于对象的问题域的模型。 在该模型的基础上,可以比较容易地产生一个符合用户需求的软件需求规格说明书成为后续工作的基础。 基于原型方法的分析 软件原型是所提议的新产品的部分实现或可能的实现,使用原型有3个主要目的: 明确并完善需求 研究设计选择方案 发展为最终产品 原型法就是不断地运行系统“原型”来进行启发、揭示、判断、修改和完善的系统开发方法。 基于原型方法的分析 对原型的基本要求包括: 体现主要的功能; 提供基本的界面风格; 展示比较模糊的部分以便于确认或进一步明确; 原型最好是可运行的,至少在各主要功能模块之间能够建立相互连接。 原型方法的一般过程 基于原型方法的分析 原型可以分为三类: 淘汰(抛弃)式(disposable):目的达到即被抛弃,原型不作为最终产品。 演化式(evolutionary):系统的形成和发展是逐步完成的,它是高度动态迭代和高度动态的循环,每次迭代都要对系统重新进行规格说明、重新设计、重新实现和重新评价,所以是对付变化最为有效的方法。 增量式(incremental):系统是一次一段地增量构造,与演化式原型的最大区别在于增量式开发是在软件总体设计基础上进行的。很显然,其应付变化的能力比演化式差。 基于原型方法的分析 ——淘汰式原型 利用废弃原型从用例到用户界面设计的活动序列: 用例描述 对

文档评论(0)

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

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

1亿VIP精品文档

相关文档