「软件项目管理」一文详解软件项目管理概述

简介: 该文章详细介绍了软件项目管理的关键概念、知识体系以及实施过程,涵盖了项目初始化、计划制定、执行控制到项目结束的全流程管理,并探讨了项目管理与过程管理在软件开发中的相互作用和应用。

🚵前言

在讲解软件项目管理之前,我们先来讨论一个话题:为什么要学习软件项目管理

为什么要学习呢?主要有以下两点原因:

  • 低头编程序,仰头看大局
  • 一样的起点,不一样的终点(比如说三个人同一时间砌同一门墙,但是不同的人砌墙的速度不同)

了解了为什么需要学习软件项目管理之后,接下来,就让我们进入今天的文章,学习软件项目管理概述。

叮,开始学习叭~🧐

🤽一、项目与软件项目

1、项目的定义

项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力。

2、项目的特征

项目主要有以下 6 大特征:

  • 目标性
  • 相关性
  • 临时性(限定的周期)
  • 独特性
  • 资源约束性
  • 不确定性

3、项目与日常运作举例

(1)判断哪些活动是项目

我们先来判断下面哪些活动是项目,如下图所示:

哪些活动是项目

(2)举例结果

看了上面这张图,不知道大家是否有了一定的结果呢。下面我们先来看来这7项活动中,哪些是项目,哪些是日常运作具体如下图所示:

举例结果

基于以上内容,我们来梳理一下项目与日常运作之间的区别。具体如下。

(3)项目与日常运作区别总结

项目与日常运作之间的区别是:

  • 项目是一次性的,日常运作是重复进行的
  • 项目是以目标为导向的,日常运作是通过效率有效性体现的。
  • 项目是通过项目经历及其团队工作完成的,而日常运作是职能式的线性管理。
  • 项目存在大量的变更管理,而日常运作则是基本保持连贯性的

4、软件项目的特殊性

软件项目有 4 大特殊性:

  • 逻辑实体
  • 相互作用的系统
  • 渐进明细
  • 变更

如下图所示:

软件项目的特殊性

5、软件项目要素

软件项目有以下 4 大要素:

  • 软件开发的过程
  • 软件开发的结果
  • 软件开发组员
  • 软件项目委托人(客户)

🤾二、项目管理与软件项目管理

1、项目管理背景

生活中常见的小项目有:

  • 生日聚会
  • 野餐活动
  • 集体婚礼
  • ……

工作中常见的大项目有:

  • 微软的操作系统
  • 阿波罗计划
  • 神州飞船计划
  • ……

2、项目管理定义

项目管理是为了确保项目能够达到期望结果,对项目各阶段工作进行管理的一系列管理行为。

3、软件项目管理定义

软件项目管理是为了使软件项目能够按照预定的成本进度质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。

4、软件项目管理的特殊性

  • 软件是纯知识产品,开发进度和质量很难估计和度量,生产效率难以预测和保证。
  • 项目周期长复杂度高变数多
  • 软件需要满足一群人的期望。

5、软件项目管理与软件开发

先来看一张图:

软件项目管理与软件开发

大家可以看上面这张图,中间红线的上半部分,是软件项目管理的内容。而下半部分,则是软件开发的内容。最后看到中间红线重叠的部分,则是软件项目管理与软件开发之间的关系

🎪三、项目管理知识体系

1、定义

所谓项目管理知识体系,即 PMPOK: Project management Body Of Knowledge ,具体是美国项目管理协会( PMI )对项目管理所需的知识、技能和工具进行的概括性描述。

项目管理知识体系包括: 10 个知识领域 + 5 个标准过程组。

2、10个知识领域

10个知识领域如下图所示:

10个知识领域

3、5个标准过程组

5-个标准过程组分别是启动过程组→计划过程组→执行过程组→控制过程组→收尾过程组。具体如下图所示:

5个标准过程组

🏄四、过程管理与软件项目管理的关系

1、产品关注点

在一个项目当中,如果我们把焦点放在产品中,那么首先会把用户需求拆分为很多个过程,之后过程再聚焦在产品身上。具体如下图所示:

产品关注点

2、过程关注点

在一个项目中,如果我们把焦点放在过程中,那么会把用户需求先聚焦在整个过程当中,之后再将过程给扩散出一个一个的产品。具体如下图所示:

过程关注点

3、过程管理定义

过程管理,就是对过程进行管理,目的是要让过程能够被共享、复用并得到持续的改进如下图所示;

过程管理定义

4、过程管理和项目管理的关系

对于过程管理和项目管理来说,它们俩之间的关系是:

过程管理和项目管理的关系

🧗五、软件项目管理过程

1、定义阐述

软件项目管理过程主要包含以下四大过程:

项目初始→项目计划→项目执行控制→项目结束。

下面我们将依据以上这四大过程,来对每一个过程进行详细介绍。

2、详细内容阐述

(1)项目初始

项目初始时包括项目立项生存期两个阶段。如下图所示:

项目初始

(2)项目计划

项目计划包括 10 个计划,分别是范围计划、成本计划、时间计划、质量计划、配置管理计划、人力计划、沟通计划、风险计划、合同计划和集成计划。如下图所示:

项目计划

(3)项目执行控制

项目执行控制包含 3 个执行控制,分别是集成计划执行控制、核心计划执行控制和辅助计划执行控制。如下图所示:

项目执行控制

(4)项目结束

项目结束时包含两个阶段,分别是合同终止项目总结如下图所示:

项目结束

🚴‍♂️六、结束语

在上面的这篇文章中,我们学习了软件项目管理的基本概念,以及项目管理与软件项目管理之间的关系。同时,我们还学习了 POMOK 模型,即10个知识领域和5个标准过程。最后,我们了解了过程管理与软件项目管理之间的关系。

到这里,关于软件项目管理的基本介绍就讲解完毕啦!希望大家对软件项目管理有一个基本的认识~

如果您觉得这篇文章有帮助到您的的话不妨点赞支持一下哟~~😉

🎳专栏直通车

软件项目管理👉https://juejin.cn/column/7024826582841688077

相关文章
|
监控 架构师 前端开发
软件研发管理制度
软件研发管理制度
3776 1
|
Oracle Java 关系型数据库
Oracle jdk 的国内下载镜像
Oracle jdk 的国内下载镜像
59279 0
|
11月前
|
Oracle Java 关系型数据库
Tomcat和JDK的详细安装、下载和环境配置指南
以上就是JDK和Tomcat的下载、安装和环境配置的详细步骤。希望这个指南能帮助你顺利完成设置。
744 32
|
Linux 开发工具 git
【Git】Git 完全指南:从入门到精通
Git 是一种强大的版本控制工具,掌握了其基本命令和高级特性后,可以大大提高开发效率并方便团队协作。通过本篇文章,你已经学会了 Git 的核心命令及其使用方法,希望你能够灵活运用 Git 在实际项目中进行版本管理。
4809 4
|
7月前
|
存储 人工智能 数据库
视图是什么?为什么要用视图呢?数据库视图:定义、特点与应用
本文三桥君深入探讨数据库视图的概念与应用,从定义特点到实际价值全面解析。视图作为虚拟表具备动态更新、简化查询、数据安全等优势,能实现多角度数据展示并保持数据库重构的灵活性。产品专家三桥君还分析了视图与基表关系、创建维护要点及性能影响,强调视图是提升数据库管理效率的重要工具。三桥君通过系统讲解,帮助读者掌握这一常被忽视却功能强大的数据库特性。
1978 0
|
存储 监控 Devops
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
|
项目管理 敏捷开发 Cloud Native
带你读《软件项目管理案例教程(第4版)》之一:软件项目管理概述
本书以案例形式讲述软件项目管理过程,借助路线图讲述项目管理的理论、方法及技巧,覆盖项目管理十大知识域的相关内容,重点介绍软件这个特殊领域的项目管理。本书综合了多个学科领域,包括范围计划、成本计划、进度计划、质量计划、配置管理计划、风险计划、团队计划、干系人计划、沟通计划、合同计划等的制定,以及项目实施过程中如何对项目计划进行跟踪控制。该书取材新颖,注重理论与实际的结合,通过案例分析帮助读者消化和理解所学内容,既适合作为高等院校计算机、软件及相关专业高年级本科生和研究生的教材,也适合作为广大软件技术人员和项目经理培训的教材,还可作为软件开发项目管理人员的参考书。
|
前端开发 API 数据安全/隐私保护
探索RAG应用:文档智能与百炼平台的最佳实践(完整代码示例)
方华在阿里云开发者社区发现了一个构建RAG应用的活动,通过官方教程和阿里云提供的工具,如ROS、百炼平台及文档智能,实现了零代码配置RAG应用的Demo。本文分享了该项目的源码本地部署调试方法,介绍了其基于Python的Web应用程序结构,使用FastAPI和Jinja模板引擎,支持文件上传、自定义问答等功能。项目还详细描述了环境配置、服务启动等步骤,帮助开发者更好地理解和实践应用开发。
1192 2
如何访问GitHub快的飞起?两步解决访问超时GitHub,无法访问GitHub的问题
这篇文章提供了几种方法来解决访问GitHub时速度慢或超时的问题,包括使用代理服务器、下载加速工具,以及考虑使用国内代码管理网站如码云(gitee)来加速下载GitHub上的资源。
如何访问GitHub快的飞起?两步解决访问超时GitHub,无法访问GitHub的问题

热门文章

最新文章