网站地图 原创论文网,覆盖经济,法律,医学,建筑,艺术等800余专业,提供60万篇论文资料免费参考
主要服务:论文发表、论文修改服务,覆盖专业有:经济、法律、体育、建筑、土木、管理、英语、艺术、计算机、生物、通讯、社会、文学、农业、企业

外包软件项目管理的框架和相关问题分析

来源:原创论文网 添加时间:2021-11-16

  摘    要: 质量产生于过程。软件外包项目研制过程质量对委托方项目成功与否起到关键作用。为确保软件外包满足合同规定、指标满足技术协议要求,文章依据有关项目管理标准、项目研制规定,深入研究软件外包项目立项、建立外包协议、项目研制、验收交付等活动特征,分析每个活动应注意的关键问题,给出建议措施,为提升软件外包管理质量提供参考。

  关键词 :     软件外包;外包项目管理;过程管理;

  0 、引言

  软件外包(Software Outsourcing,SO)是指企业为了削减软件项目成本、致力于核心竞争力的业务开发,而将软件项目的整体或者部分工作外包给其他公司的活动[1]。软件外包特指信息技术外包中的软件部分外包。根据商务部服贸司统计,2013年中国承接的服务外包合同167 424份,合同金额954.9亿美元,同比增长55.8%。其中软件外包占比超50%,且处于上升趋势[2]。软件外包有利于企业资源整合,提高效率,降低成本。

  过程决定质量。目前我国的外包软件质量管理仍处于起步阶段。若委托方在控制项目质量方面没有一个规范的质量保证过程要求,承包方在承接项目研制时通常是“要什么交什么”,研制过程不透明,导致外包软件项目存在较大风险。

  本文依据有关法律法规、项目管理相关标准、项目研制相关规定,深入研究外包软件项目各阶段的过程活动,分析各个活动应注意的关键问题并给出建议,为外包软件项目管理提供借鉴参考。
 

外包软件项目管理的框架和相关问题分析
 

  1 、外包软件项目管理框架

  当前软件外包业务被广泛应用于各领域,软件外包理论得到长足发展,如罗纳德·科斯的“交易费用理论”、大卫·李嘉图的“比较优势理论”等[3],都对外包业务管理从理论上给出诸多研究结果。在这些理论的指导下涌现了多种外包项目管理办法,它们具有一个相似的项目管理框架,如图1所示。每个模块可作为一个独立的阶段进行管理,每个阶段的活动因实施主体不同而管理方法不同。

  图1 软件外包项目管理框架
图1 软件外包项目管理框架

  2、 外包软件项目管理关键问题

  本节基于软件外包项目管理框架,结合军用软件能力成熟度模型、项目建设管理相关规定等要求进行研究。

  2.1 、项目立项

  在项目立项阶段,委托方编写总体技术方案,进行必要性和可行性分析,明确功能与用途、主要指标要求,论证项目的运行场景、编报经费预算及研制周期。

  在总体技术方案中通常明确项目的实现方式:自研、整体或部分外包、采购货架产品等。自研项目管理可根据GJB5000A军用软件研制能力成熟度模型中有关要求开展,采购货架产品可按照GJB9001C质量管理体系要求进行,整体或部分外包的管理将在本文中详细给出。

  2.2、建立供方协议

  在明确了项目顶层需求及实现方式后,优先从单位的合格供方名录中选择与外包软件技术要求相同或相近的备选承包方[4],必要时制定外部供方评价准则。建立供方协议的活动流程如图2所示。

  图2 建立供方协议阶段研制流程
图2 建立供方协议阶段研制流程

  软件项目的采购或外协遵循相关采购管理办法相关规定,分为五种采购或外协的方式:公开招标方式、邀请招标方式、竞争性谈判方式、单一来源方式和询价方式。项目组选择一种适用的方式,并在招标申请中注明选择这种方式的理由。审批通过后,进行招标工作准备。

  在该阶段,备选承包方拟制项目研制方案和投标书,委托方组织评审,现场评价打分,选定最终的合格承包方。评审结束后签订正式合同和技术协议。合同和技术协议签订后,为确保项目能够保质保量完成,委托方应制订一份供方协议管理计划,对研制过程关键节点进行监控。

  2.3、 研制过程监控

  对外包项目研制过程进行监控是为了规范项目的研制过程,委托方不可能像自研项目管理那样对外包项目进行全程跟踪,因此对研制过程中的关键路径和关键活动进行监控[5],就发挥着“四两拨千斤”的作用。

  在软硬综合项目中,项目硬件装备生产按照GJB9001C质量管理体系要求对产品的生产过程进行跟产监造。软件产品的研制可以按照军用软件成熟度模型[6]要求进行过程监控。下面重点讨论如何对外包软件项目研制过程实施监控。

  一般情况下,委托方选择外包软件研制过程的需求分析、软件设计、软件测试等关键活动实施监控。

  2.3.1、 需求分析阶段

  为了确保委托方的需求和期望能够得到正确实现,需对外包软件项目需求分析阶段的关键活动进行监控:需求分析、需求评审、建立需求追溯矩阵。

  对需求分析活动进行监控,通常重点关注承包方是否充分识别了需求,是否与委托方的需求存在差异,分析该差异的重要性和影响范围,在需求评审会上进行评价,最终确定是否接受。

  需求评审重点关注承包方是否正确理解委托方的需求并转化为软件需求,应组织专家对需求进行全面评审。记录评审问题,分析承包方对问题的整改措施是否合理,并经过专家签字确认。

  委托方建立的需求追溯矩阵与承包方的有所不同,委托方的需求追溯矩阵只需建立软件项目立项时确定的需求与交付物功能性能指标实现情况的追踪关系,确保委托方的所有需求“一个不多,一个不少”地得到实现。

  2.3.2 、软件设计阶段

  软件设计通常分为三步:基于委托方需求的系统设计、基于系统需求的概要设计、基于概要设计的详细设计,如图3所示。

  图3 软件设计
图3 软件设计

  对系统设计的审核通常关注系统体系结构设计是否合理、可扩展;是否考虑了系统在不同状态下的运行方式;CSCI的用途描述是否准确,接口定义是否清晰;每个CSCI的控制关系和数据流程是否与预期用途吻合等。

  对概要设计进行审核通常关注CSCI结构设计是否合理、可扩展;是否清晰标识CSCI的软件单元接口;实现CSCI所需的数据和数据文件是否齐全等。

  对详细设计进行审核通常关注:是否对概要设计中的软件单元进行详细定义,若采用面向对象的设计方法进行设计,是否描述了每个类的属性和操作;是否明确每个类的数据成员和数据文件等。

  软件设计评审通常为承包方项目组内部评审,委托方若想深入了解软件设计的细节,或准备进行二次开发时,可在合同中声明参与软件设计评审。

  2.4 、验收交付

  软件项目的验收交付活动主要有:厂所验收测试及评审、靶场验收测试及评审。验收交付流程如图4所示。

  在开展验收测试时,应编写验收测试计划/大纲;建立需求双向追溯矩阵,确保需求被正确实现。在测试计划/大纲中应充分分析测试环境,区分哪些测试项在厂所进行,哪些测试项在靶场进行,哪些测试项需要结合试运行才能测试充分等。

  在厂所测试时应重点关注:厂所测试环境与真实运行环境的差异;测试用例是否覆盖所有技术指标要求;测试问题影响域分析是否充分;测试问题严重程度及整改情况等。靶场验收测试充分结合厂所测试结果,重点对厂所验收测试中未开展的需求进行交付验收测试。

  3 、结语

  在军民融合方针指引下,软件项目的研制越来越多的选择外包方式。作为委托方不仅要做好总体、明确需求,还要对外包项目研制过程进行有效监控。外包软件项目是否成功存在多种不确定因素,做好关键过程和关键活动的监控能够提升项目的成功率。

  本文依据装备建设管理办法及军用软件能力成熟度模型相关要求,对外包软件项目研制关键过程中关键点进行分析,指明每个活动应注意的关键问题,并给出建议措施。

  图4 验收交付流程
图4 验收交付流程

  参考文献

  [1]柯小娟软件外包在我国的发展现状及对策:以武汉为例[D]武汉:华中师范大学, 2012.
  [2]江义火,蔡伟鹏软件外包项目生命周期及各阶段的风险识别研究[J].赤峰学院学报(自然科学版) , 2015,31(2):114.
  [3]钱嘉麟我国软件外包服务产业现状及对策分析[D].北京:对外经济贸易大学, 2011.
  [4]苏晓光.浅议软件外包的风险及预防[J]中国管理信息化, 2017,20(11):77-78.
  [5]诸亮基于CCPM的计划进度管理在对日服务外包项目中的应用研究[D].上海:复旦大学, 2012.
  [6]总装电子信息基础部军用软件研制能力成熟度模型: GJB5000A-2008[S].北京:总装备部军标出版发行部, 2010.

重要提示:转载本站信息须注明来源:原创论文网,具体权责及声明请参阅网站声明。
阅读提示:请自行判断信息的真实性及观点的正误,本站概不负责。