在2008年6月21日的第三届”敏捷中国“技术大会的现场,不乏犀利的观众提出的一些项目实施过程中的实际疑难,我们的敏捷开发者是如何解惑的呢?
A问:在开发过程中,我们如何分工?项目的初期,哪些是最需要解决的问题?
Paulo Caroli:设计是不断发展的设计,如系统基本的构架,在发起阶段,在做第一个迭代的时候,我们应该讨论,与其他后面的迭代相比,要花更多的时间在初 期,因为大多数的设计工作室在初期来做的,如果项目比较简单,如果比较大,复杂,可能就需要花更多时间来做初期阶段的设计。
传统的分析过程,有很多决定和策划,当还是用过去这套方法的时候,我们开始的设计都是分析,想象,图标的构建,但是敏捷里,都是测试做驱动,没有时间去画漂亮的流程图,但是,这个设计的过程在哪儿去了呢?
设计无处不在,即使不负责写代码的人,也要参与设计。所有参与的人都要设计,而且从项目开始的第一天,一直到整个项目最后完成,设计都无处不在、无时不在!
传统的设计只在开始阶段做,之后就停止了。而现在,我们所说的敏捷开发,在最初的数据分析阶段,我们也称之为项目的启动阶段,一般会需要两周或六周。这个启动阶段,我们有迭代。但总体来说,迭代的时间比较短,只有两周左右;我们有进程,所有的人都是为了同一个事情做事。
所以,在这个敏捷开发的过程中,我们的成果可以多次发布,一直持续到最后的最终版本的发布。
发起阶段,虽然有很多的迭代,发起阶段需要搜集客户的要求,不一定很多,但是要考虑到规模,测试的战略,最初两周的需求和策略是怎样的。另外一个就是构架,你不可能不想构架就去开始实施,以后返工的话,代价就太大了。
B问:参与开发人员可能技能层次各不相同,怎么办?
Paulo Caroli:有一个做法我还没说,我们进行比较型的编程,在持续的整合的时候,里面所有人都有组成的部分,编程能力比较差的话,可以寻求高级编程人员的 帮助,在初期,设计会让高级的多做,后期的应用,则有低级程序员来做,高级程序员也可以更多地关注低级程序员的进步。
你说,都是可检测,在测试中出现问题,第一天就做TDD的话,不可能出现问题,但是,在工作中,有一些真的是不可测试的,要测试的话也很困难,但是又必须解决。
所以在一开始,就加入一个测试的工作,使之在过程中随时检测自己的迭代的准确与否。
大的团队中大的项目,是否可以使用敏捷?回答是肯定的,而且很多人都问过这个问题,(笑),所以,你的这个问题可以算是一个出名的问题了。
团队的架构可能是一个非常复杂的需求,开始的工作非常复杂。敏捷开发,对大的项目其实是比较有效的,最为重头的工作就是TDD的实践了。
C问:RUP与敏捷开发是否有联系?
Paulo Caroli:RUP其实就是敏捷开发的一种形式,RUP还是有很多的误解,主要是一种头脑的状态,你可以区别有些项目是否适合RUP来实施。
D问:在开发过程中,有的程序实在无法测试,如何解决?
Paulo Caroli:现在都可以测试,有时很难测试,但是我们认为我们可以测试所有的东西,有些东西是不可自动化的,是需要人工去测试的,不是编码的测试,如我 们把客户找过来,看对方是否满意,这样也是一种测试;当然,如果你有问题,你可以联系thoughtworks,他们会帮你解决自动化测试的过程。
附:Paulo Caroli简介
Paulo Caroli, www.caroli.org, 是ThoughtWorks公司的一名敏捷教练和高级开发者。他的专长在于敏捷开发和面向对象方面,精通各种相关的技术。他在电子商务和电信领域由丰富的 经验。在长达13年多的软件开发生涯中,他成功的担任了软件开发过程中的多种角色,包括:开发者、应用架构师、项目经理、业务分析师以及教练。
分享到:
相关推荐
让你可以无时无刻都可以设计你想要的模拟电路! 这里有几个常用到的仿真软件! 那就让你可以无时无刻都可以方便去画图和设计!查询 绝大部分都是汉化版!只有一个是汉化不完整的 绝对经典中的经典! 现打包上来 给...
我们无时无刻不在接触一个东西,那就时温度。现代社会中,温度对 生活的重要意义已经不用我在这里赘述,现我结合自动控制技术,设计一个由单片机控制的水温控制系统。以单片机为核心,设计一个水温控制系统装置。...
其实,我们还有个很特别的超级工程:人们看不到它的形态,却无时无刻不在感知它的存在。天南海北的货物因它向世界各地集散,各行各业因它联成一体,这就是双11,一个属于互联网技术的超级工程。 不夸张地说,最近十...
这个社会中无时无刻离不开写字当然写字的同时就要留下自己的大名,写的难看、不协调、不个性是不是很丢面子,签名的文字虽然不多但若经过精心设计两三个字即可组合成一幅小型的艺术精品。每一个签名都折射出主人的...
[ 文章摘要] 目前, 随着科技日新月异的发展,科学技术无时无刻不在改变着我们的生活特别是计算机, 作为一种集娱乐工作学习等于一体的工具, 已经逐步普及到了每一个角落.作为一种很好的辅助工具, 在工业设计中适当...
本系统就是基于万物互联的思维设计的一款基于云平台的智能家居系统,让用户可以无时无刻的查看与控制室内的一切电器,做到在线控制电器等
这是一款可以对磁盘文件和文件夹进行多功能批量更名操作的实用工具。...最仁:基于人性化的立场,作者在开发的过程中无时无刻不站在用户的立场来思考问题,来决定程序设计的方向,以开发出用户满意的理想工具。
这是一款可以对磁盘文件和文件夹进行多功能批量更名操作的实用工具。...最仁:基于人性化的立场,作者在开发的过程中无时无刻不站在用户的立场来思考问题,来决定程序设计的方向,以开发出用户满意的理想工具。
这是一款可以对磁盘文件和文件夹进行多功能批量更名操作的实用工具。...最仁:基于人性化的立场,作者在开发的过程中无时无刻不站在用户的立场来思考问题,来决定程序设计的方向,以开发出用户满意的理想工具。
地方软件工作室在设计软件的时候无时无刻不在考虑一个问题,如何让软件更加简单一些?如何更加简单一些?再简单一些。呵呵,我们做到了。点击颜色即可复制颜色代码,点击代码即可复制对应的颜色代码。忘掉选择复制...
教材分析 生活在信息时代的今天,我们无时无刻不在感受着数据库,然而作为消费者的我们始终停留在对数据库认识的浅显层面——用户阶段。一节课的学习能够呈现给学生可能只是数据库这个大海洋的冰山一角,对于其深入...
在《零信任网络:在不可信网络中构建安全系统》一书中,埃文·吉尔曼 (Evan Gilman)和道格·巴斯 (Doug Barth) 将零信任的定义建立在如下五个基本假定之上:1• 网络无时无刻不处于危险的环境中。• 网络中自始至终...
在设计领域,每年都有不同的设计趋势和潮流,比如近几年的响应式设计,还有扁平化设计,都无时无刻不冲击和影响着我们设计的角度和方向。在今天这篇文章中,我们精选了一些超棒的创意网站设计,希望大家能够喜欢!
即使你对色彩感觉不太敏锐,但在动画场景设计作业中,同样能画出较为丰富的色彩来,全凭主观色彩意识的分析和判断,将动画场景设计对象的色彩关系跃然纸上。 色彩要素 一、色彩三要素 色彩可用色调(色相)、饱和度...
现代社会是信息社会, 人们无时无刻不在和数据打交道。为了保存和处理这些数据, 数据库是自然的选择。随着计算机的迅速普及, 数据库的应用已经深入到社会的各个角落, 使用数据库技术对数据进行管理已经不仅是一种时尚...
有时会有一个多小时的路程从这里来到无数人,全天无时无刻不在开车。 一天不会过去,我看不到他/她可能会走的最快的汽车。 当我长大时,山就在我身上生长。 现在我是这条道路上存在的驾驶员之一,我希望有一种方法...
课题研究目的: 温度数我们日常生产和生活中实时在接触到的物理量,但仅凭感觉只能感觉到... 温度无时无刻不在影响着人们生活的方方面面。因此,对实时温度的测量记录系统的研究具有广泛的实用价值和重要的理论意义。
务运营中不断积累的交易等业务数据之外,遍布全球的传感器无时无刻不 在探测和收集物理世界的各种信息,移动互联网则在不断收集用户的地理 位置信息,各种社会媒体中的数以亿计的用户也在随时随地地产生交互信 息,...