a. 引言
本文档的目的是详细的介绍行业咨询分析系统项目所包含的需求,以便我们的客户能够确认产品的确切需求以及开发人员能够根据需求设计编码。
本文档按以下要求和约定进行书写:
(1)标题最多分三级,大标题为宋体12号加粗,中标题为宋体12号加粗,小标题为仿宋11号
(2)正文为仿宋11号,无特殊情况下,字体颜色均采用黑色。
(3)特殊情况另作规定
本文档的预期读者有用户、项目管理人员、开发人员。
政务数据一体化是实现城市公共信息整合共享的重要措施,有利于将城市目前分散的数据资源统一集中起来提供平台化服务,提高政务数据的共享率。本项目为公众提供一站式的政务数据获取通道,旨在将分散在各厅局部门的数据进行整合,通过“一站式”门户,将经济、民生、交通、医疗、教育、环境等方面数据以各种开放的数据格式发布,对外提供数据服务。
[1]需求工程:软件建模与分析,骆斌、丁二玉,高等教育出版社,2009-04-01,ISBN:9787040262957
处在信息技术高速发展的今天,电子政务亦乘上“信息技术之车”在飞速前进。在政务服务中,数据服务占据着重要地位。政务数据关系国计民生,与公众生活息息相关。它是政务部门(各级行政机关、事业单位、社会团体或者其他依法经授权、受委托的具有公共管理职能的组织)在履行职责过程中产生或者获取的具有行业广覆盖且专业权威的海量数据,其基础性和完整性不言而喻。在新一代信息技术的加持下,政务数据可机器读取、可追踪溯源,特别是可融合增值,供社会化再利用。2022年底,国务院印发《全国一体化政务大数据体系建设指南》(以下简称《指南》),指南聚焦党中央、国务院关于加强数字政府建设的决策部署。而近年以来,我国地方政府数据平台发展的整体情况呈现为进步迅速、蔚然成林的态势。与政府数据直接相关的法规政策和标准规范实现了从无到有、逐渐落地的发展态势,政策驱动各地政府部门数据开放、治理加速。
就目前而言,政务数据平台正处于机遇期,行业内仍有需求。我国政府虽已发布《促进大数据发展行动纲要》,将数据定性为国家基础性战略资源,但各级政府在推动政务大数据应用方面,仍存在不少问题。人们对于一个功能完整、方便快捷的政务数据平台的需求依然十分迫切。
b.3用户类和特征
- 系统开发人员
系统开发人员是指对政务数据一体化平台进行开发与维护的人员,其承担政务数据登记汇聚、共享应用、公共服务、开放开发的技术支撑,以及有关平台建设运行、安全保障和日常管理等工作。及时更新系统。
- 数据管理人员
数据管理人员负责对政务数据采集、登记、汇聚、共享、服务等执行情况进行监督检查,加强对技术服务单位服务监督评价,评估检查政务数据开放开发情况,及时纠正相关违法违规行为。
- 政府各部门工作人员(政务数据提供方)
政府各部门工作人员是指使用政务数据一体化平台交换、共享数据的政府工作人员。他们负责采集处理,登记汇聚、更新维护政务数据,进行数据信息交换与共享,高效利用开放共享的数据。利用系统提供的数据资源及工具进行数据分析、资源整合。
- 个人用户
个人用户是指使用政务数据一体化平台查询数据的普通民众,他们查询、利用政府各部门公示数据。
客户机 市面常见PC
2操作系统和版本
服务器 Linux系统
客户机 windows7以及更高版本、安卓11以及更高版本、iOS13以及更高版本
3软件组件
客户机 浏览器软件
b.5设计和实现上的限制
1. 开发环境约束:
(1)Web框架: 前端(Bootstrap3框架)+后台(Django2.0.2+xadmin框架)
(2)开发工具:Vs-code1.75+MySQL5.7.+Apache Tomcat8.0
(3)开发语言:HTML+CSS+JS+SQL语言
(5)开发测试浏览器:Google chrome、Edge
2. 开发周期短:
两个月的开发时间需要开发者合理规划时间,做到多项任务并发。
3.所采用的方法与技术有限:
项目团队成员的技术水平不够成熟,需要在开发中并发学习多种技术和能力。
4.所采用的代码规范约束:
项目团队成员需要制定一定的代码规范约束,以保证后期代码的合并顺利。
(1)团队成员的积极合作配合,为了项目的开发和实施,对个人时间进行合理规划同时为团队做出合理牺牲,配合队友完成任务;
(2)团队掌握先进的适用于该项目的技术,能够保证系统的稳定性、创新性;
(3)团队为软件系统的运行提供必要的且能够满足系统运行条件的硬件环境和通讯环境;
(4)政府相关部门将在较长时期内具有对数据整合、数据处理和数据共享方面的需求,能够长期提供相关数据、人员、资金支持。
c. 外部接口需求
具体界面详情见附录C
c.2软件接口
- 连接到数据库MySql、Oracle;
- 客户端运行于windows7及更高版本的Windows系统;
- Web端运行于Internet explorer 6.0及更高版本的web浏览器;
- 服务器采用Linux系统。
c.2.1 数据库接口
c.2.1.1 函数名称:ConnectDatabase()
c.2.1.2 函数描述:连接到数据库
c.2.1.3 参数列表:
数据库类型:字符串类型,表示要连接的数据库类型,例如MySQL、Oracle等
数据库地址:字符串类型,表示数据库服务器地址
数据库端口:整数类型,表示数据库服务器端口号
数据库名称:字符串类型,表示要连接的数据库名称
用户名:字符串类型,表示连接数据库的用户名
密码:字符串类型,表示连接数据库的密码
c.2.1.4 返回值:整数类型,表示连接状态,0表示连接成功,-1表示连接失败
c.2.2 操作系统接口
c.2.2.1 文件系统接口
c.2.2.1.1 接口类型:系统调用
c.2.2.1.2 功能说明:提供对文件的读、写、创建、删除、修改等操作。
c.2.2.1.3 输入参数:
文件名
操作类型(读、写、创建、删除、修改)
文件权限(可读、可写、可执行)
c.2.2.1.4 输出参数:
文件内容
操作结果状态
c.2.2.2 进程管理接口
c.2.2.2.1 接口类型:系统调用
c.2.2.2.2 功能说明:提供对进程的创建、销毁、等待等操作。
c.2.2.2.3 输入参数:
进程名称
进程类型(前台、后台、系统服务等)
进程优先级
c.2.2.2.4 输出参数:
进程ID
操作结果状态
c.2.2.3 内存管理接口
c.2.2.3.1 接口类型:系统调用
c.2.2.3.2 功能说明:提供对内存的分配、释放等操作。
c.2.2.3.3 输入参数:
内存大小
分配类型(物理内存、虚拟内存等)
c.2.2.3.4 输出参数:
内存地址
操作结果状态
c.2.3 Web服务接口
c.2.3.1 接口名称:UserAuthentication
c.2.3.2 接口描述:用于用户身份验证
c.2.3.3 参数列表:
用户名:字符串类型,表示用户的用户名
密码:字符串类型,表示用户的密码
c.2.3.4 返回值:整数类型,表示身份验证结果,0表示验证通过,-1表示用户名或密码错误
c.2.3.5 接口名称:CreateUserAccount
c.2.3.6 接口描述:用于创建新用户账户
c.2.3.7 参数列表:
用户名:字符串类型,表示要创建的用户的用户名
密码:字符串类型,表示要创建的用户的密码
电子邮件:字符串类型,表示要创建的用户的电子邮件地址
c.2.3.8 返回值:整数类型,表示创建账户的结果,0表示创建成功,-1表示用户名已存在
- 支持常见PC端、移动端
- 内存:2G以上
- 磁盘空间:20G以上
c.4通信接口
c.4.1.1 支持的协议:SMTP、POP3、IMAP4
c.4.1.2 消息格式:MIME格式
c.4.1.3 安全性要求:SSL/TLS加密传输
c.4.1.4 数据传输速率:最高100Mbps
c.4.1.5 同步通信机制:异步通信
c.4.2 Web浏览器接口
c.4.2.1 支持的标准:HTTP、HTTPS
c.4.2.2 消息格式:HTML、XML、JSON
c.4.2.3 安全性要求:SSL/TLS加密传输
c.4.2.4 数据传输速率:最高1Gbps
c.4.2.5 同步通信机制:异步通信
c.4.3 网络通信接口
c.4.3.1 支持的协议:TCP/IP、UDP、FTP、SSH
c.4.3.2 消息格式:二进制数据、ASCII码文本
c.4.3.3 安全性要求:SSL/TLS加密传输
c.4.3.4 数据传输速率:最高10Gbps
c.4.3.5 同步通信机制:同步通信、异步通信
d.系统特性
以下是一个关于政务数据一体化的需求规格说明的系统特性范例,其中包括了数据访问、数据修改、数据管理、权限授权、用户登录注册和数据查询与检索等功能。
1. 数据访问
1.1 描述
用户可以通过系统访问政务数据。
1.2 优先级
8
1.3 激励响应序列
用户登录系统 -> 点击政务数据 -> 查看政务数据
1.4 功能需求
用户应该能够查看政务数据的详细信息,包括标题、正文、发布时间、作者等信息。
系统应提供数据可视化和分析功能。
系统应支持通过图表、表格、地图等方式对数据进行可视化展示。
系统应支持数据的统计分析、趋势分析和空间分析。
对于包含敏感信息的政务数据,系统应该能够根据用户权限进行访问控制。
系统的数据应在访问和共享过程中确保数据的完整性和一致性。
2. 数据修改
2.1 描述
政务数据提供方可以通过系统对政务数据进行上传、修改和更新。
2.2 优先级
5
2.3 激励响应序列
政务数据提供方登录系统 -> 点击政务数据 -> 修改政务数据
2.4 功能需求
政务数据提供方应该能够对政务数据进行修改和更新。
政务数据提供方应该能够对政务数据进行删除。
在对政务数据进行修改和删除操作时,系统应该记录操作人员、操作时间和操作内容等信息,以便进行审计。
3. 数据管理
3.1 描述
系统管理员可以通过系统管理政务数据的元数据信息。
3.2 优先级
3
3.3 激励响应序列
管理员登录系统 -> 点击管理政务数据 -> 管理政务数据的元数据信息
3.4 功能需求
系统管理员可以新增、修改和删除政务数据的元数据信息,包括数据名称、数据描述、数据分类等信息。
系统管理员可以通过元数据信息对政务数据进行分类和检索。
系统应提供数据加密、审计日志记录和其他安全功能,确保数据安全和隐私保护。
4. 权限授权
4.1 描述
系统管理员可以授权用户及政务数据提供方对政务数据进行访问和修改。
4.2 优先级
8
4.3 激励响应序列
管理员登录系统 -> 点击授权管理 -> 对用户/政务数据提供方进行权限授权
4.4 功能需求
系统应实现严格的数据权限管理。
系统管理员应该能够对用户进行权限授权,包括访问政务数据和修改政务数据的权限。
系统管理员应该能够控制用户访问政务数据的范围。
用户的访问和修改权限应该根据用户的身份和角色进行控制。
5. 用户登录注册
5.1 描述
用户需要通过注册并登录系统才能访问政务数据和进行数据修改等操作。
5.2 优先级
7
5.3 激励响应序列
用户打开系统主页 -> 点击注册 -> 注册成功后登录系统
5.4 功能需求
用户应该能够通过系统注册新账户。
用户应该能够通过注册的账户登录系统,以便访问政务数据和进行数据修改等操作。
用户应该能够通过系统找回密码和修改个人信息等功能。
6. 数据查询与检索
6.1 描述
用户可以通过数据查询与检索功能查询本平台的相关数据。
6.2 优先级
6
6.3 激励响应序列
用户打开系统主页 -> 输入查询信息-> 点击搜索显示结果
6.4 功能需求
系统应提供灵活高效的数据查询和检索功能。
系统应支持基于关键词、属性和时间的查询。
系统应提供模糊搜索、精确搜索和范围搜索功能。
e其它非功能需求
- 页面跳转时间:2s内
- 精确搜索反馈结果:<=1s
- 优化:从产品体验出发做优化,比如某个页面数据量大,导致加载时间长,给用户提供加载进度条,预计加载时间,减少用户焦虑,以及日常使用的分页加载,每次加载部分数据,当用户进行操作时,再逐渐加载。
- 数据吞吐量:2万条/分钟
- 并发用户数:10w
e.2安全设施需求
e.3安全性需求
e.4软件质量标准属性
e.5业务规则
规则定义 | 规则类型 | 静态或动态 |
用户必须输入正确的用户名和密码才可进入系统。 | 约束 | 静态 |
用户的id不可修改,密码、性别、出生日期等允许用户本人修改。 | 约束 | 静态 |
只有管理员才有增删查询用户信息的权利以及授权管理权力。 | 约束 | 静态 |
只有经过身份验证的政府工作人员才能上传、修改数据。 | 约束 | 静态 |
只有有权限的用户可以下载特定数据。 | 约束 | 静态 |
以下为部分用户帮助文档:
1.政务数据一体化平台的定位和宗旨是什么?
本平台致力于提供各政府部门可公开的各类数据资源及服务,为社会各界获取全国可公开政务信息提供便捷通道,为企业、科研院校和社会公众开展政府信息资源的社会化开发利用提供数据支撑,推动分析研究工作的开展以及相关产业发展。
2.如何获取该平台的数据资源?
本网站提供两种方式获取数据资源:下载数据、在线调用API。如需使用本平台服务,请先注册。只有成为本网站注册用户后,才可以获取相应的资源服务。如需获取特殊数据,请申请授权,授权通过后,可以使用。
3.平台主要提供哪些类数据资源?
数据以文字、图片、视频的方式呈现。
从数据内容上看,本平台数据主要涉及各政府部门业务流程中产生的、可公开的、与社会发展和百姓生活较为贴近的专题数据,如环境保护、交通旅游、教育医疗、文体娱乐等涉及各方面的专题数据。
4.如何保证本平台数据资源的及时性与准确性?
平台数据的上传与修改均需通过身份验证,当用户验证为政府工作人员后,才能被授予此权限。因此,平台已经提供的数据可以保证都是来源于各政府部门。每类数据都有其固定的更新周期,各部门会根据数据的更新周期进行更新。
5.网站上如果没有我所需要的数据资源,怎么办?
如果您没能从本网站查询获取到您所关注的数据资源,请您积极反馈。可通过平台“反馈”区块参与我们网站的数据调查,将您的具体需求进行在线填写。后台受到反馈后,我们将会根据您的需求,联系相关部门。
暂无
基于Web应用程序的服务能力封装成接口,并通过API网关开放给客户端调用。
2 数据 Data
对事实、概念或指令的一种形式化表示,适用于以人工或自动方式进行通信、解释或处理。
3 政务数据资源目录 Directory of government data resources
通过对政务数据资源依据规范的元数据描述,按照一定的分类方法进行排序和编码的一组信息,用以描述各个政务数据资源的特征,以便于对政务数据资源的检索、定位与获取。
4 政务数据提供方 Government data provider
基于政务数据一体化平台,利用各种技术向其他政务部门、企业或公众提供政务数据的实体。
附录B:分析模型
结构化分析:
业务需求 | 实现业务需求需要的系统特性 | 局部解决方案的对外交互 |
BR1:数据访问 | SF1.1:向有权限的用户提供数据的预览图、下载链接以及接口 | 内部输入:调整整合好的数据 |
SF1.2:数据简易分析和可视化 | 内部输入:服务请求信号 | |
BR2:数据新增与修改 | SF2.1:向有权限的政务数据提供方提供数据新增与修改界面 | 内部输入:申请的相关数据 |
SF2.2:修改相关数据 | 外部输入:服务请求 | |
BR3:数据管理 | SF3.1向有权限的用户提供数据管理界面 | 内部输入:申请的相关数据 |
SF3.2:管理相关数据 | 外部输入:服务请求 | |
BR4:用户授权 | SF4.1 为管理人员提供授权界面 | 内部输入:申请的相关数据 |
SF4.2 权限的修改 | 外部输入:服务请求 |
DFD片段及01层图分析
事件 | 系统的响应 |
用户发出登录/注册请求 | 系统记录用户信息,判断是否合格,合格则通过请求给予相应权限,否则不予处理 |
用户发出数据访问申请 | 系统调出访问界面,给出数据的预览图、下载链接以及接口 |
政府人员发出数据修改申请 | 系统调出修改界面,修改好相关数据 |
管理人员发出数据管理申请 | 系统调出管理界面,完成相关数据的管理操作 |
管理人员发出授权 | 系统调出用户授权界面,完成后续的用户权限修改动作 |
图 1 上下文图
图 2 DFD0层图
图 3 DFD1 登陆注册
图 4 DFD1 数据访问
数据字典
名字 | 用户信息表 | 名字 | 用户授权表 |
别名 | 用户表注册信息表 | 别名 | 授权表 |
描述 | 保存用户注册信息 | 描述 | 保存用户访问资源权限信息 |
定义 | 用户信息=用户id+账户名+密码+联系方式 | 定义 | 授权=用户id+资源id+是否支持使用接口 |
名字 | 资源信息表 | 名字 | 政务数据 |
别名 | 预览信息表 | 别名 | 政务数据资源 |
描述 | 保存资源可供预览的信息 | 描述 | 保存平台存储的数据 |
定义 | 资源信息=资源ID+资源名称+主题+部门+出版日期+资源类型+摘要+下载量+资源地址 | 定义 | 数据=资源id+更新时间+数据内容 |
图 5 ERD
UML建模分析:
- 建立用例模型
1.识别参与者
2.合并特性获得用例
参与者 | 特性 | 用例 |
开发者 | FEAT01.开发人员在开发完成后根据管理人员的指示对系统进行维护 | UC01.维护系统 |
管理人员 | FEAT03.管理人员将数据总览展示功能设计为数据分类、数据查询、用户管理,具体数据展示功能为数据预览(表格-csv等、缩略图)、数据订阅、数据下载(表格、文档等)、数据调用接口(json等)、数据信息(资源摘要,统计信息-条目数、平均值等,数据可视化-折线图、柱状图、饼状图)、数据信息反馈(纠错、评论等) FEAT05.登录、注册、数据管理(数据备份、数据恢复、数据操作、数据查询)、授权 | UC02.分类数据展示功能 UC2A.管理人员相关操作(登录、注册、管理数据)(拓展用例) |
个人用户 | FEAT04.用户能够按主题、机构、时间、关键词、是否提供接口等查询相关数据 FEAT05.登录、注册、订阅内容、反馈、获取授权 | UC03.个人用户相关操作(查询数据、登录、注册、普通获取授权) |
政府用户 | FEAT04.用户能够按主题、机构、时间、关键词、是否提供接口等查询相关数据 FEAT05.登录、注册、获取授权(数据上传、删除、修改,特定数据下载、接口获取) | UC04.政府用户相关操作(查询数据、登录、注册、高级获取授权) |
3.绘制用例图
4.简要描述用例
用例编号 | UC01 |
用例名称 | 维护系统 |
用例概述 | 开发人员在平台使用的过程中根据管理人员的指示对系统进行维护 |
主参与者 | 开发人员 |
补充说明 | 在维护系统过程中分析故障产生的原因,尽量做到同类故障不再犯 |
5.详细描述用例
用例编号 | UC02 | |
用例名称 | 分类数据展示功能 | |
用例概述 | 管理人员将数据总览展示功能设计为数据分类、数据查询、用户管理,具体数据展示功能为数据预览(表格-csv等、缩略图)、数据订阅、数据下载(表格、文档等)、数据调用接口(json等)、数据信息(资源摘要,统计信息-条目数、平均值等,数据可视化-折线图、柱状图、饼状图)、数据信息反馈(纠错、评论等) | |
主参与者 | 管理人员 | |
前置条件 | 开发人员将平台搭建 | |
后置条件 | 将数据分类展示 | |
基本事件流 | 步骤 | 活动 |
1 | 数据总览展示分为三大模块,对每一块进行不同的设计和传输数据 | |
2 | 数据具体展示较为繁琐,结合表、图、文字等综合来展示 | |
规则与约束 | 需要分为两个层次来展示数据总览,在不同的层次操作最终都能找到所对应的数据 |
6.划分用例优先级
优先级 | 用例 | 说明 |
1 | UC01.维护系统 | 系统的正常运行是最重要的,需要确保系统的正常运行才能使用其他的功能 |
2 | UC02.分类数据展示功能 | 设计数据总览展示功能和具体展示功能,较为核心的功能 |
UC2A.管理人员相关操作(登录、注册、管理数据) | 对相关信息的录入,确保其他用户能够用注册、登录,并查询到相关资料 | |
3 | UC03.个人用户相关操作(查询数据、登录、注册、普通获取授权) | 不同用户的相关操作,重要性次之 |
UC04.政府用户相关操作(查询数据、登录、注册、高级获取授权) |
- 建立类模型
- 发现类:管理人员、开发人员、数据、个人用户、政府用户
- 建立类模型:
- 建立交互图
- 建立状态图
- 建立状态图&用户界面设计
首页:
登录及注册页面:
搜索结果页面:
数据展示页面:
接口信息返回: