2022至 2023 学年 第 1 学期

软件项目管理的具体分类

摘要:软件项目管理就是将知识、技能、工具与技术相结合应用于项目活动,以满足项目的要求的一种科学管理方法,是20世纪40年代以后迅速发展起来的一门学科,是现代管理学的一个很重要的分支。本文对软件项目管理进行五个分类,分别为计划管理、质量管理、配置管理、风险管理、成本管理,并给出了详细说明。
关键词:软件;项目管理;分类;管理;
1 引言
基于项目的管理模式最初诞生于上世纪四五十年代,最早采用这种管理模式的是在第二次世界大战中美国的“曼哈顿计划”[1]。此后,随着经济全球化的发展与推进,各国之间竞争愈演愈烈,基于项目的管理模式逐渐取代传统管理模式,近年来应用广泛,尤其在软件行业,被越来越多的企业和高校用于项目管理。
项目管理实质是将知识与技术相结合应用于项目活动,以满足项目要求的一种管理科学工程,是20世纪40年代以后迅速发展起来的一门学科,是现代管理学的一个很重要的分支[2]。项目管理的核心是以实现项目目标为中心,通过规划、分析、实施、监控、反馈等过程管理,最终满足项目利益相关方的需求。
随着项目管理方法、理论的发展,项目管理的概念和适用范围也在不断的拓展,在信息技术行业兴起并快速发展期间,项目管理的手段和方法开始大量应用在信息技术项目中,由此带动了软件项目管理理论与方法的迅速发展。
软件项目管理即项目管理方法在软件产品项目中的应用,但由于软件项目本身具有的抽象性、不可复制性、多变性等特性,导致软件项目管理相较于一般的项目管理难度更大[3]。下面本文将从软件项目管理的角度给出五个分类,并分别对其进行讨论分析。
2 软件项目管理分类
2.1 计划管理
由于软件项目的新颖度够高,说明软件项目必然存在一些前所未有的问题,也存在较大的不确定性[4]。因此,做好软件项目的项目计划至关重要,而项目的计划管理则是确保项目计划得到有效落地实施的重要方式,计划管理活动包括了计划的制定、跟踪、监督和考核。
软件项目管理的核心工作之一就是制定完善详细的项目开发计划,计划制订是为了达到项目的预定目标,在约束条件和假定条件下,对项目的范围、资源、实现路径、成本和时间进度进行安排,并形成能够指导项目执行和控制的、经正式批准的文件的过程。也就是说,计划管理的目的是为了达到项目的预期目标,实现项目成功,计划管理的维度包括了项目的范围管理、组织的资源管理、时间进度管理等,并且最终形成的计划必须是正式批准的具有公众约束力的官方文件。计划制定是一个持续的过程,在项目方案的制定阶段可以制定一个初步的计划,这个计划可以不够完美,可以只给出框架结构,在计划管理阶段,目的不在于给出多么完美的、考虑多么周全的方案,旨在给出符合问题分析的初步方案即可。在项目的实施过程中,随着对项目需求的逐渐深入理解、需求的不断更改、项目实现途径的调整以及项目资源的变化等情况,项目计划会同步不断迭代更新,在此阶段制定项目计划人可以根据以上所有的变化情况进行更新处理,此时就需要对方案进行细致入微的、详细的处理与修改,在此阶段要求项目计划人员切不可盲目大意,需要全面分析。
2.2 质量管理
软件质量管理大体上可分为设计质量管理与过程质量管理。
设计质量管理容易理解,涉及到软件的整个设计、开发活动,包括系统需求分析、系统设计、软件需求分析、软件设计、软件编码与单元测试、单元集成与测试、配置项确认测试、系统集成与测试、系统确认测试、验收和交付,设计质量管理就是对这些环节进行监控,以保证软件产品的质量[5]。业界有句名言,产品的质量是设计出来的,体现了产品的设计过程对于产品质量的重要性,为了保证产品质量的稳定性,应该提炼出通用的设计环节,并对每个环节的关重要素做出标识,产品开发过程中涉及到关重要素时,应该组织专家团队共同评审决策,避免因个人主观因素造成产品质量的差异性。
过程管理像比如设计质量管理更重要,它所要面对的是对整个软件设计过程精细的理解与分析,需要项目负责人与开发团队对整个开发流程、开发方法、开发完成度等多方面进行分析管理,这一管理一旦松懈,将面临的是各个过程之间衔接不当等问题,如果此问题发生,各个过程讲面临耦合度过低问题,各个阶段看起来分离度过高,不够紧凑,从而使得项目进度质量不高。
2.3 配置管理
影响软件项目的因素很多,但影响最大的应该是项目团队乃至项目负责人对软件变更的不重视,甚至认为变更是软件项目的固有特性。很多软件项目的失败,都要归因于薄弱的变更管理,导致项目的时间进度和成本超出了预期范围。项目开发过程中,变更是允许存在的,但是必须得到有效的控制和管理,这就是配置管理的主要目的。另外,在配置管理过程中,还需要对管理人员进行把控,目前一种新颖的配置管理方法为将负责团队内部进行两个分组,这两个分组进行层层把关,互相监督,定期开展组会,他们彼此之间既是竞争关系,也是合作关系。当然,在他们上面也需要绝对负责人来把控,这样才能实现互助组双赢的状态。
2.4 风险管理
所有软件项目都会有风险,有的影响小,在整个项目生命周期都会存在;有的影响较大,可能会导致整个项目的失败,这种必须被标识出来,并采取应对措施。
风险管理贯彻于整个软件项目的周期中,在软件项目从提出构想到被市场淘汰的整个过程中,风险是处于动态变化当中,必要时应当实施相应的计划。在项目开始前,项目双方应对即将到来的风险进行评估,并给出相应的策划方法来应对。
风险管理分为风险识别、风险评价分析、风险评估、风险缓解、风险监控这五个方面,如图1所示。

图1 软件项目风险管理流程示意图

风险识别是利用感知、判断或归类的方式鉴定风险性质的过程,包括显示存在的和潜在的风险[6]。主要是指经济风险,诱导因素包括市场需求判断情况、市场竞争格局、供求关系变化技术风险、诱导因素包括工艺发展情况、技术商业化发展速度、可替代产品冲击等。
在风险评价分析过程中,首先对风险的优先级进行预处理,按照风险等级进行排序。软件项目风险无法完全处理时也无法有效针对每个风险展开处理,因此会对风险进行优先级排序,集中已有资源对影响程度较高的风险优先处理,将风险负面影响控制在合理范围内。
风险评估该项工作的主要作用是对某一风险出现后带来的影响程度、影响范围进行客观评价,以此来确定需要给予风险内容,以便后续应对措施的拟定。在具体的评估活动中,其评估依据包括以往整理数据、风险条件列表、建议等。同时在评估中风险也会细分为确定性风险和非确定性风险,前者多使用平衡分析法、敏感分析法来估,后者多利用概率分析法、概率树法、期望值法来进行评估。
风险缓解,在制定风险缓解的措施时,可以细分为以下两种类型。第一种为积极应对措施,常用方法如下,将已有风险通过共享的途径,分担给第三方,从而提高风险出现后的抵御能力,引入高端科技人快项目开发进度,提升项目各阶段开发质量,以此来降低风险问题发生。第二种为消极应对措施,具体如下:减小风险,即采取相应措施将已知风险内容调整到可管控范围内,无法彻底规避风险。转移风险,风险转嫁给第三方分担,由其继续承担风险出现后的相关责任,该过程中风险内容依旧存在。回避风险,即整开发计划的途径,将此风险消除,如延长项目开发周期、减少开发内容等。
风险监控的主要目的在于,对整个软件项目开发过程进行监控,了解风险策略的落实状态和反馈信息,定期对这些内容进行整合、讨论,并以此来对风险进行重新识别、重新分析、重新定位,拟定新的应对策略,确保策略与风险之间的匹配度。
2.5 成本管理
对于一个项目而言,项目的成本主要包括直接成本、管理成本和运营成本等。直接成本指的是与本项目相关的费用,例如人工费、材料费、设备费等。管理成本指的是在项目开发的整个周期当中,为了便于管理、控制项目所产生的费用,比如差旅费,组织会议所审批的费用等。运营成本指的是项目在正常运营索要使用的费用,比如租用服务器的费用等。成本管理利用成本相关信息,为了确保服务的合理性,以及明确改变实施过程,进而达到提升项目生产效率的目的。
对于软件而言,项目的最主要成本是人工成本,软件开发人员的人工费用占绝大部分。
在探讨成本管理之前,首先应当分析可能影响项目成本的因素。比如项目质量、项目周期、项目人力等。在项目质量问题上,一个项目的质量将影响使用者对提供服务这的评价与口碑,如果项目质量差,该项目将面临零使用者风险,使得所有工作前功尽弃,因为对项目质量的成本把控极其重要,不能一味因为想要获得足够多的用户就无限的投入成本以提高项目质量,应当展开详细的会议讨论,通过会上探讨出的临界值在项目质量和用户之间做出合适的取舍工作。在项目周期问题上,一切产品都是与时间的竞争,一个想法的提出往往伴随着竞争者的产生,在项目实施过程中如果该项目应用市场前景广阔,并且正处于社会大环境下,那么周期就显得格外重要,往往周期短意味着单位时间所要投入的成本更大,如果比竞争对手更早的投入市场使用,可以根据反馈来进行适当的调整。
3 总结
随着信息技术的不断发展,软件行业的队伍不断壮大,计算机软件已经悄无声息地进入人们生活的方方面面。因此,为了便于做好软件项目管理工作,本文给出了软件项目的五个分类管理,并分别对其进行了说明。在今后的研究中,本文作者将着眼于风险管理,对真实情况下的项目进行风险评估,并在教学课程中进行探讨。
参考文献
[1] 刘鹏,周霞,张毅,涂彦君.浅谈软件项目管理[J].信息系统工程,2022(04):81-84.
[2] 薛昊宇. 基于精益思想的D公司软件项目开发流程改善研究[D].桂林理工大学,2022.DOI:10.27050/d.cnki.gglgc.2022.000103.
[3] 张强,袁文斌.基于CMMI的软件项目管理研究与实践[J].电子技术与软件工程,2021(09):30-31.
[4] 倪丽丽.软件项目管理的计划和控制方法研究[J].通讯世界,2017(10):222-223.
[5] 王晓.软件测试过程质量控制管理研究[J].软件,2022,43(01):115-117.
[6] 齐爱朋.软件开发中的风险控制方法[J].电子技术与软件工程,2021(17):37-38.

软件项目管理课程论文相关推荐

  1. 软件项目管理课程复习题

    项目经理通知客户计划安排在一周内开始项目实施,期望客户团队参加,但在计划日期,客户团队未能参加.若要防止这个问题,项目经理应该事先做什么? A.向客户强调团队参加的重要性 B.在计划日期前两天向客户发 ...

  2. 免费收听--第2版招投标软件项目管理实战课

    这是山猫的第58篇原创 很多时候,人与人之间建立信任并不容易,尤其是对于有过被欺骗经历的人来讲. 教育培训机构也是一样,鱼龙混杂,有时一不小心就上了商家的当,交了各种各样的费用,但是没有学到自己需要的 ...

  3. 计算机辅助项目管理实验论文,计算机辅助项目管理课程设计—毕设论文.doc

    计算机辅助项目管理课程设计-毕设论文 计算机辅助项目管理 课程报告 班 级: 学 号: 姓 名: 指导教师: 完成日期: - 目录 1.项目概况3 1.1项目简介3 1.2项目任务关系.固定成本及资源 ...

  4. 计算机辅助项目管理实验论文,计算机辅助项目管理课程设计--毕设论文.doc

    计算机辅助项目管理课程设计--毕设论文 计算机辅助项目管理 课程报告 班 级: 学 号: 姓 名: 指导教师: 完成日期: - 目录 1.项目概况3 1.1项目简介3 1.2项目任务关系.固定成本及资 ...

  5. Java实现简易聊天软件_类QQ(含课程论文、实施计划书、演示视频、答辩PPT、源代码及运行环境)

    很多BUG很多BUG很多BUG 视频演示: http://v.youku.com/v_show/id_XMjg4MDAxNTAwNA 关键部分参考: 注册界面实现-JAVA应用开发系列教程 https ...

  6. (软件/it)项目管理课程笔记(新手入门,未完待续……)

    课程来源: 中国大学mooc_软件项目管理_北邮 中国大学mooc_IT项目管理_厦大 目录 1_基础和概述 1.1_项目与软件项目 1.2_PMBOK与软件项目管理体系 1.3_敏捷项目管理 1.4 ...

  7. 软件项目管理(一) 课程代码:01336

    软件项目管理[一]课程代码:01336 一次测评 二次测评 三次测评 一次测评 1[单选题]软件项目管理过程中的"过滤器"是指 A.软件风险评估 B.软件质量评审 C.软件设计监督 ...

  8. 《软件项目管理》课程学习报告

    短短的一个月转眼过去了,林老师的软件项目管理课已经结束了.我用了一星期的时间细细的品位了那段美好时光,我希望能用今天完成的学习报告来记录下这段短暂的回忆.希望在未来的日子里每当我翻开这篇报告时就能带给 ...

  9. 软考高级系统架构设计师系列论文五十七:论软件项目管理技术及其应用

    软考高级系统架构设计师系列论文五十七:论软件项目管理技术及其应用 一.软件项目管理技术相关知识点 二.摘要 三.正文 四.总结 一.软件项目管理技术相关知识点 写论文前充分了解软件项目管理技术相关的知 ...

最新文章

  1. 持续集成工具Jenkins看这篇就够啦!
  2. 用java程序将GBK字符转成UTF-8编码格式(转)
  3. Android Context应用上下文详解
  4. 6 使用soap客户端_网络协议 20 - RPC 协议(上)- 基于XML的SOAP协议
  5. No identities are available for signing 的解决办法
  6. matplotlib设置画布大小_PyTorch 49.matplotlib模块
  7. 每日一课(11/75)CPU资源和存储器 之 80x86 内存管理
  8. 小世界网络 Small-world networks
  9. 个人跨境电商要多少钱?新手怎么做跨境电商?
  10. BZOJ5473: 仙人掌
  11. bat文件直接定位到指定目录并等待
  12. deque实现生产者-消费者队列
  13. linux改完权限后 自动恢复,linux文件或目录权限修改后如何恢复(备份了权限就能恢复)...
  14. 力扣-518题 零钱变换 II(C++)- 动态规划、完全背包问题
  15. 【树莓派】树莓派开放WiFi热点
  16. 十几亿用户中心系统架构,落地实践!
  17. Satwe楼板能用弹性模计算吗_SATWE模型转PERFORM-3D实例
  18. ESLint : Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style
  19. 在Windows下搭建Teamspeak3服务器
  20. 基于node.js开发的聚美酒店住宿管理系统的设计(论文设计word文档)

热门文章

  1. Boost.Asio 笔记
  2. 抖音链接怎么制作二维码?轻松几步在线生成链接二维码
  3. 根据经纬度在地图上定位
  4. 【Python数据分析与可视化】自行车租赁统计数据分析(综合实训)
  5. 7种方法求解八数码问题
  6. python做正态分布的例子_Python求正态分布曲线下面积实例
  7. delphi 安装tee8.01图表插件
  8. [二十六]JavaIO之再回首恍然(如梦? 大悟?)
  9. 啥都不会只能瞎暴力——剪子-包袱-锤
  10. 天才源自刻意练习:通向成功的高效学习法