APP下载

大数据系统中的软件工程管理方法探究

2017-02-10张宇航

中国高新技术企业 2016年34期
关键词:系统架构软件工程项目管理

摘要:文章在阐述了项目管理和软件工程项目管理有关理论和方法的基础上,通过分析研究大数据系统下软件工程的管理模式就是通过一个规范、严谨的项目管理组织机构和制订的项目管理成功标准来贯彻、实施和完成项目的管理。文章重点分析了软件服务中大数据的产生、大数据环境下系统架构的设计模式和工程的高效管理方法。

关键词:大数据系统;软件工程;项目管理;高效管理方法;系统架构 文献标识码:A

中图分类号:TP393 文章编号:1009-2374(2016)34-0093-02 DOI:10.13535/j.cnki.11-4406/n.2016.34.046

1 概述

随着互联网技术的快速发展,网络上产生海量大规模的数据,这些海量数据在金融、农业、医疗、商业等领域都有极其重要的应用。因此,通过对大数据研究从互联网的海量数据中挖掘出有价值的信息资源。虽然大数据有极其重要的研究价值,但是海量数据处理给软件设计带来了巨大挑战。大数据时代的到来,使传统的软件工程面临新的机遇与挑战。众所周知,传统的软件生产模式一般以正向工程开始,然后进行软件维护、逆向工程与再工程等,而大数据时代的软件生产模式则以逆向工程开始。由于软件资源的大量积累以及大规模软件重用技术的发展与应用,软件数据挖掘与软件集约化生产会变得越来越重要,传统意义下一切从头开始的软件项目会变得越来越少。

互联网的数据正以指数级速度增长,2010年,全球产生的数据超过1ZB;截至2015年,平均每年产生9ZB的数据;数据的产生主要来源于传感器、移动终端和电脑终端;所有这些数据在涉及人类基因组学、医疗保健、石油和天然气、搜索、监控、金融等诸多领域提供了大量潜在的研究价值。IDC认为能够使用大数据解决方案将蓬勃发展实时业务决策,而那些无法接受和利用这种转变的,在市场竞争中处于劣势,且将越来越多地发现自己面对潜在的故障组织。大数据技术描述新一代的技术和架构,通过对大数据进行科学组织、分析其中的数据价值。

大数据是涉及数据存储、可变复杂的大型数据及数据的进一步可视化处理过程;大数据架构需要具备同时处理数据存储要求和分析海量数据的大型服务器的处理能力。其中挖掘潜在模式和隐秘关系的过程称之为大数据分析。挖掘的潜在信息对公司来说能够帮助获得更丰富、更深刻的见解,并能够帮助公司在竞争中占有绝对的优势。这也是大数据的价值所在,更加精确地执行和分析数据中的潜在价值。本文将讨论大数据时代软件生产模式的变化、特征及其发展趋势。除新的概念外,还将重点介绍一些软件管理方法以及工业实践经验。我们正处于一个软件工业大变革的前夜。随着软件资源的大量积累与有效利用,软件生产的集约化与自动化程度都将迅速提高,软件生产质量与效率的大幅度改进将成为可能。

2 软件服务产生的大数据

互联网应用在各行业的广泛推广和使用,使得互联网应用服务产生海量的数据,主要包括流式密集数据和历史密集数据。比如,国内最大的电子商务阿里巴巴数据中心目前已经积累超过100PB的数据;中国移动通信公司目前建立包含办公自动化、企业标准化等超过1万业务流程。传统的软件工程中程序设计思想是“程序=数据结构+算法”,主要考虑程序的效率和正确性,忽视了程序中产生的数据,这将大大缩短程序的生命周期。在软件理论漫长的发展过程中,众多学者一致认为软件就是健壮的程序和详细的文档,其中核心部分就是完备的文档,包括需求文档、工程数据、通用规范等,整个软件设计过程更加关注文档质量和标准化开发模式。因此,在这一共同协议下,促使软件设计更加规范和标志,进而从整体上提升软件质量。

随着系统业务的扩容和用户的使用,要求软件能够处理大规模数据的能力。许多大型互联网企业越来越重视软件服务中流式数据和密集型数据,数据主要来源于用户体验。如图1所示,行业对数据的处理要求越来精细,技术很具有挑战性,其中如何将大数据基础设施作为服务、大数据平台作为服务、数据价值作为服务以及大数据分析作为服务,已经是大数据环境软件工程的研究主要难题。

从软件发展创新模式来分析,服务消费者、服务提供方及PaaS平台三方产生海量线上流式数据和离线密集型数据。比如,TB级的用户交流数据和PB级的用户行为操作数据、TB级的系统日志数据等,这些海量数据对软件开发、维护、管理有着至关重要的作用,同时这些数据对软件服务周期也有决定性的作用。本实质上来说,这些数据只是在规模和量上来衡量,对其的研究缺乏标识,尤其缺少语义化的处理。因此,对如此海量数据的处理,需要从不同的研究方式和创新思维对数据进行组织和处理,形成面向领域内的智能知识主体。以知识为中心,数据为驱动,提供一系列数据服务平台,从而体现出现代软件工程是以大数据为中心开展的。

3 大数据时代软件工程管理模式

根据大数据时代背景下,软件工程的发展从经典的CS模式发展到BS模式以及现在的以面向服务的软件工程,简称为软件服务工程。该设计模式中以服务为基础的单位,能够快速构建应用和共享服务,能够按需分配,同时也能很好地适应分布式程序开发。这种模式特点是将资源虚拟化、应用服务化,向外提供统一服务接口,能够很好地解决大数据环境下动态、分布变化的情况和异构系统数据以及系统整合问题。这种面向服务的软件设计模式在大数据、移动互联网等新兴领域得到广泛的使用。

项目管理是在一定的费用、品质及进度约束下,为达到客户和其他利益相关者的需求、目的和目标所要进行的大量活动的规划、监督和指导。项目管理有两个重要的研究领域:系统工程与项目控制。从图1中看出,两个领域有重叠部分,系统工程为重叠部分提供技术层面的输入,项目控制主要提供规划、费用及进度方面的输入。工程的管理主要是通过文档来体现的,其中主要包括系统文档树和系统工程管理计划(SEMP)。

系统文档树就是以一种树形结构化形式描述项目所需的,面向系统工程的一系列文档以及在自定向下的结构化形式中各个系统工程文件之间的相互关系。系统文档树是由系统工程师在提案阶段基于工作说明书(SOW)和合同数据需求清单(CDRL)准备,以便后续的成本和进度确定所需的文本化的任务。系统文档树由项目经理批准并在项目生命周期内维护更新。系统工程管理计划(SEMP)是描述项目在系统工程方面的任务与进度需求以及这些系统工程任务如何被管理与实现的文档。项目管理计划(SEMP)是由系统工程师基于工作说明书(SOW)和合同数据需求清单(CDRL)在提案过程中描述系统工程过程以及系统工程需求如何被计划、组织、集成、监测、控制和测量。SEMP应该由项目经理批准并在项目生命周期内维护更新。系统工程管理计划基于SOW及合同数据编制,包括三类关键要素:开发项目规划与控制、系统工程过程以及工程专业集成。

第一,开发项目规划与控制。开发项目规划与控制描述在管理开发项目中必须实现的系统工程任务,包括:SOW(工作说明书);组织;进度计划;程序、设计和测试准备评审;技术性能测量;风险管理。

第二,软件系统工程过程。系统工程过程描述用于系统开发的系统工程过程,包括:运行需求;功能分析;系统分析与权衡策略;系统测试与评估策略。

第三,软件工程专业集成:工程专业集成描述多个专业工程领域如何被继承到主系统设计与开发中,包括:可靠性工程、可维护性工程、可用性(RMA)工程;可生产性工程;安全性工程;人因工程。

4 结语

互联网的快速发展使得软件的更新迭代更加频繁,大数据时代的到来更是对软件的性能和安全的重要考验。如何在大数据环境下,构建一个高效、安全、健壮的软件,除了需要技术的支持,更多地需要一套科学工程理论、技术标准、软件管理方法的融合。由于软件资源的大量积累以及大规模软件重用技术的发展与应用,软件数据挖掘与软件集约化生产会变得越来越重要,传统软件无法满足当前的需求,大数据环境下提出一般软件工程的管理模式对时下的软件工程开发是非常有帮

助的。

参考文献

[1] 王符伟.大数据时代下软件工程关键技术分析[J].电子技术与软件工程,2015,(23).

[2] 朱怀英,展之桂.大数据应用的现状与展望[J].工业c,2016,(17).

[3] 孟雪井,李宏飞,杨亚飞.大数据背景下统计软件在数据分析中的应用[J].现代经济信息,2016,(8).

[4] 于兴文.基于大数据的创新型“归一”软件设计思路[J].科教导刊(旬刊),2015,(11).

[5] 汪子阳.软件工程技术发展思索[J].电脑迷,2016,(1).

[6] 李幼平,杨鹏.共享文化大数据的新机制[J].中国计算机学会通讯,2013,9(5).

作者简介:张宇航(1981-),男,辽宁本溪人,本溪广播电视大学讲师,工学硕士,研究方向:计算机。

(责任编辑:蒋建华)

猜你喜欢

系统架构软件工程项目管理
关于如何创新和完善计算机软件工程管理的探讨