避免软件失败的7 个关键实践
避免软件失败的7 个关键实践
实践 1. 邮件列表:把邮件列表作为主要的团队交流途径
实践 2. 配置管理:
实践 3. 需求管理:持续地整理、记录和跟踪用户的需求
实践 4. 编码规范:遵循基本的编码规范书写代码
实践 5. 缺陷跟踪系统( BTS ):使用 jira 、 mantis 、 butterfly 、 clearquest 等工具来管理测试中的缺陷
实践 6. 计划和周进度会议:制定计划并每周审查本周的成果和课题
实践 7. 书面表述:准确完整地描述需求,成果和课题
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
今天先和大家分享避免软件失败的 7 个关键实践,富士通的一个专家题目
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
首先,问问大家,软件失败如何定义
hz_wm- 上海说 :
失败就是没满足客户需求
BoardPang-IT-PL- 苏州说 :
软件失败没有满足主要干系人的期望
BoardPang-IT-PL- 苏州说 :
不一定是客户
胡勇光说 :
失败就是没有为公司创造利润
hz_wm- 上海说 :
没有达到预期目的
flytoegg- 技术主管 -TIANJIN 说 :
我觉得软件失败得分技术失败还是需求失败 ~~ !!
一点红 -pm-it-shanghai 说 :
是没有达到预期目标
晓波 - 失业 - 上海说 :
失败?就是无法达到项目的目标
flytoegg- 技术主管 -TIANJIN 说 :
,同意没有达到项目预期的
BoardPang-IT-PL- 苏州说 :
我们的客户只在乎进度,不在乎进度和成本
只在乎质量
flytoegg- 技术主管 -TIANJIN 说 :
需求随时的变,也是造成失败的原因
flytoegg- 技术主管 -TIANJIN 说 :
我这就有架构设计缺陷导致项目失败的
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
所谓“失败”是相对的定义,至少在中国是这样
我们没有 100% 满足干系人需求,不一定代表失败
有时候,至少能够“糊弄一下”,不出大问题
有时候,至少能够“抵挡一时”,能勉强使用
项目并不像产品一样,并不需要达到非常高的品质
【税务、银行系统项目除外】
有时候,并不需要完美地实现所有的功能
这样一来,我们有两个朦胧概念
1 、需求要尽力而为,如有偏差要做好沟通,包括变更
2 、做好客户关系
这里说的需求是各类需求
那么,作为技术人员的 PM 和团队,如果在这个过程中避免项目失败呢
富士通的蔡总,有 7 个实践
架构设计更是自己的事情了,对客户而言只有需求
实践1. 邮件列表:把邮件列表作为主要的团队交流途径
前提是:摒弃仅以口头为主的交流方式,要用邮件备忘
口头的东西,有以下的缺陷:
容易产生误解;
容易遗忘;
无法对成果进行确认;
让我们:
白纸黑字,将功能( Feature ),约定( Commitment ),日程( Deadline )明确地写下来吧;
其中, Wiki , BBS 等也是辅助的共享的手段。既是交流,也是证据。
好记性不如烂笔头
实践2. 配置管理:
对代码 / 测试程序和文档使用 CVS 管理
一般的公司对代码会有版本管理,但对文档就差一些了,而文档的版本恰恰是分歧的关键
CVS 配置管理的重要性,有哪些?很显然,
各归其位,变更有序;
清晰显示团队开发的所有代码;
实现测试数据管理自动化;
无需担心文件版本,文件名称的变更
但真正做到的很少
特别是,文档、测试数据的版本管理
例如,你提交的项目客户不认可,你的场景测试数据却不是原来的
谁都不会认同你
这里提及的 7 个实践都是最基本,但却做不好的地方
实践3. 需求管理:持续地整理、记录和跟踪用户的需求
这个说的简单,什么是客户需求
真实准确地把握客户的需求很难
例如, UI 每个人的看法还不一样的
尽量做到,“以客户为中心”,真实准确“抽引”出需求;
工具是辅助的也是必须的,但核心是执行
可以使用需求管理工具 (ExcelorMantisorDoors)
Mantis 是开源的
还有 IBM 的 ClearQuest
商业的都比较昂贵
实践4. 编码规范:遵循基本的编码规范书写代码
编码规范很基础,但有的公司编码规范有 50 条,基本不可执行了、太复杂、人记不住的
通常编码规范容易被忽视
要避免源程序当做“草稿”
源程序生命周期高于开发周期的,要尝试让他人阅读你的源程序
以免自己也像后浪骂前浪一样,写得是狗屎啊
拿一份印度的代码,高中生的,中国的程序员基本都会汗颜
对于前人太烂的代码,可以考虑敏捷的一些方法,尝试一下“代码重构”的方法
MartinFowler 是重构的鼻祖,很实践的方法,大家可以从书店找到他的书
实践5. 缺陷跟踪系统(BTS ):使用jira 、mantis 、butterfly 、clearquest 等工具来管理测试中的缺陷
避免 BUG 反复出现;
快速及时找到 BUG ;
管理测试生命周期中各种烦心事
特别是客户提的问题,一定要反馈到这个系统上
用项目交付后的 bug 率来考核测试人员,用测试 bug 率考核开发人员,一切质量问题都迎刃而解
有的公司我知道,例如华为,一个客户反馈的 bug ,从一线到项目负责都会直接扣 500 以上的工资
实践6. 计划和周进度会议:制定计划并每周审查本周的成果和课题
避免失败的基本要素:
过分的乐观是 IT 开发早期的致命伤;
当心小偏差造成大问题;
时刻关注潜在的风险和危机;
每周一次的自我检查和诊断( 5W2H )
whatwherewhenwhyhow 。。。
要细致 review 不是简单的例会问一遍
实践7. 书面表述:准确完整地描述需求,成果和课题
程序员可以不注重文档,项目经理必须把文档当做基本功
重视文档的技术含量
需求文档、设计文档、阶段点的文档汇报等都体现的功底
将长句简化为短句,不要双重否定
文档就是用于理解的,而我们经常看到的文档是一段都是逗号,最后一个句号。
给评审人、领导设置障碍啊,呵呵
以上我们提了避免失败的 7 个实践,我们从正面谈持续成功的策略有哪些?
1) 开发的过程化
2) 标准化和分工
3) 自动化方法:自动化测试 / 自动 build 环境
4) 知识总结:留下知识和数据。
5) 人员能力的训练:不仅仅是过程
6) 经验的持续积累:强大的体制力量
ok 以上就是这个话题的分享结果
大家交流
晓波 - 失业 - 上海说 :
强大的体制力量?
这个是说?
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
系统以往成功经验
[ 晓波 - 失业 - 上海 ] 这个持保留意见
说说
晓波 - 失业 - 上海说 :
有的公司我知道,例如华为,一个客户反馈的 bug ,从一线到项目负责都会直接扣 500 以上的工资
对于这个例子的保留
如果公司不允许犯错,
个人成长就太困难了
刚才有为朋友说失败了四个项目
要是在华为,不知道是什么样的惩罚了。
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
通常压力没有正想反馈,是不足以推动的
kingship-dz-tj 说 :
好像移动那些客户肯本就不会反应 BUG ,看看移动,联通,网通的网站就知道了,根本就没 QA 和 QC
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
客户考核的是测试是否全面,开发人员有连带责任
flytoegg- 技术主管 -TIANJIN 说 :
,华为的管理肯定是严格的 ~~
richard_tl_sh 说 :
上面好像没有讲teambuilding
hz_wm- 上海说 :
我还是赞同华为的做法的
wangxuesen@yahoo.com.cn(E-mailAddressNotVerified) 说 :
移动的人不管东西好坏反正做好了他们就有奖金,坏的话找供应商就好
it01- 假冒 pm-huabei 说 :
我也赞同但是要上头去推动
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
不同企业不一样,国字号的就不要提了
hz_wm- 上海说 :
而且客户反映的那个 bug 肯定也是给客户带来损失的
wangxuesen@yahoo.com.cn(E-mailAddressNotVerified) 说 :
管理太严对进度和工程师的积极性有影响
一点红 -pm-it-shanghai 说 :
如果 bug 从客户方面反馈 , 那么团队必须都要负责任
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
要辩证看,项目的正向激励更大
晓波 - 失业 - 上海说 :
richard_tl_sh 说 :
上面好像没有讲teambuilding
眼光很独到
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
例如进度提前了,奖金是上万的
晓波 - 失业 - 上海说 :
日企有这个文化吗?不知道
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
奖多罚少,不能仅看局部
没有客户的反馈作为考核,客户满意是不现实的
teambuilding
1) 开发的过程化
2) 标准化和分工
3) 自动化方法:自动化测试 / 自动 build 环境
4) 知识总结:留下知识和数据。
5) 人员能力的训练:不仅仅是过程
6) 经验的持续积累:强大的体制力量
晓波 - 失业 - 上海说 :
客户反馈很重要。不过更重要的是来反思中间的问题
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
4 、 5 、 6 都涉及
晓波 - 失业 - 上海说 :
也就是通过 qa 做持续改进
目标是消灭缺陷,
手段比较直接了。
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
当然,这 7 点是蔡总最看重的,不一定成熟。他们是 CMMI5 早期企业
hz_wm- 上海说 :
目标应该是消灭缺陷发生的原因
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
持续改进不受影响,两条腿走路么
chinamath( 海茶 )-Sr.SE- 北京说 :
这 7 个实践总结的挺好,我们公司还真就是这么做的,所以项目控制的都还好,目前还没有出现失败的项目。我几年前参与过一个失败的项目,现在回想,当时还真没有按这 7 个实践做。
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
不能因噎而费食
也不能没有人承担责任,仅项目经理承担责任那只是人制,公司风险较多
richard_tl_sh 说 :
除开最后一点,其他的我们都做了
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
最后一点为何没有涉及
richard_tl_sh 说 :
开发流程化基本上没有问题,但是还是缺少点团队之魂
晓波 - 失业 - 上海说 :
这个是缺少了 leadership 和 teambuilding 的工作
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
最后一点是不可或缺的
richard_tl_sh 说 :
体制上的转变,需要至上而下的
pharos 【谷雨霖】 -cto- 北京【招聘 java 工程师】说 :
反问,做好这 7 点,没有 leadership 哪能做得到呢?
我们不能总机希望于改革
从自己做起,才能真正改变环境。
改革,领导的大力支持是稀缺资源
chinamath( 海茶 )-Sr.SE- 北京说 :
有道理,所以这 7 个实践应该是项目成功的必要条件吧?

 

避免软件失败的7个关键实践——来自项目管理群的讨论相关推荐

  1. QQ群、讨论组上传文件,由于网络原因上传失败?

    QQ群.讨论组上传文件,由于网络原因上传失败? 听语音 | 浏览:194 | 更新:2016-10-29 14:17 | 标签:软件 电脑 1 2 3 4 分步阅读 QQ群.讨论组上传文件,总是由于网 ...

  2. 《深入核心的敏捷开发:ThoughtWorks五大关键实践》读书摘记

    深入核心的敏捷开发:ThoughtWorks五大关键实践 肖然 张凯峰 简介 价值驱动的精益研发转型实录 愿景:打造招行端到端的精益研发管理体系,价值驱动.质量为先,以行业领先的科技能力驱动创新与变革 ...

  3. 浅谈软件供应链安全治理与应用实践

    随着容器.微服务等新技术日新月异,开源软件成为业界主流形态,软件行业快速发展.但同时,软件供应链也越来越趋于复杂化和多样化,软件供应链安全风险不断加剧,针对软件供应链薄弱环节的网络攻击随之增加,软件供 ...

  4. 软件项目 风险管理用到的实践_软件项目风险管理方案

    软件项目风险管理方法 软件项目风险管理方法 在上世纪 60 年代, 西方世界的软件危机使人们 开始清醒得认识到软件开发过程的高复杂性,许多学 者致力于通过软件标准化,并提出一系列软件过程模 型,将系统 ...

  5. 《敏捷软件开发-原则、方法与实践》-Robert C. Martin

    Review of Agile Software Development: Principles, Patterns, and Practices 本书主要包含4部分内容,这些内容对于今天的软件工程师 ...

  6. 【敏捷2.3】极限编程XP的关键实践(一)

    极限编程XP的关键实践(一) 提到 XP 的关键实践,就不得不拿出下面这张图. 看着眼熟不?是不是很多内容我们在上篇文章中其实都已经讲过了.没错,可能有些概念你很清楚,但有些概念你就完全没听说过了.今 ...

  7. 软件性能测试分析与调优实践之路-Java应用程序的性能分析与调优-手稿节选

    Java编程语言自从诞生起,就成为了一门非常流行的编程语言,覆盖了互联网.安卓应用.后端应用.大数据等很多技术领域,因此Java应用程序的性能分析和调优也是一门非常重要的课题.Java应用程序的性能直 ...

  8. 【转载】软件性能测试分析与调优实践之路-Web中间件的性能分析与调优总结

    本文主要阐述软件性能测试中的一些调优思想和技术,节选自作者新书<软件性能测试分析与调优实践之路>部分章节归纳. 在国内互联网公司中,Web中间件用的最多的就是Apache和Nginx这两款 ...

  9. 【转载】软件性能测试分析与调优实践之路-性能分析调优思想与调优技术总结

    本文主要阐述软件性能测试中的一些调优思想和技术,节选自作者新书<软件性能测试分析与调优实践之路>部分章节归纳. 一.  性能分析与调优思想 1.性能分析调优模型 性能测试除了为获取性能指标 ...

最新文章

  1. 实战:基于OpenCV实现偏斜文档校正
  2. Strict Mode (JavaScript)
  3. 嵌入式面试知识点总结 -- ARM篇
  4. 深度探索推荐系统算法在工业界如何应用
  5. boost::gil::packed_channel_value用法的测试程序
  6. java面试要点---ibatiS框架的使用方法介绍---随时更新
  7. Csharp windowform bindingNavigator,bindingSource,DataGridView簡單分頁:首頁,上一頁,下一頁,末頁...
  8. 软件应用:HexorBase Tool 实战测试!
  9. Python chapter 2amp;3 learning notes
  10. BC26:使用MQTT对接阿里云平台
  11. HDU 6319 Ascending Rating(单调队列)
  12. 长安居大不易--用大数据分析西安租房现状
  13. 美国临床营养专家:冬季营养建议
  14. 【LeetCode 1125】 Smallest Sufficient Team
  15. Golang字符串中常用的函数
  16. 公司部门刚来个00后,从腾讯拿18K出来的这么卷?
  17. 美术初学者画速写人物遇到的问题有哪些
  18. CMS是什么?好的网站后台有什么特质?
  19. HNU-电路与电子学-小班2
  20. 软考信息安全工程师备考笔记4:第四章信息系统安全基础备考要点

热门文章

  1. python标准库math用来计算平方根的函数_《Python程序设计》试试题题库
  2. mybatis log4j 在日志中打印sql_SpringBoot整合MyBatis+详细打印执行SQL语句
  3. 的一致性哈希_五分钟看懂一致性哈希算法
  4. php input 只接收文件内容,一文搞懂$_POST和file_get_contents(“php://input”)的区别
  5. qt高亮快捷键_Qt高级——QtCreator常用快捷键
  6. vue element form 默认校验
  7. Visual Studio 2017 linux C++
  8. 09 动态数组和数据
  9. hdfs shell
  10. opencv 鼠标事件