开发BI系统时的需求分析研究

咱们知道MIS,知道ERP,知道GIS等等,这些系统在管理限制上有不少的冲突,管理和被管理,开放和限制等等,然而BI在开始就不是这样的。BI要求的就是易用还要易于扩展,首先是报表,这个是你无条件的须要去作的,其次是adhoc和analysis,一样的岗位有不一样的需求,这不是权限,管理等等的须要,而是一种习惯。windows

实施BI project的时候,咱们常常遇到这样的状况:性能

1:花少许的时间去理解客户的要求,好比reporting,了解通常的字段的数据出处,而后就开始data modeling,开始搭建DW,ETL等等。测试

2:中间出现大量的业务计算。设计

3:客户需求修改,增长需求。rest

4:数据不完整,数据口径不一致。接口

5:性能底下。产品

6:schedule delay。io

而后:扩展

1:从新调研需求,了解维度数据,实时数据,关系计算。model

2:修改模型,etl process,cube。

3:从新设计接口。

若是处理不当,咱们可能会遇到一下几种状况。

1:overtime

2:rework again and again

3:restructure

4:game over

不论是哪种,都是咱们不肯意去看到的,咱们没有办法去指责用户的需求对不对,应该不该该。他们是付钱了的,咱们作得就是一种services,若是咱们遇到这样的问题应该怎么办了,应该怎么去分析了。或者说事前应该作一些什么样的准备了。

这其实须要一种平衡,客户需求和公司利润,固然,若是是甲方本身去作的话,那就是不满意和责罚之间去平衡了。

不少人会说当初定下来的范围边界,若是有需求从新增长的话,只能放到第二期里面去。其实这样的办法其实也是一种办法,只是能够对新的需求,有一个工做量的评估吧。

其实咱们定需求的时候能够由大到小,还要兼顾未来系统的扩展性。

当前状况:

1:用户的使用习惯,包括如何分析数据,如何查找数据,如何在reporting导出数据,本身进行的处理。

2:用户的使用不便之处,包括计算,查询数据,统计,甚至在EXCEL里面作的变更或者计算。

3:现有系统的权限设置。

4:数据统计时间,生成时间,归档时间,汇报时间等等。

边界需求

1:确认业务边界,BI,BI,business在前面,因此咱们必须先了解业务上的边界在哪里,不少公司在HR和finance都比较保密,这些都不归入DW/BI的范围,那咱们就要肯定清楚,是否是真的不归入,若是中途归入的话应该怎么处理。这些咱们能够留下接口,将HR和finance综合在一块儿。

2:确认系统边界,就是这个project包含哪些源系统,这些源系统又有什么特色,数据量,表,还有各个系统的详细描述,特色,已经相互间的逻辑关系等等,这些东西就和咱们未来作data profiling和ETL有关系了。

3:确认功能边界,就是作Ad-hoc,reporting,analysis,dashboard等等,须要这些吗,每一种的具体需求又是什么,包含多少的量,每一种的dimension对应的又是什么,reporting的格式,数据源 ,dashboard的对应的KPI是什么等等,在查询,查找,参看数据的时候,须要哪些功能。

权限需求

1:确认系统未来使用,开始上线和最终平稳使用时涉及到的部门,人员,还有每一个人的权限。

2:确认系统须要涉及到的维度,部门,时间,产品等等,每每权限是和这些维度有关系的。

3:未来如何去控制用户的访问权限,是有windows的AD控制仍是ldap控制,或者用维度和用户关系表去空,考虑之后若是发生变化,时候便于维护,如何去作一个维护权限的UI。

数据质量

1:各功能(adhoc,reporting,analysis,dashboard)涉及到的数据表结构。

2:分析各系统的数据质量,最好有数据质量报告。包括维度,空值,一致性,完整性的检查。

需求记录

无论咱们和用户谈到什么,只要是和系统有关系的,最好能写出报告的形式,而后再和用户讨论,谈谈你的理解,看用户是否定可,有记录,咱们不必定要用户去签字,只是为了之后咱们出现人员变更或者最后作UAT测试的时候方便。

若是你真的没有时间作上面的这些事情,那你必定要作好一下的工做。

1:多多了解系统各个岗位的人员的要求,不论是Ad-hoc,reporting,仍是analysis,dashboard,听听他们所说什么,有什么要求。

2:分析主题,概括需求的类似点。看看有没有统一实现的方法。

3:逐个的去完成用户的功能,记住,要一个一个的去完成,完成一个后,就和相应的人员去确认是不是他想要的。不行就again。

4:关注说话有份量的人,好比leader,mananger或者high level manager等等,多和他们沟通,或者尽可能完成他们的要求,作到他们满意。

其实需求分析不只只是在项目开始的时候作,若是咱们吧BI/DW的项目看成一个过程的话,每个时间点均可能够看作是一个小项目的开始。

相关文章
相关标签/搜索