`

四色原型图进行业务建模的思考

阅读更多

      一般的需求,我们利用用例图就可以表达清楚了,如果再复杂些,我们可能还得再配合序列图、状态图等加于说明。但是,在非常复杂的业务逻辑中,怎么样才能找出它们的联系?而且还能更好地拥抱OO(面向对象),OO的优点不是我们本文的话题。
        这里笔者介绍一种很灵活很实用的分析方法--四色原型图,也叫彩色UML

 

(图片引自JDON的BANQ大师之手)

四个元素的介绍:

        moment-interval :

        粉红色的时刻—时段:一个时刻或一个时段,您需要追踪它或做某事,通俗地说其实就是关键动词,就是服务,很容易在这里面抽象出事物逻辑类。

例如:计算、补偿、结算等。 mi-detail :通常,粉红色的时刻时段会有一些组成部分,称为mi-detail(时

刻时段明细),

        role   :

        黄色的角色,角色不一定是人,这个很重要,可以理解为一些有行为的名词。

        catalog-entry-like description   :

        蓝色的描述(类似产品的目录项),可以在这里找出

值对象,持久化的对象。

        party, place or thing   :

        绿色的参与方—地点—物品,可以从这里找出模型、实体。

总体总结:“时刻时段”发生了,“事物”们扮演不同的“角色”参与进来“事物”变化的规

律和“描述”有关。

 

主要参考了BANQ的:http://www.jdon.com/mda/archetypes.html
和yananay的:http://www.iteye.com/topic/399672#1055483

 

下面说一下最近学习后用到项目中的一个例子:

 

 

 1、一开始最主要的其实是找出最基本的原型MI,即红色,这里的原型是住院补偿。

 2、然后慢慢找出与之相关的一些东西,计算住院补偿是有一个公式的,围绕着公式可以抽象出一些元素、比如总费用。

 3、再涉及到的“非基本用药费用”的时候又可以找出一个计算的MI,再围绕MI继续抽取,最终可以抽取出以上详细的流程,也很符合面向对象的思维。

 

总结:类图可能大家会认为没能表达出状态和时序等时间上的概念,但是四色原型其实是蕴含着时间状态的,所以在设计分析复杂的业务的时候确实是一个好的工具,这里引用一下BANQ大师的另一个图:

 

我个人看法,四色原型也不是万能药,但是在分析复杂业务的时候他确实很直观,非常容易找出内在的一些需求,所以我个人认为在整个开发的过程中,四色原型用于复杂业务的分析非常有用。

 

个人写作的水平和能力有限,这里权当抛砖引玉,希望大家对我存在的不足批评指正,谢谢。

 

以下附上我的部分分析文档:

 

实体:

 

实体

描述

参合农民

新农合的主要参与者

病例清单

记录了患者治疗和用药的情况

医疗证

医疗证

家庭

参加新农合的家庭

 

功能详细说明:

 

 

功能序号

功能名称

子功能名称

功能描述

MED_REC_MI_2

住院补偿

参合患者基本信息

§           前置条件:参合患者个人编号

§           最终结果:查询参合患者个人信息、户信息、医疗证信息。

参合患者基本信息,根据参合患者的个人编号,获取其个人信息、户信息和医疗证信息。

1)       获取“参合患者的个人”,根据“参合患者个人编号”读取“农民个人基本数据D401数据表。

2)       获取“户信息”,根据“参合患者个人编号”读取“家庭档案数据D301

3)       获取“医疗证信息”,根据“参合患者个人编号”读取“农民缴费及家庭帐户管理部分D601

 

§        

一般住院补偿

 

医院总医药费用

 

§           前置条件:每一次住院费用清单

§           最后结果:医院总医药费用

医院总医药费用,根据“病例价格清单”计算总医药费用。

1)       读取病例价格清单信息。

2)       计算未得到补偿的住院费用。

 

 

非基本用药费用

 

§           前置条件:医院药品价目单,基本用药目录,用药比例。

§           计算结果:非基本用药费用

非基本用药费用,就医药品价目单,基本用药目录和用药比例计算非基本用药费用。

1)       读取病例价格清单信息,获取药品名称、用药数量、药品单价。

2)       计算“总药费”,根据药品名称、用药数量和药品单价计算总药费。

3)       计算“基本用药费用”,用病例清单的药名和“基本用药目录”进行对比,把匹配的药品费用相加。

4)       计算“非基本用药费用”:
“总药费”减去“基本用药费用”。

5)       返回“非基本用药费用”,

如果:“用药比例”状态关闭。
则,返回“非基本用药费用”。

如果:“用药比例”状态打开。
则,计算基本用药费用和总用药费用的比值,高于用药比例的,返回“非基本用药费用”。低于用药比例的,返回“总费用”(即全部不予报销,视“总药费”为“非基本用药费用”)。

 

 

  • 大小: 11.2 KB
  • 大小: 57.7 KB
  • 大小: 18.4 KB
0
0
分享到:
评论

相关推荐

    领域建模-四色原型介绍

    通过四色原型,我们可以将这些元素抽象出来,形成通用的模型,然后再根据具体需求进行定制。在架构设计时,这些模型可以指导我们选择合适的框架(如Struts、Jdon、Hibernate等),使得开发过程更为高效。 四色原型...

    运用四色建模法进行领域分析.docx

    总结而言,四色建模法是领域分析的有效工具,它通过四类基本元素对业务进行建模,帮助分析师理解复杂的业务流程,确保模型能够准确地反映业务需求,并为业务系统的开发提供坚实的基础。在实际应用中,业务分析师应...

    运用四色建模法进行领域分析

    文件列表中提及的图片可能是四色建模的示例图,包括了各种颜色标记的实体、值对象、行为以及业务规则,通过这些图片可以更直观地学习和理解四色建模法的应用。 总结来说,四色建模法是一种强大的工具,它简化了领域...

    软件方法 上 业务建模和需求 潘加宇

    在实际工作中,业务建模和需求分析往往是交织进行的,彼此互相影响。通过有效的建模和分析,可以降低沟通成本,减少误解,提高软件项目的成功率。潘加宇的这本书提供了丰富的案例和实践指导,对于从事软件开发和项目...

    四色原型--整合贴

    火龙果软件工程技术中心 前言我们搞技术的有很多误区,比如经常陷入纯技术钻牛角尖的争辩,而全然不顾业务场景,技术活做太多,经验一箩筐,但是有时会疑惑,这些经验是否适合其他自己没有经历过的新系统呢?...

    业务建模及用例建模.pptx

    业务建模是指通过软件建模方法描述业务流程的过程,目标是认识业务本质,该业务本质是后续用例建模的基础。业务建模只是辅助环节,不是所有项目都需要,也不一定和软件开发相关。 业务建模的目的: * 理解将要实施...

    业务建模与业务流程建模的讲解ppt

    业务建模旨在描绘企业的整体结构、功能和关系,包括业务流程建模(描述业务流程的动态行为)、业务组织建模(涉及业务目标、组织结构、角色和工件等静态特性)以及业务流程的改进。这种建模方法有助于提升效率、降低...

    UML业务建模

    - **目的**:通过UML进行业务建模的主要目的是理解业务模型建立的意义、应用场景,以及如何基于UML语言进行业务建模的过程。 - **应用场景**:业务建模适用于各种规模的企业,特别在大型企业项目中,通过业务建模...

    软件工程-3.业务建模

    第 3 章 业务建模BUSINESS MODELING 3.1 业务建模概述 3.1.1 目的 3.1.2 业务的构架视图 3.1.3 业务建模工作流程 3.1.4 业务建模场景 3.1.5 业务建模关键任务 3.2 了解系统上下文 案例分析----“数字软件学院”系统...

    UML面向对象业务建模

    ### UML面向对象业务建模:深度解析与实践 #### 一、业务建模的核心概念与价值 在当今数字化转型的浪潮中,企业对信息化的需求日益增长,而业务建模作为连接业务战略与信息技术实施的桥梁,其重要性不言而喻。业务...

    RUP-业务建模过程

    文档结构指导如何组织和呈现建模成果,而元素样例则提供了具体的模型实例,如流程图、活动图和类图,这些都是UML建模语言中的常见图形表示。 #### 四、附录与进阶技巧 附录部分提供了关于用例的提示,以及如何识别...

    EKPV16.0用户手册-业务建模.pdf

    在使用EKPV16.0系统中的业务建模功能时,用户需要按照以下步骤进行操作: 首先,用户需要创建自己的业务分类,以便更好地管理和跟踪自己的业务流程。其次,用户需要创建和设计自己的应用程序,包括创建表单、设计...

    使用业务建模

    ### 使用UML进行业务建模的关键知识点 #### 1. UML在业务建模中的角色 UML(统一建模语言)是一种标准化的图形化语言,用于软件工程中描述、可视化、构造和文档化软件系统的架构和设计。在业务建模阶段,UML通过其...

    性能测试业务建模的三件事|性能测试业务建模方法与思考.zip

    在进行性能测试业务建模时,还应持续思考和迭代。测试结果可能与预期不符,需要分析原因并调整模型。此外,随着业务的发展,系统需求可能会变化,因此定期回顾和更新业务模型是必要的。 总的来说,性能测试业务建模...

    用UML进行有效业务建模.doc

    《用UML进行有效业务建模》 UML(统一建模语言)是软件工程领域中一种强大的建模工具,尤其在业务建模过程中,它能够有效地帮助分析员与客户沟通,将现实世界的业务场景转化为可视化模型。业务建模旨在理解和表达...

Global site tag (gtag.js) - Google Analytics