【项目心得】xxx小型项目(商务)的建模及开发心得

【前言】

某个项目,老板希望可以搞一个平台出来,简陋一点都没关系,最重要可以先上线,先运行,这个平台可以有商家开店,可以有客户购物,囧,这不是b2c吗?


【设计阶段】

先看看用例:

【项目心得】xxx小型项目(商务)的建模及开发心得_第1张图片

咦,为什么就一个简单的用例的?因为我除了知道核心是产品以外,其他都认为是产品这个功能之下或者是配套为产品而服务的。


【补充说明】

用况并非如此简单,这里只作简单说明,实际的分析情况是:

分析用况,提取业务,获得关键词,得到领域模型,明确系统功能,设计ER图,计算系统页面。前台及后台的分别制作。


第一步:分析用况,提取业务。

举一个例子:假如我们有会员下订单这个用况,它的业务规则假设相对简单(业务取决于客户需求,这里为了说明如何分析系统,我将业务都简化了)



第二步:提取关键字。

请看看下图,光是一个业务流程我们就可以提取到相当多的关键字,请注意,关键字散落在各个业务里面,通常只有明确各个业务才能确定所有关键字及领域模型里面的属性,这里为了简化,我只选取上图的这个业务。

【项目心得】xxx小型项目(商务)的建模及开发心得_第2张图片


ok,现在我们来看看,关键字有 会员,商品,购物车,数量,价格,折扣,个人地址,订单,地址本等等。下一步我们将根据这些关键字来获得领域模型。


第三步:领域模型的构建

根据上面提取的关键字我们可以得到这个领域模型:

【项目心得】xxx小型项目(商务)的建模及开发心得_第3张图片


这里有几个需要注意的问题:

1、为什么领域模型如此简单,里面的属性参数显然不对,会员至少有登录名称,账号密码等等。

回答:上面我已经提到过,只有遍历所有的业务,遍寻所有的关键字才能得到完整的领域模型,刚才只有一个业务就是下订单,而且里面业务规则没有提及会员账号密码等属性,所以根据这个业务及用况得到的部分领域模型是不可能有密码等参数属性。的。

2、商品的折扣可以做到很简单也可以相当复杂,取决于需求,例如:假如我一种商品只有一个折扣,8折,9折等等就可以用一个属性表示了,但是假如折扣系统需要根绝会员等级,假期时间等改变,那么显然不能用一个属性了。


如此类推,我们可以将关键字都找出来(这里这是简单的关键字):


如下图:


【项目心得】xxx小型项目(商务)的建模及开发心得_第4张图片


好了,有了这个就容易很多了,下面将需要的功能都列出来:

【项目心得】xxx小型项目(商务)的建模及开发心得_第5张图片


一个相对完整的领域模型:



ok,根据关键词已经将相关模型简略设计出来。下一步就是设计数据库ER图及根据功能图及模型设计界面原型了,设计界面原型以后可以直接告诉美工需要什么页面,页面都有写什么内容,你可以有什么内容使用;而数据库er图设计好以后就可以直接建表及写后台了。


下面我们来看看数据库表的建模:

【项目心得】xxx小型项目(商务)的建模及开发心得_第6张图片


上面的建模可能比较看上去很乱,确实,在建模的时候会不自觉加入必要的功能及数据,下面我就稍微解释一下上面如何看:

【项目心得】xxx小型项目(商务)的建模及开发心得_第7张图片


总共划分了几大块,但是各个实体表之间是有联系的,所以看上去有点乱。

ok,下面就是整个网站的页面统计了,顺便可以告知美工系统有什么资料可以使用,不要整出一些没有的功能出来:


【项目心得】xxx小型项目(商务)的建模及开发心得_第8张图片


【技术点】


已经设计完了,但是这个项目是有一些技术点的,譬如说:

头像上传组件的java实现,

会员系统个人资源空间组件的实现,

服务器在线文件管理的实现,

bbcode编辑器java版(且要与会员个人资源、服务器在线文件管理整合)的实现,

所以说,只有做完这些技术点才能真正开始开发一个产品,有时候太追求完美反而是坏事。

你可能感兴趣的:(【项目心得】xxx小型项目(商务)的建模及开发心得)