APP下载

面向软件项目管理的数据生命周期管理研究*

2023-03-14黄敏珍王璐璐林晓蕾李一丹

项目管理技术 2023年2期
关键词:数据管理生命周期阶段

黄敏珍 王璐璐 林晓蕾 李一丹

(1.中国铁道科学研究院集团有限公司电子计算技术研究所,北京 100081; 2.国家铁路智能运输系统工程技术研究中心,北京 100081; 3.北京市人大常委会,北京 101169)

0 引言

大数据、物联网、人工智能、区块链等技术的融合应用促进了各行业的数字化、智慧化转型升级,不断推动数字经济向前发展。特别是随着大数据技术的快速发展,数据成为重要资源。数据尤其是大数据的重要性已成为社会共识,相关人员对大数据技术、数据治理和数据生命周期管理等开展了大量研究,但数据生命周期管理与项目管理之间的关系、如何将数据生命周期管理的理念融入软件研发生命周期成为项目管理实践中常见的问题。

近年来,国内外学者开展了大量关于数据生命周期管理理论的研究,并提出了各种数据生命周期的模型。不同的业务场景有不同的数据生命周期模型,而数据来源于信息系统,所以信息系统的研发过程对数据的影响十分重要。本文从软件研发的角度分析各个环节存在的问题,将数据生命周期和软件生命周期理论进行融合研究,从数据生命周期管理的角度出发,研究加强软件项目管理的策略,将数据治理理念融入软件项目管理过程,从数据源头上做好数据管理,从而为后期大数据应用以及信息系统从信息化向数字化、智能化转型奠定良好的数据基础。

1 国内外研究现状

数据生命周期模型不固定,国外学者从质量、安全、生态、政府数据开放等不同的角度出发,提出了各种不同的生命周期模型。例如,1993年,Levitin等[1]基于数据质量的角度,提出了数据质量生命周期包括数据生产、数据存储、数据检索、数据使用4个阶段;2010年,Yu等[2]从数据安全的角度,提出了针对云数据的数据安全生命周期包括数据生产、数据存储、数据使用、数据分享、数据存档、数据销毁6个阶段;2014年,Ruegg等[3]从强调数据管理对生态学研究重要性的角度,将数据生命周期划分为数据计划、数据收集、数据质量确保和控制、数据分析、数据描述、数据保存、数据整合和再次分析8个阶段;2015年,Goben等[4]提出了数据生命周期模型包括数据识别、数据数字化、数据清洗、数据描述、数据存储、数据分享和数据分析7个阶段;2016年,Charalabidis等[5]从开放政府数据角度,提出了开放政府数据生命周期模型包括创建、预处理、策划、存储/获取、发布、检索、处理、使用和用户协作9个阶段。

国内学者也对数据生命周期模型进行了大量研究。例如,黄如花等[6]构建的政府数据生命周期模型包括数据创建与采集、数据组织与处理、数据存储与发布、数据发现与获取、数据增长与评价5个阶段;丁红发等[7]分析了政府数据开放过程中各个环节存在的数据安全和隐私保护问题,并提出相应对策;张聪丛等[8]主要研究了数据共享和使用过程中的隐私保护问题;师荣华等[9]结合数据生命周期理论,提出了图书馆可以尝试开展的科学数据服务;李平等[10]构建了面向全生命周期的铁路大数据安全保障技术体系;刘桂锋等[11]构建了基于数据生命周期的高校科学数据安全内容框架;聂云贝等[12]基于数据生态链视角对科学数据生命周期运行过程进行了分析;刘露等[13]提出了以数据生命周期为主线的治理框架。

从国内外数据生命周期的研究来看,数据生命周期没有统一、固定的模型,不同的角度、不同的业务场景有不同的数据生命周期模型。数据的产生往往来自信息系统,而信息系统建设也就是软件研发的生命周期对数据的影响十分重要。

2 软件生命周期中的数据管理需求

如图1所示,软件的生命周期包括立项、需求分析、概要设计、详细设计、编码、测试、运维、消亡8个阶段,可简化为系统的规划、分析、设计、实施和运行维护5个阶段,也可简化为立项、开发、运维及消亡4个阶段,开发阶段又可以分为需求分析、概要设计、详细设计、编码、测试5个环节。

图1 软件生命周期各阶段数据管理需求图

软件生命周期各阶段与数据相关的内容以及可能存在的数据管理风险和问题如下:

(1)立项阶段。包括项目可行性分析、立项建议、项目规划等,主要内容有项目背景及必要性分析、立项依据、建设目标、系统架构、系统功能、信息资源共享、风险分析、安全措施、进度计划、投资估算、效益分析等。这一阶段的数据管理需要规划各系统间的数据关系、数据资源共享、数据安全管理、数据风险分析和评估等。

(2)需求分析阶段。需要调研各方用户的需求,形成调研记录,最终形成需求规格说明文件。这一阶段存在着如何将用户的需求转化为数据模型、主要系统功能中的数据需求、数据接入要求、数据接入规范、各系统间关联关系等与数据相关的内容。

(3)概要设计阶段。设计人员根据需求规格说明文件进行设计,包括数据表设计,数据接口设计,每个表的字段名称、长度、类型设计,各个表之间的主从关系、一对一关系、多对一关系设计,可以用相关的工具软件设计出数据模型。从数据管理的维度看,存在元数据、主数据、参考数据的设计和规范制定等问题。

(4)详细设计阶段。详细设计是概要设计的深入,将上一阶段的数据概念模型、逻辑模型转化为具体的物理模型,包括详细制定数据标准、数据模型、元数据、业务规则、参考数据、安全规范等与数据相关的一系列内容。

(5)编码阶段。该阶段的主要任务是研发系统页面,涉及接入数据格式是否规范、录入或接入的数据是否需要进行校验。该阶段数据管理执行的质量将对数据的完整性、唯一性、实时性、有效性、准确性和一致性产生根本性影响,执行不到位将影响数据质量,增加数据处理和清洗的难度和工作量等,如果将不准确的数据录入系统还会影响后期数据利用。

(6)测试阶段。该阶段的主要任务是对比之前相关的设计文件,对系统进行功能测试、安全测试和性能测试,测试案例设计是否全面合理,并对数据的质量进行把关和检测,如页面字段的测试要进行数据的唯一性、准确性等方面的检测,业务流程的设计要覆盖整个流程和各个路径,检测数据的实时性、一致性等方面的内容。安全测试涉及数据的接入和共享等方面的安全。性能测试即压力测试,在测试系统最大并发压力的情况下,还要测试相关的回滚策略是否会造成脏数据的生成等内容。

(7)运维阶段。该阶段又分为实施与运维,系统经过测试正式上线试运行稳定后,即进入运维阶段。系统是否按照设计好的网络架构和安全架构方案实施,关系到数据传输过程是否安全、数据是否完整备份等。另外,在系统运维阶段发现系统问题时需进行漏洞修复,此过程将涉及数据结构的变更、数据接口的变更和相应相关数据设计文件的及时更新等问题。

(8)消亡阶段。从软件研发的角度,系统消亡很少被提及,因为系统消亡则意味着所有操作终止。但从数据管理的角度则不然,因为一旦系统消亡过程中的数据处理不当,将造成数据泄漏、隐私保护、安全等方面的问题。

3 数据生命周期管理与软件项目管理的融合应用

3.1 数据生命周期与软件生命周期的关系

上文提及,数据的全生命周期没有统一、固定的模型。从软件研发过程的角度来看,可将数据的全生命周期分为数据创建、数据传输、数据存储、数据处理、数据使用或共享、数据销毁6个关键阶段。数据创建与软件研发项目的立项、需求分析、概要设计、详细设计、编码等阶段紧密相关;数据传输与概要设计、详细设计阶段的联系最为紧密;数据存储与系统运维阶段的联系比较紧密;数据使用或共享与系统运维相关;数据处理往往与大数据相联系,将系统的数据导入大数据平台涉及数据清洗、数据导入、数据分析和数据可视化等;数据销毁与系统运维、系统消亡阶段的关联较多。当然,数据生命周期与软件生命周期之间的关联关系不是绝对的,只是某些环节之间的联系比较紧密。将数据生命周期与软件生命周期相结合,能够将数据管理理念更好地融入项目管理实践,从传统“囚笼式管控”转向伴随数据流动“主动防治”的动态思维的方式[13],黄敏珍等[14]对数据资产与项目管理实践也进行了融合应用研究。

3.2 数据生命周期管理与软件项目管理的融合应用

数据生命周期管理策略如图2所示,具体内容如下:

图2 数据生命周期管理策略

(1)在数据创建阶段,对数据创建过程进行管理,为后续各阶段的数据使用奠定基础。数据创建过程较为复杂,如结构化数据的创建过程包括表的设计、系统数据的录入;非机构化数据的创建,如视频文件,包括终端视频接入、数据格式的标准与规范等。这一阶段需要根据不同的系统和不同的数据类型制定相关数据规范性文件,严格按照统一的规范和标准进行数据构建。在软件项目的需求、设计评审阶段,专家组成员中须包括数据管理专家,对数据的规范性进行专门的审核和把关,在数据设计的源头上做好数据规范性管理。

(2)数据传输是非常关键的一环,尤其是要保证数据传输过程的安全。在项目的设计阶段就要设计好数据安全传输机制,如利用数据加密技术预先制定机密策略,选择加密算法、强度和加密对象,根据加密策略对数据传输两端的数据库分发密钥,从而建立加密传输通道进行数据传输,之后进行解密存储和校验。另外,可利用可信执行环境(Trusted Execution Environment,TEE)、多方安全计算(Secure Multi-Party Computation,MPC)、联邦学习(Federated Learning,FL)等隐私计算技术加强数据传输过程中的隐私保护。

(3)数据存储也比较复杂,涉及存储的机房条件、服务器的选型、存储安全防护等一系列问题。在这一阶段,尤其要重视数据安全与数据隐私保护。在数据安全方面,对系统进行分级分类,利用数据加密、软硬件数据保护、备份、数据屏蔽等技术加强数据的安全管理,防止非授权用户破坏,防止数据泄露或网络攻击;在数据隐私保护方面,分析系统涉及的个人身份信息或敏感信息,对敏感度进行分级管理,如对个人身份信息、财产信息、生物识别信息和网页浏览记录等行为轨迹信息进行严格管理,利用相关加密或脱敏技术进行管理。

(4)在数据处理阶段,需要进行数据处理的场景较多,包括一个系统内升级迁移过程中的数据处理、多源数据处理和大数据汇集处理。在系统升级迁移过程中,涉及升级前后历史数据的处理。在制订迁移方案的过程中,需要明确历史数据的处理方式并进行评审;在多源数据处理方面,对于有些系统,如果数据接入渠道比较多,包括各种终端,有可能造成数据不一致的情况,需要做好数据接入的规范化处理;在大数据汇集处理方面,通过各种数据汇集、清洗工具处理异常数据或者不准确、不唯一的数据,做好数据清洗、数据导入、数据分析和数据可视化等。

(5)在数据使用或共享阶段,数据的使用不仅包括系统内部的访问与使用,还包括对外的开放和共享。首先,梳理数据开放与数据共享的定义,世界银行定义的开放数据是:“能被任何人出于任何目的、不受限制地进行自由利用、再利用和分发,并最大限度保持其原始出处和开放性的数据”。而数据共享比数据开放更封闭,是在特定条件下的不同实体间进行数据的交换和利用。其次,对共享数据进行分类管理(可分为不可共享、仅内部共享和外部共享等),以及严格的审批管理和全生命周期管控。

(6)在数据回收或销毁阶段,针对超过保留期限或经确认已失去价值的数据制定相关的回收机制。数据的回收或销毁可分为5类:

①数据的技术性要求。例如,在数据的采集、汇集、迁移、导入等过程中有多个数据源,存在数据重复、噪声数据等问题,需要根据实际情况进行数据梳理、清洗、删除等操作。

②相关方的数据清理要求。例如,针对个人隐私数据的删除、过时信息的清理等,可以按照实际情况制定合理合规的数据清理规范。

③时效性数据的归档和销毁。系统数据的时效性和存储资源是有限的,需要根据企业的实际情况进行数据的分级分类,针对保存时间、销毁方式和归档方式制定统一的规范要求和标准。

④系统消亡过程的数据清理。对于老旧系统中的数据,需要分析数据的保存时间要求,制定数据归档或者导入新系统相关标准。对于彻底无用的数据,需制定相关的销毁流程和规范。

⑤保密数据销毁。对保密数据的销毁须严格按照相关保密要求进行物理上的彻底销毁,或者按照相关要求进行归档后按照秘密等级进行有效的管理。

4 结语

数据是数字经济的基础要素,做好数据治理和数据生命周期管理是关键的基础性工作。本文在研究数据生命周期模型的基础上,分析了软件研发生命周期各个环节可能产生的数据管理需求,对数据生命周期与软件生命周期进行了融合应用研究,分析了数据创建、数据传输、数据存储、数据处理、数据使用或共享、数据销毁6个关键阶段与软件生命周期之间的联系,并提出了各个阶段的数据管理策略和思路,从而将数据生命周期管理理念融入软件研发过程,从根源上提高数据质量,促进数字经济与实体经济的融合发展。

猜你喜欢

数据管理生命周期阶段
全生命周期下呼吸机质量控制
企业级BOM数据管理概要
关于基础教育阶段实验教学的几点看法
定制化汽车制造的数据管理分析
海洋环境数据管理优化与实践
CTCS-2级报文数据管理需求分析和实现
在学前教育阶段,提前抢跑,只能跑得快一时,却跑不快一生。
从生命周期视角看并购保险
民用飞机全生命周期KPI的研究与应用
企业生命周期及其管理