本文旨在探讨数仓类软件(数据中台类概念项目也有该部分内容)该如何进行度量规模,以及度量规模的前提工作,首先需要了解数仓类软件的总体架构,以便于划分功能点度量的系统边界,然后进行数据和事务功能的度量。
一、数据仓库项目总体架构
1、数据源
数据源包括各个业务系统、应用系统和其他外部系统的数据源,如ERP、CRM、OA等,这些系统的数据被提取到数据仓库中进行数据分析和管理。
2、ETL工具
ETL工具是数据仓库中的重要组成部分,其主要功能是将数据源中的数据提取出来,通过转换操作进行数据清洗、归并和集成,最后再将数据加载到数据仓库中。ETL可以分为数据提取、数据转换(包括数据清洗、数据归并和数据集成)以及数据加载。
3、运营数据存储层(Operational Data Store,ODS)
ODS是一种针对企业业务应用而设计的数据存储、处理架构,主要用于存储从业务系统、应用系统和其他外部系统获取的实时或准实时的业务数据,并进行简单的清洗、集成和归档处理。ODS可以对数据进行历史追踪和溯源分析,数据的质量较高。
4、企业数据仓库(Enterprise Data Warehouse,eDW)
eDW是数据仓库的核心,它主要用于集成、存储、管理和分析企业的核心业务数据,为企业提供决策支持和商业智能。eDW能够对数据进行深度加工、全面归约和丰富分析,形成沉淀价值较高的多维度、多角度、多层次的企业数据资源。
5、数据集市
数据集市是数据仓库的重要组成部分,它提供给用户可访问的商业智能数据,如数据报表、数据图表、数据分析等。数据集市通常划分为多个专业领域的数据集市,例如销售、人力资源、财务、生产等。
6、数据展示
数据展示是将数据集市中的数据进行展示,可以通过交互式界面进行查询、过滤和分析。数据展示包括数据报表、数据图表、数据大屏等。
7、数据安全
数据安全是数据仓库的重要组成部分,负责为数据仓库提供数据安全保障,如数据加密、访问控制、审计和备份恢复等。
二、IFPUG如何度量数据中台/数据仓库功能点
1、确定系统边界:确定系统边界是软件度量的前提工作。在数据仓库中,一般将ODS(数据预处理区)与数据仓库整合划分为一个系统边界,数据应用层可以是单独的一个系统,也可以根据使用的客户、开发团队的情况而划分多个。展示层可以是独立的系统边界,也可与数据仓库划分为同一系统。
2、识别数据功能:数据建模应采用“维度模型”的方法,建立概念模型、逻辑模型、物理模型。对于数据功能计数,可以根据不同类型计算,比如接入层功能不计数,而ODS的数据加工方法计数为ILF或者EIF。对于数据仓库的数据功能计数,可以参考本文中的表格进行识别。
3、识别事务功能:事务功能的识别可以根据IFPUG的规则进行。IFPUG规则是事务码的度量基础。