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

封面

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

  • 🛰️序言Preface
  • 🚀一、项目评估
    • 1、评估内容
    • 2、净利润与投资回报率
    • 3、举例阐述
  • 🪐二、项目立项
    • 1、立项流程
    • 2、Make or Buy决策
    • 3、Make or Buy决策实例
  • 🛸三、项目招投标
    • 1、项目招投标过程
    • 2、项目招投标双方主要任务
  • 🌠四、项目授权
    • 1、项目章程(Project Charpter)
    • 2、项目经理的能力(PMI人才三角)
  • 五、生存期模型
    • 1、分类
    • 2、选择生存期的步骤
  • 🌌六、预测型生存期模型
    • 1、瀑布模型
      • (1)瀑布模型的项目流程
      • (2)适合瀑布模型的项目特征
    • 2、V 模型
      • (1)V 模型的项目流程
      • (2)适合V 模型的项目特征
  • 🛩️七、迭代型生存期模型
    • 1、迭代模型——原型
      • (1)原型模型的项目流程
      • (2)适合原型模型的项目特征
  • 🛫八、增量型生存期模型
    • 1、增量模型:Incremental Model
      • (1)增量模型的项目流程
      • (2)适合原型模型的项目特征
  • 🛬九、敏捷型生存期模型
    • 1、定义
    • 2、敏捷宣言
      • 3、敏捷生存期模型的分类
    • 4、Scrum模型
    • 5、XP模型
      • (1)定义
      • (2)极限编程方法的实施原则
    • 6、OpenUp模型
      • (1)OpenUp模型流程图
      • (2)几个概念
    • 7、看板方法
    • 8、DevOps
  • ⛱️十、结束语
  • 🛵专栏直通车

🛰️序言Preface

对于软件项目的初始阶段来说,首先需要进行项目确立与生存期模型的选择。那在下面的这篇文章中,将与大家一起来学习软件项目管理初始阶段时的两个过程。

叮,开始学习叭~🧐

🚀一、项目评估

1、评估内容

评估是立项的依据,从战略操作性计划技术社会可行性市场可行性经济可行性等方面进行评估,对整个项目的投资和效益进行分析。

2、净利润与投资回报率

  • 净利润:总收入与总成本之差
  • 投资回报率: (平均年利润/总投资)* 100%

3、举例阐述

例:4个项目的现金流预测如下表所示,请计算每个项目的净利润与投资回报率。

年\项目项目1项目2项目3项目4
0-10万-100万-10万-12万
11万20万3万3万
21万20万3万3万
31万20万3万3万
42万20万3万3万
510万30万3万7.5万
净利润
投资回报率

依据上面的数据,我们来看下各个项目的净利润和投资回报率。具体如下表:

项目1项目2项目3项目4
净利润5万10万5万7.5万
投资回报率10%2%10%12.5%

以项目1为例子,我们来详细介绍下计算过程。具体如下:

净利润(项目1)= 总收入 - 总成本 = (1+1+1+2+10)- 10 = 5w

投资回报率(项目1) = (平均年利润/总投资)*100% = 总利润/年份总投资\frac{总利润/年份}{总投资}/ = 5/510\frac{5/5}{10}105/5 = 10%

🪐二、项目立项

1、立项流程

每一个项目在立项时都有一个完整的流程,如下图所示:

立项流程

2、Make or Buy决策

对于一个大项目来说,我们要依据自身所拥有的成本来考虑是 Make 还是 Buy ,也就是说,要选择自己开发软件的策略还是选择购买软件公司产品的策略。Make or Buy 决策的流程如下:

Make or Buy决策

3、Make or Buy决策实例

我们来举个例子学习一下。假设我们现在要开发一款软件,这款软件如果选择自己研发的话,需要花费💴25000美元的购买费,同时,每个月还要对研发的这个软件进行维护,费用是💴2500美元/月

另外一种方法,如果选择购买软件公司产品的话,那么需要花费💴17000美元的购买费,同时,每个月还要对每个安装的软件进行维护,费用是💴2700美元/月

如下图所示:

Make or Buy决策实例

下面,我们来计算一下成本差异。如下图所示:

成本差异

通过上图,我们可以了解到:制造上的差异是8000美元,服务上的差异是200美元。因此,自制方案可以承受的月份数是8000/200=40

最终得出的解决方案是,如果软件的生存期在40个月以内,那么可以选择购买方案。如果软件的生存期超过40个月,那么选择自制方案

🛸三、项目招投标

1、项目招投标过程

对于一个项目来说,往往有招投标过程。主要流程如下:

招投标过程

我们来梳理下甲方和乙方两者各自的区别:

甲方(需方) —— 提供需求方,一般是企业,作为客户。

乙方(供方) —— 满足需求方,一般是软件开发商。

2、项目招投标双方主要任务

甲方(需方) —— 招标书定义,供方选择,合同签署。

乙方(供方) —— 项目分析,竞标,合同签署。

🌠四、项目授权

1、项目章程(Project Charpter)

项目章程,也可以称为是授权书。它包含以下两个部分:

(1) 一份正式批准项目并且授权项目经理在项目活动中使用组织资源的文件。

(2) 确认项目存在的文件,包括对项目的确认对项目经历的授权项目目标的概述等。

2、项目经理的能力(PMI人才三角)

对于一个项目经理来说,需求具备以下三种能力

  • 领导力
  • 技术项目管理
  • 战略和上午管理

如下图所示:

项目经理的能力

五、生存期模型

1、分类

生存期的模型的分类有以下四种,分别是:

  • 预测型 —— 需求固定,项目活动只执行一次,提交一次,目标是成本可管理。
  • 迭代型 —— 需求变化,重复执行直到正确为止,提交一次,目标是得到正确的解决方案。
  • 增量型 —— 需求变化,特定增量的活动只执行一次,频繁地小增量提交,以速度为目标。
  • 敏捷型 —— 需求变化,重复执行知道正确为止,频繁地小增量提交,通过频繁提交和反馈来体现客户价值。

2、选择生存期的步骤

选择生存期模型的步骤如下:

熟悉各种生存期模型→评审、分析项目的特性→选择适合项目的生存期模型→表示生存期模型与项目不一致地方,并进行裁减。

下面将一一对以上分类中的这几种生存期模型进行解析。

🌌六、预测型生存期模型

预测型生存期模型包括瀑布模型和 V 模型,接下来我们来了解一下这两种模型各自的特征~

1、瀑布模型

(1)瀑布模型的项目流程

瀑布模型的项目流程如下图所示:

瀑布模型的流程

(2)适合瀑布模型的项目特征

适合瀑布模型的项目特征有以下三点,分别是需求方案类似项目如下图所示:

适合瀑布模型的项目特征

2、V 模型

(1)V 模型的项目流程

V 模型的项目流程如下图所示:

V模型的流程

(2)适合V 模型的项目特征

对于适合 V 模型的项目来说,其项目特征有以下三点,分别是需求方案类似项目如下图所示:

适合V模型项目的项目特征

🛩️七、迭代型生存期模型

1、迭代模型——原型

(1)原型模型的项目流程

原型迭代模型的i项目流程如下图所示:

在这里插入图片描述

(2)适合原型模型的项目特征

对于原型模型的项目来说,主要有两大特征,分别是:需求不够明确;希望减少项目需求的不确定性。如下图所示:

适合原型模型的项目特征

🛫八、增量型生存期模型

1、增量模型:Incremental Model

(1)增量模型的项目流程

增量模型的i项目流程如下图所示:

增量模型的项目流程

(2)适合原型模型的项目特征

对于增量模型的项目来说,主要有三大特征,分别是:需求基本明确,但也有可能发生变化;对于市场和用户把握需要逐步了解;系统改造需要一步步实施。如下图所示:

适合增量模型项目的项目特征

🛬九、敏捷型生存期模型

1、定义

  • 敏捷生存期模型是敏捷组织提出的一种灵活开发方法
  • 用于应对迅速变化需求的快速软件开发方法;
  • 是一种迭代、循序渐进的开发方法。

2、敏捷宣言

敏捷宣言有以下四点,分别是:

  • 个体和交互胜过过程和工具
  • 可以工作的软件胜过面面俱到的文档
  • 客户合作胜过合同谈判
  • 响应变化胜过遵循计划

3、敏捷生存期模型的分类

敏捷生存期模型主要有以下5种类型:

  • Scrum模型
  • XP模型
  • OpenUp
  • 看板方法
  • DevOps

下面将对这几种敏捷模型进行一一介绍。

4、Scrum模型

Scrum模型如下图所示:

Scrum模型

5、XP模型

(1)定义

XP (eXtreme Programming)极限编程模型是由 Kent Beck 提出的一套针对业务需求软件开发实践的规则。它包含故事、 CRC 卡片、保持简洁和结对编程四个特征。

(2)极限编程方法的实施原则

极限编程方法有以下三种实施原则具体为:

  • 快速反馈(Rapid feedback)
  • 假设简单(Assuming simplicity)
  • 包容变化(Embracing change)

6、OpenUp模型

(1)OpenUp模型流程图

先来看 OpenUp 的模型流程图,具体如下:

OpenUp模型

(2)几个概念

对于 OpenUp 模型来说,有几个概念需要了解。具体如下:

  • 项目干系人:以为周期,通过项目计划获知产品的进展情况。
  • 团队:以为周期,完成迭代计划
  • 个人:以为周期,完成工作细目

7、看板方法

看板方法模型,使得项目管理实现最大的可视化,可以对研发的过程进行管理,记录下用户故事研发过程中的细节和历程。(将要做的,正在做的,已经完成的

研发过程中的细节和历程如下图所示:

看板方法模型

8、DevOps

DevOps ,即 Development & Operations 。该模型的特点是,促进开发技术运营质量保障部门之间的沟通、协作与整合。如下图所示:

DevOps模型

⛱️十、结束语

在上面的这篇文章中,我们学习了在项目初始阶段时的两个过程,项目确立与生存期模型。生存期的内容细碎和繁琐,大家可以多学几遍慢慢消化。

到这里,关于项目确立与生存期模型的介绍就讲解完毕啦!希望大家对项目确立与生存期模型有一个基本的认识~

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

🛵专栏直通车

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

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

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

相关文章

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

这是头哥侃码的第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…

「软件项目管理」一文详解软件项目成本计划

软件项目成本计划序言一、成本估算的定义二、估算的基本概念1、关于估算2、软件项目规模3、软件规模单位4、软件项目成本5、成本单位6、软件规模和软件成本的关系7、成本估算结果三、成本估算过程1、估算输入2、估算处理3、估算输出四、成本估算方法1、代码行估算法&#xff08…

在腾讯云云函数计算上部署.NET Core 3.1

云厂商(腾讯云、Azure等)提供了Serverless服务,借助于Serverless,开发人员可以更加专注于代码的开发,减少运维的成本。腾讯云的函数计算提供了很多运行库,对.NET的支持需要通过custom runtime 来支持&#…

MassTransit Get Started-

MassTransit:是一款.NET的分布式应用程序框架(开源、免费)。通过MassTransit,可以轻松创建利用基于消息的、松耦合异步通信的应用程序和服务,以提高可用性,可靠性和可伸缩性。MassTransit本身定位轻量级的服…

「软件项目管理」成本估算模型——Walston-Felix模型和COCOMO Ⅱ模型

Walston-Felix模型和COCOMO Ⅱ模型序言一、Walston-Felix模型1. 公式2. 举例二、COCOMO模型(Constructive Cost Model)1. 模型定义2. COCOMO模型的发展3. COCOMO基本原理三、COCOMO 811. 模型级别2. 项目类型3. 基本COCOMO-81(1)公…

图书管理(SSM)

一:前言 这仅仅是个小demo,体验了一把SSM配置地狱&#xff0c;就简单的实现CRUD 二:相关技术 MybatisSpringSpringMVCMysqlMavenTomcat 三:功能展示 1:查询 2:增加 3:删除 4&#xff1a;修改 四:上码 1&#xff1a;导入依赖 <?xml version"1.0" encoding&…