上一篇《质量:“PM,你怎么可以放弃我?!”》,我们匡正了PM的一个意识:质量是PM的底线和目标,也算是PM意识升级的1.0。同时提出,只有“正确的做正确的事”才是保证质量,且成本相对最低、进度相对最快的做法。

在这一过程中,“正确的事”是“将用户需求转化为有效的软件解决方案”,也可以叫做项目目标,以质量为底线。而“正确的做”是由一系列活动组成的,完成需求转化的过程,是今天我主要聊的话题:是什么支撑了“正确的做”?以及它们与质量之间又有多亲密?

A答案:人

表面亲密度:

实际亲密度:

“正确的做”离不开人。如果你访谈100位IT企业的中高层管理者,会有99位告诉你:“最缺的是人”。这不稀奇。“一夫当关”的超级程序员恐怕是很多IT企业梦寐以求的人才。他们远比普通的软件工程师更有成效,可以“凭直觉”一流的完成工作,交付更高质量的软件产品。

可是,光有神一般的超级程序员,就可以保障软件质量吗

果真如此的话,拥有超级程序员的的软件组织,比如IBM、Apple、Google、华为、阿里巴巴……就不应该存在软件质量和生产能力方面的问题。而事实上,这些知名企业与其他软件组织一样,面临着几乎相同的管理问题。这也证明,超级程序员的神话,并不是解决质量问题的金钥匙

成功的软件企业早已经认识到“好钢要用在刀刃上”,即便再优秀的超级程序员,都需要一个结构化、制度化的工作流程,来保障高效的团队协作和一流的质量交付。人才是基础,这不可否认,但只有在有序的过程支持下,一流人才,才能一流的完成工作,才能在自身价值与企业价值之间找到双赢的平衡点

B答案:技术

表面亲密度:

实际亲密度:

软件行业的技术导向,可能会让人产生错觉,认为某些技术先进的工具或方法可以奇迹般的消除软件问题。这种观点不仅错误,而且危险。质量的提升离不开技术,但是不假思索的依仗技术“万能药”,会使企业的注意力偏离管理

如果你想想限制公司软件质量的原因有哪些,并问问你的同事、领导及同行。你会发现管理性制约的比例,将远大于技术性制约。这个结论,在我们进行咨询服务时,也可以被验证:企业对质量问题的担忧,集中在没有尽头的需求与连续不断的需求变更,随意的进度,不充分的测试时间、缺乏业务理解以及管理没有客观标准等方面。这些问题都不是单纯的技术问题,且都可以通过有序的管理得到改善。即使企业具备优秀的技术能力,也会由于过程定义不清晰、技术部署实施时的协调问题、以及过程管理不善等因素,而备受掣肘。因此,在管理问题得到足够重视和解决之前,技术根本不可能充分发挥作用

什么才与质量密切相关?

C答案:过程

表面亲密度:

实际亲密度:

卡耐基梅陇大学软件工程学院的研究表明,企业可以关注以上三个维度,来开发与保持高质量的产品及服务。而将人(People)、工具与设备(Tools & Equipment)、工序与方法(Procedure & Method)这三个维度串联在一起的是过程(Process)。过程使业务方式协调一致;过程支撑业务的规模化发展与术业精进的知识整合;过程还促进资源的有效利用与对业务趋势的把握。专注于过程,可以为企业提供应对不断变化的世界所必需的基础设施与稳定性,并可以最大化人的生产力,以及技术使用的竞争力。(《CMMI for Services, Version 1.3》)

上一篇我们在意识上明确了质量的重要性,接下来PM应建立的是过程管理意识,准确定义项目组的过程现状,并不断提升过程能力。

CMMI是目前软件行业用于过程改进的最佳模型,无论公司是否实施过CMMI,也无论以何种目的实施CMMI,PM都应该正视CMMI的权威与价值,并在项目组范围内,以改进为目的,践行CMMI的优秀实践

图片来自网络,版权归作者所有

PM意识升级2.0的更多相关文章

  1. xcode7.3 升级 xcode8.0 后权限设置问题(升级xcode 8.0 后构建版本不显示问题)

    xcode7.3 升级 xcode8.0 后权限设置问题(升级xcode 8.0 后构建版本不显示问题) 前两天为了适配 iOS10 的系统 我将xcode 7.3 升级到了 xcode 8.0 但是 ...

  2. gitlab RPM卸载 & 安装 && 升级(9.0.13-》9.5.9-》10.0->10.3.9->10.6.6-》10.8-》11.0)

    版本:9.0.3 升级版本:9.0.13 一,停止服务 gitlab-ctl stop unicorn gitlab-ctl stop sidekiq gitlab-ctl stop nginx 二, ...

  3. python3 升级 pip9.0.1 到pip-9.0.3

    首先试试 python -m pip install --upgrade pip python3.5 升级 pip-9.0.3报错 You are using pip version 9.0.1, h ...

  4. 【Unity】近期整理Unity4.x 项目升级Unity5.0 过程中出现的各种常见问题,与大家共享。

    近期整理Unity4.x 项目升级Unity5.0 过程中出现的各种常见问题,与大家共享. 1:Unity4.x 项目中3D模型其材质丢失,成为"白模"?       解决方式:手 ...

  5. Android Studio升级到0.8.1后怎样设置字体大小?

    升级到0.8.1后.打开设置字体大小页面.你会发现无论是Default还是Darcula,都不同意你改变字体的大小.事实上这个是由于这两个模式是Android Studio自带模式,所以不同意你修改, ...

  6. 升级xcode10.0, 终端运行 运行报错:Print: Entry, “:CFBundleIdentifier”, Does Not Exist

    目录 问题原因 解决方法 终端解决 Print: Entry, ":CFBundleIdentifier", Does Not Exist 第一步: 去官网GitHub下载对应包就 ...

  7. centos6.8 Mysql-5.7.20 升级 mysql-8.0.14-1

    Mysql-5.7.20 升级 mysql-8.0.14-1   操作前建议先查阅以下网页初步了解Mysql版本升级信息  https://blog.csdn.net/u012946310/artic ...

  8. Blog.Core 项目已完成升级.NET5.0

    (是时候拿出来这种图了) 本文首发于公众号,但是会有新的内容加进来,所以就在博客园新开了一篇,望见谅.截止发稿,Blog.Core项目Master分支已经迁移到了5.0,新建了3.1的分支. 开心的锣 ...

  9. GreenDao2.2升级GreenDao3.0的适配之路

    前言.为什么要升级到Greendao3.0? 1. 多人开发 以往的数据库建表建Dao等操作要新开一个module,在统一的地方管理数据库建表,现在可以直接写Entity.多人开发时自己管自己的Ent ...

随机推荐

  1. C#处理json实战

    昨天看到技术群中发了一个查询天气的api,http://www.sojson.com/open/api/weather/json.shtml?city=南昌 点进去看,发现服务器传回来一个天气信息的j ...

  2. forEach循环对集合进行循环时,需判断是否为null;

    分析forEach的源码会发现:foreach源码例子: public class Foreach { public static void main(String[] args) { List< ...

  3. vue学习记录④(路由传参)

    通过上篇文章对路由的工作原理有了基本的了解,现在我们一起来学习路由是如何传递参数的,也就是带参数的跳转. 带参数的跳转,一般是两种方式: ①.a标签直接跳转. ②点击按钮,触发函数跳转. 在上篇文章中 ...

  4. Challenges-XSS

    https://alf.nu/alert1 warmup adobe JSON

  5. 持续集成之 Nuget 进阶

    持续集成之 Nuget 进阶 Intro 之前介绍了一篇基于 Azure pipeline 的 nuget 包的持续集成配置,但是比较粗糙,这里介绍一下结合 Cake 实现更优雅的 nuget 包发布 ...

  6. #Java学习之路——基础阶段二(第八篇)

    我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...

  7. 【机器学习】--xgboost初始之代码实现分类

    一.前述 上节我们讲解了xgboost的基本知识,本节我们通过实例进一步讲解. 二.具体 1.安装 默认可以通过pip安装,若是安装不上可以通过https://www.lfd.uci.edu/~goh ...

  8. 架构师入门:Spring Cloud系列,Hystrix与Eureka的整合

    和Ribbon等组件一样,在项目中,Hystrix一般不会单独出现,而是会和Eureka等组件配套出现.在Hystrix和Eureka整合后的框架里,一般会用到Hystrix的断路器以及合并请求等特性 ...

  9. window.localStorage的用法

    一.什么是localStorage.sessionStorage 在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题 ...

  10. SpringBoot集成rabbitmq(二)

    前言 在使用rabbitmq时,我们可以通过消息持久化来解决服务器因异常崩溃而造成的消息丢失.除此之外,我们还会遇到一个问题,当消息生产者发消息发送出去后,消息到底有没有正确到达服务器呢?如果不进行特 ...