




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、论软件开发过程中与客户的沟通一、沟通的重要性与必要性软件开发中与客户的沟通一直是不被充分重视的问题,实际上,如果沟通不利,往往会使各利害方在迷宫里穿梭,用各自不同语言、说着不同的事情,项目进度延误,互相指责埋怨,成本直线上升。可以说,软件开发过程中的沟通问题是影响软件生产效率和可用性的重要问题。一个最实际的例子就是2006年初,本人所在单位开发一个大型的项目管理系统,其中需要建立一个财务子系统。最初我部门的一位副手在同开发商沟通时一直在引用财务专用术语和分析财务电算化系统的功能特点,结果一星期下来,双方虽然每天都在消耗4、5个小时进行需求调研,但实际是一直处在相互理解对方所说的内容上,而真正的
2、调研是没有一点实际的进度。美国的一项调查研究指出,沟通是软件开发计划中必须考虑的工作量:人数n的变化,将引起沟通路径n×(n-1)2倍的变化。这使得软件开发中人员与时间两个要素呈现出错综复杂的关系。此后,一些实证研究也说明了沟通对软件开发的重要性。同时,该项目的研究者McConnell博士用访谈法研究了17个大型软件开发项目,与客户的沟通和协调中断是导致软件项目失败的主要原因之一。McConnell通过文献分析,总结出软件开发的12项典型错误,其中和与客户的沟通问题相关的有4项。从课堂提供的“市场调研系统”案例中Khali一直强调的“我们一直都是按进度完成的,直到我的两个程序员退出项
3、目。问题在于你的人不断的改变主意。当我们开始开发这套市场调研系统时,你说我们不需要考虑记录消费购物券的问题。等所有人完成了需求分析时,你又突然要加上这些功能。这样我们就得从新开始。这就是我们为什么迟于预定计划的原因”,我们也不难看出此点。信息系统本身就是沟通的产物。软件开发的原料和产品就是信息,中间过程传递的也是信息,而信息的产生、收集、传播、保存正是沟通管理的内容。可见沟通不仅仅是软件项目管理的必要手段,更重要的,沟通是软件生产的手段和生产过程中必不可少的工序。 软件开发的柔性标准需要沟通来弥补。软件开发不像加工螺钉、螺母,有具体的标准和检验方法。软件的标准柔性很大,比如在客户的心里好用是软
4、件成功的标准,而这个标准在软件开发前很难确切地、完整地表达出来。因此,开发过程中沟通互动是解决这一现实问题的惟一办法。 二、如何在软件开发过程中加强同客户的沟通1、充分利用需求分析阶段,建立良好的沟通基础软件开发的需求分析阶段是外部沟通出现频次较高的阶段。尽量理解客户用于表述他们需求的思维过程。高质量的需求来源于客户与开发人员之间有效的交流与合作。在沟通中着重掌握以下方面:、客户把自己的需求表达清楚本身就是一件困难的事,开发者理解客户的表达又增添了困难,语言会产生偏差,从上面本人的实践案例来看,应该说在软件需求过程中的沟通应主要把握“清楚”与“完整”这样两个基本原则。在沟通信息的表达上,灵活运
5、用诸如文字、数字、图形、表格多种沟通工具。下面为本人在同开发工程师在沟通财务子系统时,为便于对方理解而设计的图表:通过这两张图表,将需求进一步细化,系统设计的整体架构更为清晰,而且设计思路完全是依据本单位的财务流转过程与内部控制关键点而出发的,更加符合单位的实际业务现状和管理需要。在这样的基础上,我想软件开发工程师是不难理解客户的实际需要的,而且这些架构对于他们设计软件的整体框架也是非常具有借鉴价值的。、双方派遣的沟通人员能尽可能做到相互理解对方的业务或技术特点。软件的开发是把现实的内容转化成为信息化的数据的过程,如课堂对下图所分析的那样-重点是怎样把具体的内容认识后,再予以抽象化,然后再将其
6、进行转化。同样以文章开头本人单位财务系统开发过程为例子。那种双方互相晕头转向的状态持续了两周,任何进度也没有,而且沟通中的矛盾与指责也在逐渐加大。不得已双方都换了沟通人员。本人在大学时主修了电算化系统的设计与开发,因此对于数据库与类似的财务信息系统开发或多或少有一定的认识。在后来的沟通中,我一方面尽可能把财务专业的内容从系统需求的技术角度进行阐述,尽量在沟通中避免财务的专业术语;另一方面,则能尽量站在对方专业开发人员的角度提出可操作性的实施方案。这样沟通起来双方理解到位,不到一个月,财务系统的原型得以顺利搭建。、逐步完善,逐步发展的原则课堂上老师教授我们:“管理信息系统的建立一开始不可能一开始
7、就十分完善和先进,总是要经历一个逐步完善、逐步发展的过程”。很多客户的需求随着时势的变化会发生改变,这都是很正常的。因此,在软件开发设计过程中双方应遵循一个动态适应的原则。开发工程师不能“苛求”一开始就能全盘获得准确的需求,要想获得准确的需求,就要保持一直与客户的沟通,允许在需求调研的过程中客户提出变化,随时表达和强调他们真正想要的“软件”,只有这样,开发才不会偏离客户的初衷,一切设计才有意义。同样,对客户而言,应充分理解开发出的软件不可能一步到位。这就需要客户方应尽量立足于全局的角度,在沟通中明确轻重缓急,对于不是急需的功能,完全可以在二期、三期再进行具体开发。、依据不同客户需求特点,有针对
8、性地选择开发系统。不同的软件实施策略的开发系统在需求过程的沟通力度与效果也不一致,这就需要针对客户特点,选择合适的开发系统。比如以下两个策略:实验式策略:若用户的信息需求不确定性很高,则应采取该系统,即通过试验的方式去逐次近似并减少不确定的信息需求;规划式开发策略:若信息系统的规模特别大,复杂程度特别高,其信息需求的不确定性程度特别大(如跨地区、跨部门的和全国性的大系统)则应采用这种系统。通过这种有针对性的选择,可以通过各种可行性的技术手段,尽可能把沟通中存在的问题降到可接受的水平,从而实现软件开发过程的高效益和高效率。2、建立开发过程的跟踪协调与沟通机制充分借鉴国际先进的项目管理经验,搭建项
9、目开发整体的统筹规划体系。、以运筹学和项目管理理论为基础,制定项目管理运行表(如下图)。 以表格形式使得整体的项目实施目标与进度计划一目了然,同时通过比较各项任务的实际开始日期与计划开始日期是否吻合以及确定正式的项目里程碑是否在预期完成等方式,搭建了一个畅通的交流与沟通渠道。既便于同客户的沟通,也为开发团队提供了一个清晰的方案实施规划。、定期举行项目状态会议,由软件开发方报告进度,客户方提意见。这方面主要是遵循前述的“逐步完善,逐步发展的原则”,在软件开发的不同时期,通过与客户的沟通,及时修正和完善系统需求,为软件最终成型奠定良好基础,同时也避免了成型后期再作大项修改所造成的各种浪费。 在此基
10、础上,一方面应该多与客户沟通,例如安排软件的具体开发人员与需求方的实际使用人员的交流,或请客户参与到项目组中,不能一味地赶进度,埋头苦干,切记随时沟通才能保证不偏离轨道,才能提高成功率;另一方面则应在充分利用项目里程碑管理运行表的基础上,制定完善的项目汇报制度,明确沟通时间、频率和渠道。按照项目汇报制度定期组织项目组向客户方和管理层汇报,包括项目进度计划、已完成工作、与计划的比较、存在的问题、措施和建议以及下一步工作计划等。3、建立健全软件开发过程的变更控制体系在软件开发过程中,反复是完全需要和值得提倡的,只有做必要的改变后,才可能达到客户和系统间的良好匹配。需要引起注意的是:客户提出的需求变
11、动经常被开发人员自行消化处理了,而且是没有文字记载,没有客户确认,有的只是为了赶工期,为了不超成本,在程序中打补丁。在软件测试检查文档时解释说需求没来得及修改,等有时间再重新整理需求。而且这样完成的程序结构不够优化,甚至留有隐患。在软件开发过程中变更的协调与控制方面,应重点加强以下方面的管理:、确定需求变更控制过程。制定一个对需求变更进行选择、分析和决策的控制与评价的标准化过程,所有的需求变更都需遵循此过程。、进行需求变更影响分析。评估每项需求变更,以确定它对项目计划安排和其它需求的影响,明确与变更相关的任务并评估完成这些任务需要的工作量。通过这些分析将有助于需求变更控制部门做出更好的决策。、
12、维护需求变更的历史记录。将需求变更情况写成文档,记录变更日期、原因、负责人、版本号等内容,及时通知到项目开发所涉及的人员。为了尽量减少困惑、冲突、误传,应指定专人来负责更新需求。4、搭建实际的、可供客户参与的系统模型理解纸面上的系统和操作运行在机器上的系统,其差别是十分显著的。因此,当能够提供一个生动的规格说明成为可能的话,人们对它的了解将比说明性材料好得多。充分利用交互式的原型系统,把客户的需求转化为生动活泼的系统操作的过程与结果,这样可以使客户见到的是一个“活”的、运行着的系统,从而也进一步反映出客户的某些需求在实际操作过程中存在的一定程度的欠缺(比如原有的内部控制流程在经过信息化改造后,操作系统忽略了关键控制点的设计,导致控制力度被削弱等等),从而得以完善,从这个意义上讲,这样的原型在客户方与开发工程师间的沟通通过媒介的手段,以间接的方式,发挥了很大的作用。5、加强对软件开发后期的沟通一般把软件生命周期分为:软件计划、需求分析、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园课程整合的实践与研究计划
- 行政管理应试者如何提高解题能力的建议试题及答案
- API 文档撰写技能考题及答案
- 年度财务管理与预算控制策略计划
- 城市交通规划与社区规划重点基础知识点
- 软件工程中的风格与模式应用试题及答案
- 2024年中铁六局集团有限公司招聘笔试真题
- 2024年中国广核集团有限公司招聘笔试真题
- 2024年内蒙古呼和浩特相亲派招聘笔试真题
- 2024年甘肃省科学技术厅下属事业单位真题
- 水利工程水闸泵站施工组织设计
- 第七届江西省大学生金相技能大赛知识竞赛单选题题库附有答案
- 创新方法论智慧树知到期末考试答案章节答案2024年西安理工大学
- JTS-215-2018码头结构施工规范
- 山东省日照市东港区2023-2024学年八年级下学期期末数学试题
- 湖北省武汉市武昌区2023-2024学年八年级下学期期末数学试题
- 工程造价咨询的协调配合及服务措施
- 2022-2023学年广东省深圳市高二(下)期末数学试卷含答案
- 急诊科护士岗位说明书
- 农村废弃学校租赁合同
- 脊柱侧弯手术配合
评论
0/150
提交评论