重构机房收费系统(一)

101号开始重构学校机房收费系统,没想到这次重构,推翻,再重构……用了两周时间。

这次整体架构采用三层,并融入了一些设计模式。

 

下面介绍这次重构的过程:


一、从UML用例图开始

对于机房收费系统的需求已经很熟悉了,用例和角色都已经提取出来了,在这里遇到一个问题,就是,究竟是根据角色划分用例,还是根据功能划分用例?

按角色来画:更容易下一步建模,基本上一个用例对应一个UI层的一个界面,而且一个用例对应一个业务逻辑。但在机房收费系统中,不利于对系统的宏观把控

 

按功能模块来画:使整个系统看起来更加直观,更容易宏观把握整个系统的功能需求。

但对于机房收费系统,显然不利于下一步建模,抽象类的时候很容易漏掉方法。

 

两者各有优缺点,在不同的系统中会有不同的体现。在机房收费系统中,我更侧重按角色画用例图。本着只要能说明需求就可以的原则,把两个都画了,越完善越好嘛。

1、按角色划分:

系统管理员:


操作员:



一般用户:



2、按功能划分:

财务信息管理


上下机信息管理


系统信息管理


学生信息管理


下接《机房收费系统重构(二)》




posted on 2011-10-15 16:16  springside例子  阅读(160)  评论(0编辑  收藏  举报