最近收到一封网友来信,询问关于业务用例向系统用例转换的问题。觉得这个问题比较有意义,涉及到了业务用例向系统用例转换的策略以及评判方法,特发表上来,并感谢rainyhuang网友:
rainyhuang的来信:
Dear CoffeeWood,
你好,看过你的文章使我对OOA有了更深的了解,但我在实际工作过程中遇到了一个问题让我百思不得其解,请不吝赐教,谢谢.
业务描述:
销售管理中通常有 客户报价,客户问期 和客户要求做样本 等 一些需要SALES处理的事件.S处理这些事件都是通过客人提供的产品规格说明书(SPEC)并根据客人不同的目的(如 报价,问期,打样)来开出不同的请求单并发往相应的部门.
客户报价请求单 发给估价部门,客户问期就发给生产部门,做样本发给技术部门.我在业务建模时,我把这三种不同的请求单都抽象为客户请求单,所以我的业务用例是: 在业务模型向分析模型转换时.我把维护客户请求单用例改名为 维护(即一个具体的客户请求)资料,删除了其它三个字用例。 同时,由于包括维护产品资料,所以增加了维护产品资料用例。我现在的问题是:
1。业务用例是否可以这样向分析模型中的系统用例转换
2。根据我上面的说明。分析模型中的系统用例是选择系统用例1 还是系统用例2 好呢
业务用例
系统用例1
系统用例2
Thanks
我的回复:
rainyhuang : 你好
这样的转换是可以的,不过转换的基础是什么,在你的来信中并未提及。从我的理解来看,从业务用例向系统用例的转换过程,是以抽象了业务处理单据为基础的,也就是说,把不同的客户申请单抽象成了项目资料和产品资料,而试图用同样的处理流程来处理不同的业务数据。如果以上的猜测是成立的,那么你的转换就是成立的。这里的重点是:不同的业务处理单据可以被同样的处理流程所处理,这意味着,业务处理单据是变化的,而处理流程是相对稳定的,新单据的加入或修改不至于引起处理流程的变化。反之,如果以上的猜测不成立,即这些业务单据并不能被同样的处理流程所处理,那你的转换就有问题了。
至于系统用例1好还是2好,这个问题是由实际需求来决定的。对于系统用例1来说,维护project资料和维护产品资料是两个独立的可执行单元;客户可以只执行维护project资料,也可以只执行维护产品资料;而系统用例2意味着维护产品资料在是依附于维护project资料的,用户是不能单独维护产品资料的,并且在维护project资料时必须维护产品资料。 因此,如果需求要求项目资料和产品资料可独立维护,那系统用例1是合适的;如果需求要求项目资料和产品资料具有一定的强制关联,要修改产品资料必须先修改项目资料,那么系统用例2就是合适的。