业务建模及用例建模课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《业务建模及用例建模课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 业务 建模 课件
- 资源描述:
-
1、面向对象分析与设计Object-Oriented Analysis&Design-2-学习路线图OOUML:核心过程-3-业务建模Business Modeling-5-开发过程解析 业务建模:用软件建模方法描述业务流程;其目标是认识业务本质,该业务本质是后续用例建模的基础 用例建模:采用UML用例建模技术描述软件需求,该需求模型将为后续用例分析提供输入 用例分析:采用UML用例分析技术分析软件需求,建立软件系统的分析模型 架构设计:在系统的全局范围内,以分析模型为基础,设计系统的架构 构件设计:根据架构设计的成果,将分析模型细化,设计系统构件的实现细节 代码实现:将系统构件映射到目标语言上-
2、6-业务 业务是指某个组织或者组织单元 业务可以看作一种包含了人、机器、资源的“系统”利用软件思想(用例思想、对象思想)描述业务的过程,就是业务建模 业务建模只是辅助环节 不是所有项目都需要 也不一定和软件开发相关-7-业务建模 业务建模的目的 理解将要实施的系统的组织结构和动态特性 理解当前在目标组织中的问题,并明确改进的潜力 确保客户、最终用户和开发人员对目标组织有统一的理解 获取用于支持目标组织的系统需求 业务建模关注 机构的核心价值 机构的边界 机构的参与者 机构中的工作流及如何优化-8-业务建模方法 研究对象 软件要改进的 研究目标 定义业务本质 研究方法:把业务看成对外提供价值的价
3、值流-9-业务建模工件 业务用例模型(Business Use-Case Model)业务用户表示为 业务过程表示为和 业务对象模型(Business Object Model)人们在组织中扮演的角色表示为 组织管理或制造的“东西”表示为-10-业务建模流程 0.建立 1.识别业务参与者 2.识别业务用例 3.详述业务用例 4.建立-11-业务建模流程 0.建立 1.识别业务参与者 2.识别业务用例 3.详述业务用例 1.建立-12-1.业务参与者(Business Actor)识别业务参与者 在,与业务进行的人或组织-13-区分业务工人(Business Worker)业务参与者在业务外面
4、业务工人在业务里面储户储户营业员营业员-14-区分业务实体(Business Entity)营业员营业员经理经理帐户帐户取款机取款机点钞机点钞机储户储户-15-识别业务参与者思路 客户 供应商 合作伙伴 潜在客户 政府 组织中未建模部分-16-2.业务用例(Business Use Case)识别业务用例 业务为业务参与者提供的 体现企业业务本质,是的目标看清楚了,我就是业务用例看清楚了,我就是业务用例-17-业务用例与业务参与者 食客食客吃饭吃饭-18-识别业务用例的方法 直接获得:从业务参与者的角度,从外部推导出来 拼装:从里面往外面看,内部业务流程的目标是什么业务工人业务工人业务工人业务
5、工人活动活动活动活动直接获得-19-从业务流程拼装业务用例 业务流程 1.收款人在支票背后签名,写上身份证件号码,把支票和身份证件交给营业员 2.营业员核对印章正确且证件有效 3.营业员操作营业受理系统,办理支票兑现手续 4.营业员把现金和证件交给交款人收款人收款人兑现支票兑现支票-20-识别业务用例-支持性事件 不要遗漏支撑性业务流程背后的业务用例 支持性事件 人员的发展与维护 业务内部IT的开发与维护 办公室的设立与维护 安全性 法律活动 例:公司为什么要举行足球比赛?董董 事事 会会提提 高高 员员 工工 士士 气气-21-3.详述业务用例 业务用例是对业务流程的封装,在业务建模过程中需
6、要逐一描述其内部细节,即详述业务用例 目的 详细说明业务用例的工作流程 说明业务用例的工作流程,以便于客户、用户和涉众理解-22-三种可选技术-23-选择合适的技术 只有文字 不生动,不便于和客户交流 只有活动图 难以表达所有细节 业务用例文档中插入活动图 活动图中插入文字(+注释+基本路径)顺序图(需要涉及到业务对象模型)-24-细说活动图-25-细说活动图(1)起点、终点 活动的一种特殊形式,各自只有一个 起点:只有离开的转移 终点:只有进入的转移 存在从起点出发,到达终点的路径 活动和动作 有进有出 动宾结构 可以简单,可以复杂 分区 定义活动的负责者-26-细说活动图(2)控制流 向外
7、转移的条件之和必须是完备集 向外转移的条件之间不能重叠 决策点 注意和流程图的区别 误把活动当决策 图中判断“技术可行性”需要单独的活动来完成 无空位 有空位-27-细说活动图(3)并发(concurrent)同步条(synchronization bar)的分叉(fork)与合并(join)有分必有合 有分必有进 有合必有出 并发同时-28-活动图中的对象流 指定活动操作的数据(对象)以及数据的流向(对象流)业务对象(business objects)、对象流(object flows)指出对某些业务实体的操作,类似结构化中的数据流图 UML2中对象流由原来的虚线改为实线-29-活动图的分层
8、 活动可以简单可以复杂,复杂的活动可以进一步细化:分层 顶层有起点终点,下层可以没有 出入平衡-30-4.业务对象模型 业务对象模型(Business Object Model)勾勒出实现业务关系中的人、事物、设备、资源以及它们之间的关系;即业务工人和业务实体之间的静态关系 从另一个视角描述现实 使用UML类图描述 不要和待开发系统中的分析设计类相混淆-31-餐馆的业务对象模型厨师厨师菜肴菜肴1.*1.*1 1 1 11.*1.*负责负责服务员服务员领位员领位员雇员雇员-32-业务建模实践:建模指南 业务模型不是UML标准直接支持的,但是通过UML的扩展机制可以很方便的建立业务模型 主要构造型
9、(stereotype)业务用例模型 参与者的构造型:业务参与者(Business Actor)用例的构造型:业务用例(Business Use Case)业务对象模型 类的构造型:业务工人(Business Worker)、业务实体(Business Entity)-33-建模指南:模型的组织 利用“包”组织模型 用例视图中“业务用例模型”每个业务用例的”状态/活动模型”逻辑视图中“业务对象模型”-34-建模指南:使用构造型 业务用例模型是在UML的用例模型(用例图)基础上添加构造型来实现的 业务对象模型是在UML的对象模型(类图)基础上添加构造型来实现的 利用已有元素添加构造型 Rose直
10、接支持这些构造型-35-业务建模实践:实例分析 研究对象:某旅店 业务现状:某旅店可对外开放50个双人间和20个单人间,房间费用视情况按季节调整,但周一到周五提供半价(周末全价)折扣 旅客可以直接入住房间(如果有空房),也可提前预订;入住和预订都需要登记个人信息 旅客提前预订房间时,需提交一定的订金;入住时间24小时之外的旅客可以取消预订,并退回所有订金,24小时以内则不退还订金 退房时缴纳全部的住宿费用 服务员每月为经理提供房间的预订情况和入住情况的详细信息-36-实例分析:业务用例模型-37-实例分析:旅客住宿业务流程-38-实例分析:检查业务用例模型 该业务用例模型体现了整个旅店的业务需
11、求吗?如何考虑这项业务:服务员每月为经理提供房间的预订情况和入住情况的详细信息?经理是什么,如何体现在业务建模过程中?是业务参与者还是业务工人?体现怎样的业务本质的差异?-39-实例分析:业务对象模型-40-从业务模型到系统模型 对于软件开发而言,业务建模只是辅助环节,并不是最终目标 软件工程师最终目标是要构造软件系统 业务建模则是一种定义系统模型的辅助手段 从业务模型到系统模型 业务模型描述了目前的业务现状 系统模型才是软件开发的最终工件-41-业务模型为系统模型提供素材 为用例视图和逻辑视图提供输入 对于每个将被系统实现的业务用例,在用例视图中确定一个系统用例或用例包(或单独的子系统)来实
12、现该业务 为需要支持自动化业务确定相应的用例 对于业务对象模型中的业务实体,可以在系统模型中定义对应的实体类 为系统构架提供一些重要的构架机制 在软件构架中定义专用层来实现复杂的业务逻辑-42-业务模型映射到系统模型 从入手,结合系统,可以帮助获取系统模型 可能的对应关系(并非一一对应)业务用例 系统(子系统)业务参与者 系统参与者 业务工人 系统参与者 业务工人的操作(活动)系统用例 业务实体 实体类用例建模Use Case Modeling-44-内容安排 理解需求 从业务模型获取需求 建立用例模型 编写用例文档 重构用例模型 其它问题-45-内容安排 从业务模型获取需求 建立用例模型 编
13、写用例文档 重构用例模型 其它问题-46-需求建造“正确”的系统 需求:客户可接受的、系统必须满足的条件或具备的能力 RUP中的FURPS+软件质量准则 功能性(Functionality)使用性(Usability)可靠性(Reliability)性能(Performance)可支持性(Supportability)+需求工程的主要活动 定义需求 理解用户的需要,建立用户可理解的系统需求模型分析需求 根据需求模型,建立开发者无二义性解释的分析模型 需求管理-47-48-需求难在何处:石头问题 我要一块石头 差不多,但我要小一点的 很好,不过我要蓝色的 啊,没有那么小 咳,还是原来那个好了-4
14、9-需求:也需要开发客户客户/用户的要用户的要求求/想法想法/期望期望软件设计软件设计软件产品软件产品开发开发编码和测试编码和测试验收验收有价值的有价值的软件需求软件需求分析和设计分析和设计-50-需求问题:对策-51-内容安排 理解需求 用例建模流程 获取原始需求 构建初始用例模型 编写用例文档 重构用例模型-52-从业务模型获取需求 有业务模型 从业务用例模型中寻找系统改进点 结合系统,获取系统用例来表达需求 采用需求启发技术,从涉众获得-53-从业务模型获取需求 从业务用例模型中获取系统需求,来构建系统用例模型 1.寻找业务改进点 2.定义项目远景 3.导出系统需求-54-1.业务改进点
15、 业务模型描述业务现状,这些现状:有些可能一直运转的很好,不需要改进,也就没有必要作为软件需求来由系统实现 而另外可能更多的业务在运转过程中存在这样或那样的问题,这些问题就成为业务待改进的改进点,也就很可能作为软件需求而存在-55-寻找业务改进点 从业务流程中获取改进点的思路:信息的自动流转 演绎复杂业务逻辑 访问和操作业务对象 自动工作-56-2.远景(Vision)系统改进点不等同于软件需求 用户根据自身的工作特点和支付能力决定哪些应该改进,哪些不需要改进 这就是用户的远景,它表明用户改进的目标,这也将成为项目的目标 业务模型描述了“现实是什么”,远景则描述“希望的改进”远景表达了“为什么
16、要开发这个系统”在业务现状(业务模型)下,开发系统是为了达到什么目标?-57-定义项目远景 远景包含了对待开发系统的目标和约束 代表了项目涉及的所有人之间达成的第一个共识 是项目核心需求的概览 为更详细的技术需求提供了契约性的依据 指导团队实现具体的业务目标 远景的作用 最初,根据项目的远景目标来决定项目是否值得继续 在项目批准后,团队根据项目远景来指导后续的需求和设计-58-远景说明 远景可以作为一个单独的文档存在,而这其中最重要的部分就是关于远景目标的说明,它建立了一个项目涉及的所有人的共同目标 远景说明应该是精确、清晰和激励性的描述,以便激励所有的团队成员为达成该远景而努力。一个好的远景
17、应该具有以下五个特点(SMART):具体的(Specific)可测量的(Measurable)可实现的(Achievable)相关的(Relevant)基于时间的(Time-based)-59-3.导出系统需求 从业务改进点入手,结合项目远景,导出系统需求:对于每一个业务改进点,明确是否是为了达到远景目标的需要 如果是则作为软件需求而存在,并把相应地模型作为系统模型 如果不是则不作为需求而存在,可能作为一项潜在的需求考虑,也可能直接抛弃-60-实例分析:旅店系统开发背景 随着旅店声誉日益提高,住宿人员越来越多,旅客为了能够获得好的房间,均提前预订房间 然而,随着预订的增多、预订周期的拉长,前台
18、服务员工作压力也日益增大,还经常出现工作的失误,使得已经预订好房间的旅客也不能按期入住,这给酒店的声誉带来不好的影响 为此,旅店老板想到了计算机,希望能够通过计算机来自动管理这些预订业务,不过由于目前资金的问题,目前只开发一个单机版的系统,不提供网上业务;并且旅店方面的其它业务暂不考虑信息化问题 旅店老板委托某计算机公司开发该系统,并承诺如果系统运转良好的话,将会考虑进一步合作事宜-61-远景:旅店预订系统 A很荣幸地成为项目经理,并被要求在两个月之内发布该系统的第一个版本,同时还被要求要为后续的开发提供必备的接口 结合现状和老板的要求,考虑到的项目可扩展的要求,A首先进行了简单的业务建模 之
19、后,A初步定义了项目的远景 方便、快捷、准确地为旅客预订房间 旅客可以方便的取消预订的房间 旅店经理能够定期的获取预订的信息,根据这些信息可以及时调整房间的价格 及时、快速地计算房间费用、预订费用、取消预订后退款金额等信息?预留接口:可以为以后的网络版,以及其它业务系统的开发提供支持-62-结合远景,获取系统需求-63-业务模型映射到系统模型思路 从入手,结合系统,可以帮助获取系统模型 可能的对应关系(并非一一对应)业务用例 系统(子系统)业务参与者 系统参与者 业务工人 系统参与者 业务工人的操作(活动)系统用例 业务实体 实体类-64-内容安排 理解需求 从业务模型获取需求 编写用例文档
20、重构用例模型 其它问题-65-1.需求从何而来 需求只能来自涉众(stakeholders)最终用户、客户 政府、法律、文化 开发人员、管理人员 竞争对手 但并不是直接从涉众中来 你们的需求是什么?-66-涉众无法直接提供需求 涉众无法陈述自己的需要 涉众说的是解决方案而不是需求 涉众难以构想新的工作方法 涉众的利益矛盾 涉众抵制变更“最好也要有”过度的要求 需求引发需求-67-需求启发技术 需求工程师利用需求启发技术,从涉众中发掘需求 收集资料 现场观察 访谈 开会 原型 问卷调查-68-2 识别参与者(Actor)识别参与者 关键词:边界 参与者:在系统之外,透过系统边界与系统进行有意义交
21、互的任何事物-69-参与者要点分析 系统外 参与者不是系统的一部分,处于系统的外部 系统边界 参与者透过系统边界直接与系统交互,参与者的确定代表系统边界的确定 系统角色 参与者与使用系统的物理人和职务没有关系 需要从参与系统的角色(作用)来寻找参与者 与系统进行信息交互 系统需要关注其交互过程,即系统职责 任何事物 人、外系统、外部因素、时间-70-要点:与系统进行信息交互-71-要点:任何事物-72-任何事物:小人与圣小猪-1-73-小人与圣小猪-2 众所周知,用例图中的参与者用一个小人表示。但是这个小人具有一定的误导性,往往让初学者(包括客户)理解为一个真实的人。大多数UML 学习者都要花
展开阅读全文