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

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

  • 🚵前言
  • 🤽一、项目与软件项目
    • 1、项目的定义
    • 2、项目的特征
    • 3、项目与日常运作举例
      • (1)判断哪些活动是项目
      • (2)举例结果
      • (3)项目与日常运作区别总结
    • 4、软件项目的特殊性
    • 5、软件项目要素
  • 🤾二、项目管理与软件项目管理
    • 1、项目管理背景
    • 2、项目管理定义
    • 3、软件项目管理定义
    • 4、软件项目管理的特殊性
    • 5、软件项目管理与软件开发
  • 🎪三、项目管理知识体系
    • 1、定义
    • 2、10个知识领域
    • 3、5个标准过程组
  • 🏄四、过程管理与软件项目管理的关系
    • 1、产品关注点
    • 2、过程关注点
    • 3、过程管理定义
    • 4、过程管理和项目管理的关系
  • 🧗五、软件项目管理过程
    • 1、定义阐述
    • 2、详细内容阐述
      • (1)项目初始
      • (2)项目计划
      • (3)项目执行控制
      • (4)项目结束
  • 🚴‍♂️六、结束语
  • 🎳专栏直通车

🚵前言

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

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

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

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

叮,开始学习叭~🧐

🤽一、项目与软件项目

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/307830.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

初识ABP vNext(9):ABP模块化开发-文件管理

点击上方蓝字"小黑在哪里"关注我吧创建模块模块开发应用服务运行模块单元测试模块使用前言在之前的章节中介绍过ABP扩展实体,当时在用户表扩展了用户头像字段,用户头像就涉及到文件上传和文件存储。文件上传是很多系统都会涉及到的一个基础功能…

「offer来了」浏览器原理被问懵?5大知识板块巩固你的http知识体系(3.6w字)

「面试专栏」前端面试之浏览器原理篇🏔️序言🌄一、http和https协议(一)http和https之间的关系🧭1、http和https是什么?2、http和https的区别(二)http协议🧭1、http1.0、…

使用Azure DevOps Pipeline实现.Net Core程序的CD

上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI。这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD。实现本次目标我们除了Azure DevOps外还需要:一台安装了Docker的主机一个 Docker Hub 账号上一次我们的CI实现了:发布>编…

TCP四次挥手(详解)

一:TCP四次挥手 1:图示 二:TCP四次挥手的过程 所谓的四次挥手即TCP连接的释放(解除)。连接的释放必须是一方主动释放,另一方被动释放。挥手之前主动释放连接的客户端结束ESTABLISHED阶段。随后开始“四次挥手”: a:首先客户端想要释放连接&#xff0c…

「软件项目管理」项目初始——项目确立与生存期模型

「软件项目管理」项目初始阶段——项目确立与生存期模型🛰️序言Preface🚀一、项目评估1、评估内容2、净利润与投资回报率3、举例阐述🪐二、项目立项1、立项流程2、Make or Buy决策3、Make or Buy决策实例🛸三、项目招投标1、项目…

双城生活,一种相对无奈且幸福的选择

这是头哥侃码的第215篇原创我小时候经常被人问到一个问题:“你喜欢夏天还是冬天?”“夏天啊!因为夏天可以有两个月的暑假,而且还可以玩水,还有清凉的盐水棒冰、短裤和凉拖,还可以在空调间里打游戏&#xff…

leetcode450. 删除二叉搜索树中的节点(详解)

一:题目 二:上码 1.确定递归函数和参数 TreeNode* deleteNode(TreeNode* root, int key) 这里的返回参数 我们也用一个指针接住,反正我们最终是返回的整棵树(如果没找到那就是空) 2.确定递归函数的终止条件 if(root NULL) return root; 3.确…

「offer来了」进程线程有啥关系?10个知识点带你巩固操作系统基础知识

「面试专栏」前端面试之操作系统篇🎹序言🎸一、思维导图🎺二、常见面试题1、进程和线程以及它们的区别2、进程间通信的几种方式(1)管道(pipe)及命名管道(named pipe)(2)信号(signal)&#xff08…

推荐一个IT老鸟肝了2月有余的免费开源WPF企业级开发框架

JHRS一个新学WPF的IT老鸟,肝了2个月做了这么一个WPF企业级开发框架,站长clone学习,觉得甚是不错。这是一个使用了Prism搭建的插件式框架,封装了DataGrid的使用,使整个框架子模块简单易学、易扩展,特别是作者…

「offer来了」从基础到进阶原理,从vue2到vue3,48个知识点保姆级带你巩固vuejs知识体系

「面试专栏」前端面试之vuejs篇🖼️序言🎙️一、vue2.x基础知识预备📻二、vue2.x基础知识常见面试题1、请说出vue.cli项目中src目录每个文件夹和文件的用法?2、vue.cli中怎样使用自定义的组件?有遇到过哪些问题&#x…

.NET Core 下使用 Apollo 配置中心

“Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务…

「offer来了」从基础配置到高级配置,16大知识点带你巩固webpack知识体系

「面试专栏」前端面试之Webpack篇🧩序言🎨一、基础知识学习🎲二、常见面试题汇总🎯三、构建和打包1、前端代码如何进行构建和打包?2、前端为何要进行打包和构建?3、webpack原理🎰四、模块相关1、…

进击吧!Blazor!第一期回顾

Blazor 是一个 Web UI 框架,可通过 WebAssembly 在任意浏览器中运行 .Net 。Blazor 旨在简化快速的单页面 .Net 浏览器应用的构建过程,它虽然使用了诸如 CSS 和 HTML 之类的 Web 技术,但它使用 C#语言和 Razor 语法代替 JavaScrip…

《五分钟商学院》个人篇学习总结(下)

【商业知识】| 作者 / Edison Zhou这是EdisonTalk的第286篇原创内容商业篇聚焦的是我们与外部的关系,管理篇聚焦的是我们与内部的关系,而个人篇聚焦的则是我们与自己的关系。与自己斗,其乐无穷,本文是个人篇的下半部分学习总结。上…

「软件项目管理」软件项目范围计划——需求管理与任务分解

软件项目范围计划——需求管理与任务分解序言一、软件需求定义及层次1、定义2、层次二、软件需求管理过程1、管理过程2、需求获取3、需求分析4、需求规格编写5、需求验证6、需求变更(1)需求变更管理的主要工作(2)需求变更控制流程…

leetcode106. 从中序与后序遍历序列构造二叉树

一:题目 二:思路 例子:中序[9,3,15,20,7];后序[9,15,7,20,3] 1.我们先选取后续的最后的结点3(其是根节点) 2.我们在中序序列中用上一步求出的根节点3并记录其在中序数组中的位置rootin,然后我们就可以 求出 左子树的结点个数(rootin - leftin…

「offer来了」快来关注这些性能优化问题

「面试专栏」前端面试之性能优化篇💬序言💯思维导图抢先看👁️‍🗨️一、html、css、js、jq优化1、针对HTML,如何优化性能?2、针对CSS,如何优化性能?3、哪些方法能提升移动端CSS3动画…

不宜过分炒作第三代半导体材料弯道超车

目前,本土晶圆大厂与台积电在技术水平上的差距是非常明显的。就市场份额来说,台积电的市场份额超过50%,而本土晶圆大厂的市场份额大约是台积电的十分之一。在技术水平上,本土晶圆大厂也和台积电这样的大厂有一定差距。目前台积电7…

「offer来了」浅谈前端面试中开发环境常考知识点

「面试专栏」前端面试之开发环境篇🌱序言🌲一、git1、为什么要使用git?2、常用的git命令3、git提交规范🌳 二、Chrome调试工具🌴三、抓包1、抓包工具2、抓包过程🌾四、linux 常用命令1、为什么要用linux?2…

数据结构与算法专题——第十题 输入法跳不过的坎-伸展树

我们知道AVL树为了保持严格的平衡,所以在数据插入上会呈现过多的旋转,影响了插入和删除的性能,此时AVL的一个变种伸展树(Splay)就应运而生了,我们知道万事万物都遵循一个“八二原则“,也就是说8…