说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

从真实案例出发:如何在协作开发中避免误解!

HTML文档下载 WORD文档下载 PDF文档下载
优秀的软件是多部门齐心协力的产物,在软件开发项目里,一旦交流不当,误解是避免不了的。文章里从项目经理--开发者--测试者--客户之间的微妙而又重要的关系入手,和文档细节、交流工具的使用,分析了如何避免误解。

本文作者Dmitriy Kharchenko是一家乌克兰软件开发公司Acceptic Ltd的CEO。该公司的核心运营项目包括创建复杂的客户端App,专注于为开发者团队提供专业服务。在本文中,主要讲述在软件开发项目里,项目经理--开发者--测试者--客户之间的微妙而又重要的关系。产品的质量需要开发团队和客户双方协作才能完成。(以下是编译内容)

经常遇到在软件开发里各种各样的误解所导致的奇怪事情。不过说来也很费解:对于这样不正常的待遇,尽然很少有人提出质疑,也没有人问开发者是什么导致了误解和交流上的障碍。可能大部分人都觉得问这样的问题为时已晚或者没人关心这样的问题。所以,跟踪调查软件开发里开发者之间引起误解的来龙去脉是一件很有趣的事情。


因此,下面就围绕对开发者和项目经理的采访来探讨在开发项目里导致误解的普遍性原因所在。根据这些经验丰富的IT技术人员所说的,一起来学习并避免这样的事情出现在自己的开发团队里。

和客户端:交流没有最多,只有更多。

文档和记录


能够说客户的语言并理解客户的意思其实是特别重要的,理解不一致难免会出现问题。比如:因为语言不一致,导致双方的程序员在技术层面上无法完全理解使用说明规范。

有的时候客户拒绝编写任何文档也会引起开发者的误解。因为我们的开发团队要对产品的功能性进行多个测试、评估,还要不断地多次重写功能代码,团队里每个人对产品功能都有自己的见解,因此,花费在迷茫上的时间不在少数。其次,没有功能说明书的前提下测试人员也很束手无策,根本不了解这些功能是怎样运行的,也没有文档可参考。这些都难免会引起误解。

另一个产生误解的源头是信息不完全。例如:客户和开发团队的成员交流产品细节,客户希望开发人员将数据分类,而不是在Skype上进行群组交流。有经验的人都会知道,客户在和开发者之间的误解肯定会涉及到工作完成的标准与否。这也就是为什么有人觉得定价的服务项目对双方都不利。因为它是不可能将所有可能的产品描述写入产品验证的。对于这类问题,解决办法总是有的。

信任、开放的态度


当客户不信任开发团队的时候,采取闭门会议、给出一小部分信息的话,那障碍就会出现,最终的结果只能是重写代码,重设架构。在一个团队里,如果没有信心,即使是正常的开放式交流也对高效率和创新性毫无裨益。没有一个团队会把于己无关的项目放在心上。有的时候,客户只给出模糊不清的需求,任何人都可以想象得到,开发团队为了获得更详细的信息多多少少都会和客户产生一点小分歧乃至是小冲突,直至造成更大的误解。

目标清晰、详细阐述


当交流进程失败了,只能面对下面的情形:

  • 客户会给出一个评估任务并找到一个实现方法,但团队开始开发而不是仅仅发送一个报告而已。
  • 开发团队在实现阶段也要和客户进行协作,可能会出现的情况是客户根本不选择你所提供的解决方案。
  • 有的时候开发者开始处理一个指定的bug,即使严重的功能改变可以保证性能的提升,但是客户还是不同意你的做法。

个人认为,误解的出现主要是对问题没有做充分的讨论,懒惰、时间紧、外语障碍都是阻止寻求建议的主要因素。所以,解决误解的关键就是不管什么事都要和你的团队、项目经理、客户进行讨论。

及时反馈信息


有时候客户不重视用户评论,或者是忘记将这些用户评论传递给开发团队,这也就导致开发者没办法即使关注产品的反馈信息。误解就这样产生了——因为在项目结束之后,客户需要重新开发/调整项目,是的双方都不是很满意。

不同的加班理念


也许客户和开发团队在加班这件事上会存在理念上的不同,客户需要开发团队在没有真正必要性的事情上加班,例如:

  • 客户:在产品发布之前,我们每周都会加班一次,所以希望开发团队也尽可能的抓紧时间按时完成任务。
  • 开发:长时间的加班会打击团队的积极性,降低工作效率。

对于加班这样的误解,最简单实效的办法就是双方之间做出真诚的协商,给对方吃一颗定心丸:绝不会延缓进程、影响产品质量。

小结

交流,交流,再交流,而且是双向交流!客户尽可能多的列举细节,开发团队得到的完整而清晰的信息有助于更好的理解项目的目标,对项目的圆满完成不无益处。通常情况下,为开发团队提供全面的反馈信息,也不滥用不必要的加班时间,有利于双方创造一个和睦的工作氛围。

团队VS.项目经理

在有的开发团队里项目经理根本不会就客户的需求去和团队进行有效的沟通。例如,有可能会出现这样的情形:项目经理在和客户主导一个讨论会议,而团队里的主要人员却在蛮干,这就是为什么信息最终不能被团队全面接收的原因。


首先呢,交流误解出现在项目经理和他的团队之间,这的确是一个让人失望的案例,因为项目的日程安排、截止日期、和客户的信息传递都是由项目经理定义的,目前这样的问题带有个人原因,所以解决方法就是项目经理需要更多的自我反思,寻求出路。

小结

努力遵循敏捷开发的方法,千万不要忽略常识和人性特点。

开发者VS.测试员


世上没有相同的两个东西,所以出现在开发团队和测试团队之间的误解,大部分是原因是需求过于模糊。为了克服这样的难点,建议两个团队需要加强更加紧密的协作:

  • 在文档开发过程里
  • 在架构/数据库工程里使用QA环节
  • 在测试案例开发中邀请开发人员加入

通常情况下,在开发项目里任何形式的误解都是一个大麻烦。它可能是缺乏良好的管理、缺乏团队建设、失效的软件开发方法、未定义标准等等。每个交流误解案例都应该仔细分析,并单独处理。

小结

在开发者和测试者之间的误解代价是最高的,所以避免这样的误解需要双方之间透明工作细节以及有规律的刷新文档,或者是双方之间更亲密、永久性的交流沟通。尤其是在项目计划的后期。除此之外,开发团队必须清晰地意识到QA环节的重要性,还要考虑到和测试者是一个整体团队,对产品负有共同的责任。

沟通工具:语音聊天工具(Skype)VS. E-mail


考虑到敏捷开发方法里所追求的速度与效率,E-mail的特点是有较高的延迟性,所以不可取。所以对于集思广益的讨论需要向Skype或其他的多媒体工具。但是,我建议项目经理能够鼓励开发者多写邮件,这样可以锻炼他们用一个干净和简洁的方式表达自己的想法,所以很多事情通过他们的邮件就可以解决了。不过在开始Skype会议之前最好是通过E-mail将要讨论的话题发给大家,包括客户。

毫无疑问Skype能够确保即时沟通紧急情况/议题,而E-mail是储存历史记录的最好工具。这两个沟通工具各有利弊,只需要遵循合理的使用,减少团队误解几率是毋庸置疑的。

总结


在软件开发项目里,对于交流标准需要强调五条规则:

  • 每个环节都要沟通:业务计划、项目目标、财务问题、交付模型等等。每一个技术性能都要彻底的讨论。如果你想呈现什么样的想法,那就通过E-mail文档的方式来证明它。
  • 个性化你的工作。和团队成员交流的时候尽量鼓励大家表现出自己真实的一面,这样有助于激发队员的创造力,做出更出色完美的结果。
  • 持续提供反馈。反馈信息就相当于一面镜子,时刻反映工作成果的好坏。作为项目经理,一定要避免一个现象,那就是责怪队员,因为所有的人都只有一个目标——好产品。
  • 在问题变质之前解决它。突出强调你很想知道摆在面前的所有狭窄的地带。鼓励大家提出疑问!
  • 使用E-mail解决真正重要的问题,这样有助于避免在无关紧要会议上浪费开发者和自己的时间。

作为一名工作经验丰富的管理者,希望以上的内容对IT工作者有用。          (编译/薛梁  校审/付江)

原文:Acceptic

Apple Watch应用开发经验谈:我遇到的那些坑 约吗?UNITE 2015 BEIJING日程全揭晓! 谷歌扩擴增App搜索結果 已抓取300亿App页面 功耗、联网与交互:可穿戴设备操作系统问题解读 李大学离职京东后:转做投资人,助传统产业“互联网+”转型 Skype Translator实现中英实时语音对话 语音翻译领域又一新突破 如何判断自己是否适合自由职业? 创造·连接·成就:UNITE 2015 BEIJING圆满落幕 IT互联网人才招聘市场特点:人少钱多疯狂抢? React Native并非原生 Instagram Apple Watch应用设计师:对原有App全部重新思考 腾讯网移动端H5页面设计实战分享 Kendo UI和AngularJS常见问题解析 Elevator.js:模拟电梯运行的“返回顶部”JS插件 Java,传奇的一生! 约吗?Java二十周年特别策划——寻找Java大牛! 走近英特尔软件技术王牌之师:系统技术和优化部门 新兴技术袭来,Web开发如何抉择? 新创社交平台Tsu 5周註冊用户破百万秘訣 Google Play:助力中国开发者的海外梦想 JPHP——一款基于JVM的新PHP编译器 舌尖上的CTO——小杨生煎的持续交付 《近匠》滴答清单,跨平台云同步的任务管理工具 DJI与优酷土豆战略合作:提升UGC价值,先内容再营销 Android性能优化典范(二) 从三大运营商联手 看电视游戏背后的现状 【工具推荐】Vert.x——非阻塞、高并发的编程开发框架 Google搜索在确定结果排名时会将网站的移动设备适用性作为考量因素 W3C首次发布SVG标记、SVG轮廓标准工作草案 第七届中国云计算大会 | 首批主会演讲嘉宾和议题公布(表) 安沃传媒创始人王旭东:开发者从移动广告获利的黄金时代已经来临 一个奇怪的现象:Delete键在TextBox中失灵 怎么样屏蔽键盘上的print screen键? 为什么一调用office就死机? 谁有Ide.sys、cdrom.sys这两个文件和两个文件的原代码啊! 请问: 当J2EE开发C/S模式时,我的C端要不要装J2EE平台啊?(在线等) 局域网中,一些电脑可以PING通局域网内所以电脑的IP,但是网站邻居就是无法查找到? 委托中要求进行参数传递,应该怎样做,谁帮帮我? *>>--谁做过日历以及日历相关-- 如何卸载windows 2003 server,再重新安装windows 2000 server? 请问将Interbase中两个Varchar型字段连接起来的查询语句怎么写? 域名设置问题?? 为什么微波和X光能穿透介质,而波长介于它们之间的可见光恰不能? 生成EXE问题! Transaction Data Module 和 ADO 问题 寻求DOMINO SERVER 得配置资料!如HTTP的配置等等。 怎么创建dll?创建dll时参数应该怎么定义?创建后怎么调用?在哪儿声明? 熟悉ADODB.Stream的大侠看过来! 在WIN32 CONSOLE APPLICATION 建立的程序中为什么不能使用CString 类 数据库恢复的简单问题 谁用过jfreereport或jaxperreport做过报表?各位大哥帮忙呀!!!--就20分了 紧急高分求助:怎么在windows的user control中加一个参数 [求助]怎样让工程加入Data Report ,菜单 工程 里没有添加Data Report 的呀? 倡导成产手机爱好者与自由开发者协会 CPU拨了会不会叫的啊。内存和显卡拨了不会有声音,一定是主板有问题吗? 我的程序都关闭了,可是为什么进程还存在,我用了多线程的? 呼救高手--急:在线等待帮忙--怪异啊! 急!在线等 浏览器关闭事件----急,谢谢 各位大虾帮帮忙!!!必有重谢!!! 求助二维数组排序问题? 那里有Delphi下载啊? 下面的代码总出错 如果指针被阉割掉以后... 哪位提供一点关于开发小型dbms系统的odbc驱动程序的资料啊? 探讨DMBS??? 关于数据库操作一问? ***禁止重复登录?*** cout流的执行方式问题!请高手回答!不胜感激!!! 欢迎广临(API打印)CDC if (know && 高手) 值得讨论 else 有收获的; 在线等候 咋再MS SQL中实现这个查询? 通过ADSI验证用户登录的问题。 寻找控制面板编程方法 怎么判断类是否存在? 能通过网络修改其它机器的IP地址么?请教各位大侠,在线等!!! 求一段代码:如何得到硬盘的物理系列号,可以用来做为本机唯一标识! 在c++builder中怎样控制excel图表(急!!) 请问如何注册控件并调用、???谢谢 delphi连ACCESS怎么连,具体点。 一道有关类的习题 关于FORM使用的问题,请高手帮忙!!!!!!!!!! 有一个问题! 带翻译的英语小故事? 英语小故事(要作者)不论多长都可以,最好短一点,但是必须有作者.可以不要翻译. 两条直线相交成90°的角,那么这两条直线互相() 七年级下册生物如何判断事实和观点 王后雄考案生物 怎样? 生物全一本哪种的好?王后雄的怎么样 王后雄 还是 点拨 好 王后雄高考母题这本书怎么样 浙江考生 买物理的应该是A版还是B版 还有没有别的物理的书比较好点除了五年三模的 암홀 社会主义或者说共产主义是否会灭亡?按照唯物辩证法的观点:任何事物都是过程的,在过程中产生,在过程中发展,在过程中灭亡.依据唯物史观和剩余价值学说确定了,资本主义的必然灭亡,社会 매로!什么意思 广西岑溪炮竹厂爆炸致7死19伤 事故卫计委:加强医院内部治安管理 保障诊外交部:“东伊运”是中国最直接最现实韩劳工诉日企再获胜 获赔2.3亿韩元到2017年德国医疗保险账户将亏空1黎巴嫩支持召开叙利亚问题第二次日内瓦黎巴嫩支持召开叙利亚问题第二次日内瓦杭州火车东站地裂女子被卡 建设方称系杭州10岁女童遭“淫魔”猥亵 家长怒广西岑溪炮竹厂爆炸 已致7死19伤海军三大舰队西太平洋演习落幕 今后将拓新时代广场助力“千亿汽车城”我市专项整治小金库举报电话:6757绿地集团公益活动感动的哥的姐14家ST公司披露中报 8公司续亏消防通道被占 巴南开展联合整治价格看涨 学区房逆市受捧成香饽饽明晚 群星助阵力帆·红星国际广场黄金投资或迎来高峰创维OLED当选“创新产品”透过170面铜镜 从战国看到清朝彩电节最高直降50%
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘