购物车设计开发之二 —— 业务建模
2006-12-29 10:04
337 查看
第二章:购物车业务建模。
笔者在本文中将会采用UML对购物车进行建模。
对于我们的例子,涉及参与者(Actor)是顾客,业务实体则有MiniCart和Shopping Cart。
1、术语解释。
购物车/ShoppingCart:模拟现实的购物车,存放顾客选购的商品。
购物车元素/ShoppingCartItem:表示每个加入购物车的商品,1个购物车元素对应一个商品。
迷你车/MiniCart:购物车的微缩版,只显示最后(或者近几个)加入购物车商品,会附加一些促销的信息。
2、用例(Use Case)
用例(Use Case)是顾客对购物车进行直接操作的事件。
经过分析,得出的用例如下图:
3、业务实体。
描述如下:
1)ShoppingCart和ShoppingCartItem是聚合关系,即ShoppingCartItem生命周期依赖于ShoppingCart;
2)MiniCart和和ShoppingCartItem是组合关系,一个MiniCart可以呈现多个ShoppingCartItem,
ShoppingCartItem生命周期和MiniCart没有直接关系;
3)MiniCart对ShoppingCart有依赖关系,如果还没有为顾客分配ShoppingCart,则MiniCart也为空。
4、时序图。
描述顾客和购物车之间的交互关系,并表述对象之间的时间顺序可以用时序图表达,但限于篇幅,
笔者只对其中的【将商品加入购物车】进行设计。
4.1 基本流如下:
流程描述如下:
顾客 服务器
1)查看商品;
2)将商品加入购物车;
3)购物车模块判断可以加入;
4)将该商品加入购物车;
5)调用其它接口对购物车进行处理(如计费接口);
6)调用MiniCart接口组装返回数据;
7)呈现MiniCart页面;
8)查看MiniCart页面。
4.2 扩展流如下:
1)Add to cart时,通过购买验证,发现顾客等级不足以购买当前商品,则返回提示信息,流程结束。
2)另外还有其它的扩展流,比如库存不足等,由于很相似,所以在本文就不画图了。
5、其它。
下图表达了一个顾客进入网站后选购商品——结帐的活动过程概述。
其中对Add to cart的子流程做了描述,结帐流程不在本文描述范围。
下一篇将进行实体和接口的具体设计,请关注。
【转载请注明出处!】
笔者现在 www.probiz.cn 任项目主管,进行基于J2EE电子商务套件的研发。
产品在线 demo 请垂阅: http://demo.probiz.cn/eStore
笔者对 J 2EE 相关技术及电子商务方面有所研究,欢迎进行交流。
QQ:16399476
MSN : yanchaomin @hotmail.com
相关文章推荐
- 购物车设计开发之二 —— 业务建模
- 在线捉鬼游戏开发之二 - 设计业务对象与对象职责划分(3)
- 用三层架构与设计模式思想部署企业级数据库业务系统开发
- !金尚网上商城 03~07、WEB项目开发的一般流程—分析与设计之业务逻辑分析设计
- 开发一个业务逻辑复杂的系统,应该怎么样设计才能使项目的扩展性更好
- 电商app开发架构设计优化购物车环节
- 记录我开发鞋服行业供应链软件的历程<设计业务层>
- 敏捷开发“松结对编程”实践之二:计划与设计篇
- 【DDD】领域驱动设计实践 —— 业务建模小招数
- [原创].NET 分布式架构开发实战之二 草稿设计
- 使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 6 - 业务逻辑
- 使用Java开发Domino业务应用的设计模式 (cont. 1)
- Java开发中的23种设计模式详解之二:7种结构型模式
- 敏捷开发“松结对编程”实践之二:计划与设计篇(大型研发团队,学习型团队,139团队,师徒制度,设计评审,预想陈述,共同估算,扑克牌估算)
- 毕设开发之二-对概要设计的重要性的理解
- 大话IPC产品系统设计 - 基于芯片商提供的SDK API开发之二
- 用三层架构与设计模式思想部署企业级数据库业务系统开发
- 敏捷开发“松结对编程”实践之二:计划与设计篇(大型研发团队,学习型团队,139团队,师徒制度,设计评审,预想陈述,共同估算,扑克牌估算) .
- (转)用三层架构与设计模式思想部署企业级数据库业务系统开发
- RUP开发业务建模流程