MVC + EFCore 项目实战 - 数仓管理系统4 – 需求分解
上次课程我们完成了项目基本的UI风格配置。
现在就开始进入我们的需求开发,我们先捋一下需求。
一、总体需求说明
项目背景第一篇文章已有介绍,我们回顾一下。
这是一个数据管理"工具类"的系统,计划有三个核心功能:
1、数据查询
通过界面配置相关连接字符串,查询数据库的表数据。
2、数据采集
配置相关模板,生成数据库表。
可以界面填报或通过Excel导入导出填报表数据。
3、表结构导出
通过界面配置导出数据库表结构(数据字典)。
通过以上功能,在数据分析、可视化项目中,更方便的进行数据管理。
二、需求分解 -- 数据查询
1、数据源管理
配置一个连接字符串,根据此连接字符串可以读取相应的数据库,即我们的数据仓库。以SQL SERVER类型数据源为例,相关连接字符串信息如下:
2、数据表预览
根据上一条,选择相应的数据源,我们可以显示该数据源下所有的 表/视图,点击 表/视图 后可以查询数据。类似与我们SSMS(SQL SERVER MANAGER STUDIO)中的查询功能:
3、SQL模型
SQL模型是根据已有表产生新的表。
连接完数据源后,可通过SQL将多张表关联成一张大表,并进行其他的数据处理(如字段重命名、新建计算字段、调整字段顺序等操作),建立数据模型可以弥补本身数据仓库中表的局限性。
4、数据值映射
有些值看起来不直观。
如数据库表中1代表男性,2代表女性。
我们可以通过配置映射值,将数字映射成相应的性别。
以上四个功能是我们查询功能的核心,具体细节我们开发时再进一步展开讨论。
三、需求分解 -- 数据采集
数据采集功能用来弥补ETL工具的不足。
有些情况下,系统的建设跟不上业务的发展,很多业务会产生数据,但是没有系统支持,当然也就不好通过ETL工具抽取,这个时候分散的数据就需要手工进行填报。
如果采用Excel填报,会有数据管理的问题。
我们开发一个数据采集模块,管理员定义好模板后,让用户既能通过界面进行填报零散数据,也能够下载Excel模板,通过模板批量导入导出数据。
1、模板管理
管理员可以创建填报模板,这些模板相当于是表结构,用户选择不同模板填入不同的采集数据。
2、界面填报功能
针对填报频率高的,零散数据,用户可以通过界面填报。
3、Excel数据导入导出
对于批量的数据,用户可以先下载模板。
日常工作中在Excel中整理好数据,通过Excel导入填报数据。
四、需求分解 -- 数据字典导出
一般数据仓库项目实施完成后,我们需要提供给客户数据字典。
自己用文档维护比较麻烦,我们也顺便增加一个数据字典的导出功能。
通过 配置数据字典模板、连接数据源,可以导出数据字典作为交付物。
总结
分解需求是开发的起点,我们用图来总结一下需求:
欢迎大家给我留言,happy coding :)