0°

需求分析实战5-子系统划分


项目背景信息(如有雷同纯属巧合):

山竹区早在5年前就成立了自己的区图书馆,现有存书10万册,读者1万人。

目前是使用人工手写的方式进行图书管理、借还等。

随着信息化建设的逐步深入,山竹区文化局决定要实施一套图书馆管理系统,主要负责:

图书管理、借还管理等。

这个项目现交由你们公司进行。

你作为这个项目的需求分析人员参与其中。





之前有小伙伴就问过我,怎么划分组建和子系统。

我记得我当时的答复是:按照业务划分是最恰当,体验度最好的。


其实在研发人员严重的子系统和业务用户眼中的子系统是完全不一样的。


我们以家庭装修为例。

你找了一家装修公司,你会怎么提自己的需求?

我希望客厅铺复合地板,放一盏水晶吊灯,转交沙发,电视背景墙稍微做简单一点,比如几块隔板。

我希望餐厅铺地砖,放一张6人的餐桌,实木的那种,墙上挂两幅画,用三盏吊灯。

我希望卧室……

厨房……

卫生间……

阳台……


你是否有注意到设计师和你交流沟通的时候,也是这样分区域的和你交换意见的。


但是,真正施工的时候是怎样的呢?


首先,如果没有墙体改造,水电工会先进场。

他们会先帮你做客厅的水电,再做餐厅的吗?

肯定不会,他们肯定要一次头把水路做好,再一次头把弱电和强电做好。


在这个例子里,你是用户,设计师是BA,水电工就是开发人员


我们做软件也是一样的道理。


我们换了把各个功能区域(客厅、餐厅……)称为主题域、子系统、模块、组件。


我们发现明确主题域的划分,对后期的接口设计、模块封装起到非常重要的作用。



主题域划分原则

主题域划分是有一定的原则的:用户可理解的高内聚低耦合

有人说,高内聚低耦合我能理解,什么叫做用户可理解。

不知道大家有没有用过银行网站提供的服务。

我是从来没有搞清楚过各个菜单到底是干什么的:

账户管理

基本交易

网上支付

大额交易


我只是想查一下余额,你告诉我应该从哪个菜单进入?

这个就是不可理解。



那么如何划分主题域呢?

曾经看到过一个方法,觉得挺有意思的。


把几个业务部分的代表叫到一间大屋子里。

(我们之前做了干系人清单和干系人登记册,要做到这点不难,把代表们叫来就好了)

然后让他们分小组落座。

分组的原则是,日常工作8小时,有80%及以上的时间是在一起办公的。

然后发给他们两个颜色的纸条:提供什么信息或者服务给别的部门,需要别的部门提供什么信息或者服务。


这样我们就得到了我们所需要的主题域。


假设我们通过上述方法,得到了山竹县的小组分别是:

借书处、还书处、书库、读者服务部、采购部、管理部门(文馆长孤零零的)



工具

我们需要用工具将上述过程及分析结果记录下来。


有这样几种工具大家可以视情况选择:

  • 清单:最常用的

  • 层次图:一般强调纵向分解

  • 数据流图:强调数据的交换与共享

  • 构件图:强调横向关系


在山竹县图书馆的例子中,现阶段使用构件图是一个很好的方法。



作业

我给出以下描述,大家来尝试绘制一下构件图。



借书处提供书籍的借出信息给到书库

还书处提供还书信息给到书库

书库提供待采购清单给到采购部,提供图书信息给到借书处和还书处

采购部反馈实际采购待入库清单给到书库

读者服务部提供读者信息给到借书处和还书处

管理部门需要图书和读者的统计信息



交作业的方式与之前相同:

1.大家可以通过邮件(jessie_yj@126.com)的方式完成作业,小婧会为每篇作业进行私下点评

2.作业提交时间为周四0点之前,也就是你有3天的时间来完成作业

3.每周六小婧会对你们的作业进行总结和分析

4.由于本次作业特殊,请大家一律使用邮件发送给小婧,在邮件标题上注明自己的QQ名或者微信名。作业使用图片附件的方式发给我。






写在最后

这里给大家推荐一本书:《彩色UML建模》

需求分析实战5-子系统划分

有兴趣的可以去看看,貌似只有某宝有。



小婧是一名行走在产品道路上的资深业务分析师(BA),如果想和我一起前行,就请关注“与小婧同行”吧!


需求分析实战5-子系统划分


「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论