项目管理在企业IT项目中的应用

2022-06-15 15:56张致瑜王霖黄立平胡磊
管理学家 2022年9期
关键词:软件测试进度管理质量管理

张致瑜 王霖 黄立平 胡磊

[摘 要]项目管理已成为企业信息系统建设的重要管理工具,科学的管理及实施方法论能够进一步提高项目建设效率,同时为项目质量保驾护航。本文以RJ公司SP项目作为实例分析对象,依据项目管理的科学知识理论,把遇到的一些具体问题做复盘,抽象成数学模型并做细致剖析。本文按“找到问题、分析问题、解决问题”的一般思路[1],主要从项目范围控制与需求管理、项目进度管理与计划的控制优化、软件质量与软件测试管理三个方面做阐述。另外结合实际项目经验,笔者认为做好软件测试和健全的沟通机制也是保障项目质量的必要条件。

[关键词]项目管理;需求管理; 戴明环;进度管理;质量管理;软件测试

中图分类号:F272 文献标识码:A 文章编号:1674-1722(2022)09-0034-03

当下是知识社会创新2.0时代,信息技术的创新性应用在“互联网+”模式下侵入了各行各业,互联网项目也广泛地应用在社会民生和企业生产经营建设中[1-2]。RJ公司通过三年的探索研发,利用互联网、物联网、大数据等先进技术进行IOT平台能力整合,打造了领先的、具有成都特色的数字化智慧生活管理服务平台(以下简称“项目”)。

本项目组是由物业需求方、开发团队、项目管理方组成的联合项目组,在项目实施过中主要存在的问题表现在需求、进度、软件质量三个方面。

(一)需求管理问题

1.需求不明确

在调研阶段,需求方无法进行完整的功能表述,对产品仅有模糊的概念,不能把不确定的概念性需求转化成软件开发需求规范[3],整个功能模块都有可能推翻重来。

2.不断扩展的需求

任何项目在开展过程中都会不断面对突如其来的“头脑风暴”,常常忘记项目阶段性目的,很容易导致项目“摊大饼”。例如物业方原来没有在线报修功能,在产品分析会上听到同类App有“自动派单、抢单”等功能时,要求在产品上也能实现相同功能,却无视了参考产品的迭代规律。随着时间和环境的变化,为了纠正偏差,就不得不反复地变更、调整需求,造成了人力、物力和时间的无谓浪费[3]。

3.多次变更需求

本项目中的问题是需求方为了节省时间,绕过项目例会,直接在沟通群要求程序员做修改,没有会议纪要和需求变更记录,软件也无大小版本区分,导致出现了需求说明书、产品原型与代码版本不一致的问题,也无从追溯问题根源[4]。

(二)进度管理问题

项目进度管理是项目管理的重要组成部分[5]。进度管理的问题主要表现在进度计划制定方面。

1.项目进度计划的失误

计划失误问题,具体表现如下。

(1)过于乐观的总时间。

(2)遗漏部分工作项。

(3)其中某项工作计划量不够。

(4)外部资源缺失或第三方配合不够带来的风险。

2.进度计划执行问题

忽略客观条件限制、环境以及项目规模大小等因素的影响,随便制定计划明显不符合实际情况,不能充分反映实际施工情况的指导,也没有执行意义。

项目进度计划一旦过于粗略或者过于细致,都难以对整个工作进程进行控制,出现问题后就会造成项目延误。

3.资源配置缺乏协调性

项目进度和资源配置之间具有不可分割的关联,如果无法科学规划人力资源、财力资源和物力资源,在资源调度过程中存在问题,就容易影响项目进度。

(三)开发质量问题

导致软件质量问题的原因主要有以下两个:(1)开发模式选型错误。RJ公司拟开发的智慧平台是一个非常庞大的综合系统,原则上要按照经典瀑布模型完成建设,但开发方选择了快速原型法来组织软件系统建设。这就导致了需求未能清晰解析的状态下就快速组织开发,未能考虑到各子系统之间的逻辑关系和功能协调,造成了软件问题。(2)没有组织系统测试。本项目在移动端App过程中由小组成员一边开发一边完成自测,这种未得到独立验证的软件功能不尽如人意,为软件日后使用中出錯埋下隐患,最终结果是功能测试及交付测试整体效果不好。在RJ公司软件研发过程中发现的项目质量问题按照类型分类汇总如表1所示。

(一)PDCA模型解决需求管理问题

PDCA即戴明环,其核心是通过计划(Plan)、执行(Do)、检查(Check)和处理(Action)四个阶段的多次循环迭代达到逐步解决各种质量问题的目的,属于质量管理的范畴。笔者发现用PDCA模型来做需求管理,经过三轮调研,需求锁定,完全可以解决需求细节不明确、需求无边界控制、需求发生变更等问题。

第一轮,制定需求调研大纲,根据调研大纲制定调研计划。总体调研包括用户基本情况、主要业务、相关部门、岗位设置及人员配置。业务调研为专项调研,主要包括业务工作内容、工作流程及单据、管理重点、存在问题及期望效果。数据调研主要是为了收集基础数据。本轮主要输出为业务分析报告。

在第一轮调研完成后,对框架内容进行填充,要包含所有显性需求及功能性需求,确定数据流、信息流(工作流)、资金流等主要业务流程 。第二轮工作输出产物为需求分析报告。

第三轮需求分析的重点是挖掘用户的隐性需求。项目干系人要擅于挖掘用户的隐性需求,能够从全盘考虑满足设计约束的客观限制。第三轮的输出产物为标准的软件需求规格说明书(产品规格说明书)。

按照PDCA模型做三个轮次的需求调研分析工作,出具的需求规格说明书才是完整的,可以作为用户和开发方达成的技术协议。它明确定义了项目范围、工作业务流程、产品界面、功能模块,并包含了限制条件、测试方案和软件质量管理要求,不会造成技术上的纠纷和误解,也为产品的验收提供了依据。

总结:PDCA模型能够有效完成需求管理,锁定项目范围边界,用一句话表达即是:PDCA,需求循环;锁定边界,按期划分;多方确认,谨防变更。

(二)处理进度管理问题的方法

1.理性制定项目计划

项目进度管理是重点管理对象。需要合理制定项目计划、安排工作項、调度工作资源、做好时间管理。具体实行方法是:“由小而大、由近而远;由粗而细、适度松紧”。“由小而大、由近而远”面向的是开发工期的计划。“由粗而细、适度松紧”指的是进度计划要与WBS工作项的颗粒度划分相称,适量增加缓冲期以匹配项目资源的耦合度。

2.巧用网络图,明确关键路径

关键路径法(Critical Path Method)是项目进度管理的重要方法论之一,“向关键路径要时间,向非关键路径要资源”是其要义。

为了便于分析项目进度问题,笔者将项目建设中的一段独立工期抽象成数据模型,如图1所示。

该图表示的是将工作分解结构拆分后的单元活动所占用的工期及活动的前后依赖关系,其中活动B的必要时间为“4+10”表示该项工序延误了10天。方法上可以用网络图为活动排序,在未延期前,该项目整个工期为18天,关键路径为A-C-E-G-I-L,项目网络图如图2所示。

由于B活动延迟了10天,导致关键路径发生变化,则项目单代号网络图变为图4:由此可见,B活动的延迟,导致整个项目工期延迟9天,变更后的项目网络图如图3所示。

经复盘得出,B活动是由于在项目计划阶段忽略了兄弟部门的资源配给导致后续工序的延迟。由此也印证出“向关键路径要时间,向非关键路径要资源”的意义。

3.合理调配资源做好进度控制

找到进度问题症结就需要对症下药,可以从以下几个方面想对策。

(1)调整活动的排列顺序

分析完整项目活动清单上每项活动的紧前紧后活动关系,依据活动之间的逻辑关系进行排序,创建实际可执行的项目进度计划。

(2)改进活动持续时间的估计

由于对项目持续时间的估算存在一定主观性,改为由在项目组中由多人对项目工期的预估,并根据后期变化需求的情况进行修正的方法,更加贴切可行。

(3)调整关键路径的资源分配

通过重新排序对关键链上的资源供给情况进行调整,保障资源优先供给到所需关键工作上。

(4)对非关键工作进行合理安排

根据之前的分析结果,重新排列资源拥挤的活动,将有限的资源优先供给关键工作,使得关键路径的工期不会延期。

(5)增加缓冲区

一般将缓冲区插入到项目的末尾集中使用,缓冲区在计划活动清单中出现,但不存在具体活动安排工作。

(三)不可缺失的软件测试是软件质量的保障

1.选择合适的测试模型

软件测试是保证软件质量的重要方法,在项目管理中占有非常重要的位置,包括对文档的评审、审查、设计的规范性约束性检验、软件的系统测试都属于广义的测试工作范畴。以本项目为例,以瀑布模型作为软件开发模型是比较好的选择,与之匹配的是经典的“W型测试”模型将贯穿于整个项目生命周期,如图4所示。

2.发挥测试用例的作用

影响软件测试的因素很多,包括项目复杂度、测试工程师能力、测试方法和测试技术等。软件测试遵循以下要求:第一,测试人员对业务流程和产品功能有充分的了解。第二,测试结果要有详细的测试步骤、输入条件、输出结果以及期望结果的对照。第三,测试要符合用户行为习惯。第四,测试用例的编写要规范,步骤等清晰明了。

项目建设只有“埋头苦干”,没有良好的沟通是不行的,在实施过程中的任何问题都需要“打开天窗说亮话”,才能保证项目需求、进度、质量问题无死角暴露,绝不能出现信息孤岛与信息不对等的情况。良好的沟通机制是项目工作正常开展的保障,主要强调以下几点:(1)随时与需求方保持畅通的沟通。(2)涉及项目外部资源的配置和调度时,需及时寻求领导协调资源。(3)充分发挥项目组成员能动性,参与到问题中并充分发挥意见,不做旁观者。

文章通过对RJ公司智慧平台项目中存在的问题进行分析研究,运用理论知识成功验证了项目管理的实际问题。希望能够通过项目管理积累的经验,在RJ公司内部形成管理创新的资产,为日后的相关软件系统开发与项目管理工作研究提供富有价值的参考。

[1]钟珞,袁胜琼,袁景凌,等.软件工程[M].北京:人民邮电出版社,2017.

[2]廖丽君.智慧社区建设研究[J].电脑知识与技术,2019(13)2-4.

[3]付桥.K公司软件项目需求管理研究[D].济南:山东大学.2017.

[4]李厚明.软件项目需求变更风险管理[D].济南:山东大学.2012.

[5]马晓晟.系统集成类项目进度管理优化研究[D].南京:南京邮电大学,2020.

猜你喜欢
软件测试进度管理质量管理
软件测试方向人才培养“1+X”融合研究
大数据背景下软件测试技术的发展
关于 Web 应用系统的软件测试的研究
建筑工程管理中的进度管理浅谈
基于项目进度管理的理论与实践目的性探析
面向关键链的敏捷软件开发项目进度管理研究
进度管理在电力工程管理中的应用剖析
基于项目管理的企业年度重点工作管理
入厂抽样检验规程的编制
浅谈在公路桥梁施工环节的质量管理及控制