最小的“完成的定义”

Scrum中有一个“完成的定义”(Definition of Done),其实就是对于Sprint待办事项列表(Sprint Backlog)中的每一个承诺的用户故事,都要达到的质量标准。通常包括:

  • 代码签入到主线
  • 代码审查
  • 单元测试
  • 功能测试
  • 系统测试
  • 。。。

教科书上的Scrum要求,每个sprint都能上线,也就是对于每个用户故事都需要达到所有的内部质量标准(也就是完成的定义)。因为功能上下,客户才会去使用,然后就会有反馈,从而指导产品演进的下一步方向。从而实现健康的关于产品演进发展的反馈环。如果功能不能达到上线的质量要求,与客户之间的反馈环就断了。那很有可能团队制造出很多sprint的垃圾。

 

但是不是所有的团队都有足够的能力去把功能推上线。很多团队不能在sprint内做系统测试,很多由于软硬件依赖的原因甚至不能做功能测试,不能把相关功能的所有bug都解决掉。因此在上线前,需要经过很长的stabilization阶段,不能在Sprint中完成,而只能在发布前的Stabilization阶段完成的工作叫“未完成工作”(Undone Work),这其中也包括很多技术负债。“未完成工作”越多,债就越多,用来还债的stabilization阶段就越长。 而这直接后果就是拉长了客户之间的反馈环。在当前竞争激烈的市场中,这种缺陷可能是致命的。所以好的团队会花一部分精力去提高自身能力,“完成的定义”增强之后,从而减少“未完成工作”,

 

但是还有一个问题,既然“完成的定义”是不断发展、扩充的。那是否需要一个最小集合的“完成的定义”,而连这个最基本要求都没有达到的团队,连最起码的Scrum都不是呢?首先看一下Scrum,Scrum是一个基于反馈的框架,不断审视反馈中获得的数据,然后相应去调整。如果连反馈都没有的话,那就不是Scrum了。那软件开发中的反馈包括开发人员与测试人员、开发团队与产品负责人、团队与客户等等,那其中最小的反馈是什么呢?是开发人员和测试人员之间的反馈,从这个意义上说,最起码的“完成的定义”必须包括最基本的测试人员测试,哪怕是手动测试。如果连手动测试都没有的话,对团队正在做的功能来说,连最小的反馈都没有了。前一阵子网上看到一些公司的Scrum实际经验,其中很多公司提出了“具有XXXX特色的Scrum”,就是把未完成的工作放到下个Sprint去测试,对于这些团队来说,哪怕他们也有每日Scrum站会、各种各样的Scrum会议,由于连最基本的“完成的定义”都没有达到,违反了Scrum的最基本原则。

 

总结:

Scrum团队应该有一个“完成的定义”,哪怕是一个很弱的“完成的定义”,但是再弱也不能弱到连一点儿测试都没有。团队能力提高的过程就是不断强化“完成的定义”的过程。

 

Share

敏捷在家里

关于教育孩子,很多人会从教育专家或者周边的朋友那边吸取经验。近些年来很多聪明的美国人开始把工作场所的一些经验,带到家里,也达到了意想不到的效果。

我也尝试借鉴一些工作上的方法。对于教育儿子(四岁),教育儿子主要有几个挑战:

  • 自律的问题。如何让他变得自律,对于自身的提高负责,而不是让父母来督促
  • 激励的问题。如何让这件事情变得有趣,从我让他做变成他自己想要做。

儿子经常玩游戏、睡觉睡得很晚、起床相应也很晚有可能赶不上幼儿园班车、要被追着吃饭。。。我想很多家长也会遇到类似的问题。从两个月前,我开始了一些有意思的试验。

周日的晚上,老婆、我会和儿子坐下来,在我们的启发下,儿子会制定下个星期需要提高的一些很具体、明确的SMART目标,比如:

  • 早晨八点之前起床
  • 自己洗脸刷牙
  • 每次从外面回来喝水
  • 玩游戏不超过20分钟,然后休息至少30分钟
  • 。。。

目标定下来之后,妈妈会帮他记录到模版上(My Chore Chart)。

然后用小磁粒吸到冰箱侧面。

 

模板的竖列是星期日到星期六的日期。每当有个小目标达到之后,我会把星星贴纸交给儿子,儿子会从里面选一个他喜欢颜色的星星,然后自己贴到相应的方格里面。

一个星期后的周日晚上,会和他一起来评估上个星期的进展情况,然后再去产生新的需要提高的具体目标。时间一长的那些原先已经实现的具体目标就会变成他自身的一种习惯。然后家长的应该关心的其实是帮他找到下一个目标,引导督促他形成更多的好习惯。

还有一个好的副作用,通过这个试验,其实也培养了小朋友独立思考、自己设定具体(SMART)目标、不断审视和反思的习惯,这个对于长大后应付变化更快、竞争更加激烈的社会会很有好处。

Share

认知调谐(Sense Tuning) - 发掘认知里被遗忘的宝藏

不少人愿意读书,而且愿意读很多的书。但是去年我只读了16本书,相对于前年整整少了一半。但其实我觉得从掌握的东西来讲,要比前年有效得多。具体原因是去年着重培养认知调谐(Sense Tuning)的习惯。什么叫Sense Tuning。首先来看一下人的学习方法以及其效果。

关于人脑的研究发现一个人所能记住的东西:

  • 对于听到的能记住10%
  • 对于看到的能记住35%
  • 对于同时听到和看到的能记住55%
  • 对于自己重新表述的能记住70%
  • 对于自己重新表述并且动手做的能记住90%

Sense Tuning其实很简单,学习的时候

  • 尝试用不同的方式去解释,纪录,比如记笔记,用自己的话去描述,甚至通过图像的方式(右脑思维)来描述。
  • 同时周期性的去整理自己的笔记,去重新归类、切割、删除、修改等

那我是具体怎样做的?

  • 在统一的地方记录笔记,我用的是Evernote。Andy Hunt推荐用个人Wiki。
  • 记笔记,笔记一定要自己一个一个字的敲到Evernote里。哪怕是有时候读电子书,我也会自己去敲,或者用自己的话去描述笔记,敲的过程就是一个记忆的过程。
  • 对于需要big picture或者整体理解的概念,我会尝试用SketchBook去画画,然后把它导入到我的Evernote笔记中。因为右脑的图像相比于左脑的文字来说更容易记忆。下图就是读Feature Injection时候用SketchBook画下来的笔记。
  • IMG_0760
  • 笔记中的不同片段,会放到不同的Evernote文章中,加不同的标签。
  • 晚上睡觉前,如果有时间,就会把最近的Evernote笔记重新看一遍。如果需要整理、重新归类的、或者有新的发现的,立刻做掉,觉得价值不大的就删掉。
  • 周末会花相当一部分,去重读Evernote中的笔记,这时候通常是按照标签的顺序,一个一个标签,然后标签下面的一篇一篇去读。同时也是随手整理。
Share

视频: 两个Daniel结对写 Game of Life – 3

春节期间,Daniel Lv和我都回到了青岛,我们在大年初二完成了第三集(第一集第二集),完全实现了二维Game of Life的程序。这一集我们主要的看点是:

  • 通过持续集成发现了最终的设计
  • 通过持续简化,把一个看似不可切分的大问题,切分成一步一步的小问题,然后一口一口吃掉。

优酷

Youtube

Share

常见Scrum问题

Joe Little在Scrum联盟认证讲师和认证教练讨论组里面发起了一个有意思的关于常见Scrum问题的讨论,不少讲师和教练都提出了问题,整个列表越来越长。具体如下:
1 No SM
2 Lack of courage
3 Lack of persistence
4 No SM worth a dang
5 SM who has not been to a CSM class
6 SM allocated too low
7 SM not allocated 100%,对于初始团队,100%的SM是很重要的。
8 SM with zero people skills
9 A PO with zero understanding of technology
10 A PO who has never met a customer
11 A PO with no support from ‘the business’ (depends on context what ‘bus’ means)
12 A PO who does not understand the 80-20 rule
13 A PO with no nose for business value
14 Product Owner not empowered. 很少见到真正的PO,尽管很多人的Title都叫PO
15 Focus on “get all this done” rather than true Agile project. 关注于Output而不是Outcome
16 Asking team to “meet their commitments”, meaning make their estimates come true.很多的manager都很关心承诺
17 Estimates, period. [SG]
18 Failure to work as a team. [!!!!!] 95%以上的团队都不是真正的团队
19 Failure to use the necessary technical practices.
20 Failure to be anywhere near Done at Sprint end [and with no decent explanation]。不少团队在做这种具有XXXX特色的Scrum
21 Stretch goals.
22 no Backlog Refinement done with the Dev Team, so Sprint Planning gets long, boring and risky; 绝大多数团队都没有产品代办事项梳理(Backlog Refinement)
23 Dev Team committing to the Sprint Backlog items during Sprint Planning, instead of committing to a Sprint Goal…这显然是更高层次的要求
24 …therefore, Sprint gets labeled as “failure” because Dev Team didn’t complete all the items (they didn’t work towards a Sprint Goal);
25 The Team members working over night and weekends trying to complete all Sprint Backlog items (or even trying to reach the Sprint Goal), so no sustainable pace nor room for learning from mistakes;
26 ScrumMaster is the technical leader and has the final word on technical decisions; 十分常见
27 Every Dev Team member working on a different item, in any order (not from the most important one);绝大多数Scrum团队都是这个样子
28 High specialization on the Dev Team, so some people only work on some determined kinds of tasks or items;很多这样团队里面的成员都认为自己的东西别人学不会,只能自己碰。
29 Technical or business discussions during Daily Scrum, so meeting could take longer than expected and not create the desired visibility;
30 No impediment list
31 Best impediments not aggressively identified [too short a phrase]
32 All impediments found in only a few categories
33 Inability to make a business case for an impediment fix to a manager
No investment to fix impediments
34 Dev Team members reporting to the ScrumMaster on Daily Scrum; 绝大多数都是这样。
35 No stakeholders at Sprint Review, so Dev Team is presenting to the Product Owner;大多数团队还是离客户太远
36 Items [PBIs] left on a Sprint automatically going to the next Sprint; 或者到下个sprint去测试!!!
37 No action plans from Retrospectives, so almost no improvements are made; 绝大多数团队连Retrospective都没有
38 Stressful, finger pointing Retrospectives;
39 Tasks in the Product Backlog
40 ScrumMasters doing coordination work in a Scrum of Scrums meeting (actually recommended by the black book, then unrecommended by everyone I know, but still persists for some reason) 这明显是PM的做法
41 Deciding which team member will do which work during the Sprint Planning Meeting (an early mistake we made, led to team members working by themselves, not sharing when getting behind, etc.),我见到过很多在”实践Scrum”团队中都是这个样子。
42 Deciding what will happen in Sprint 2, Sprint 3, Sprint 4, and Sprint 5 before Sprint 1 has been completed
43 Managers talking and interrogating team during the daily
44 Team reporting during daily [unclear]
45 Changing Sprint length
46 Changing team members during a Sprint
47 ScrumMaster who is PO too
48 PO who is the boss of the SM
49 Daily Scrum in the team room with screens turned on [unclear, I guess screens are distracting]
50 Lack of a PO…
51 A Prod Bklog that shows no understanding of BV
52 ScrumMaster delegating and sometimes imposing stuff to the Team.
53 A PITA manager pushing the Team
54 PO not collaborating with the team, not available to the team.
55 Lack of an initial PBL.
56 Scrum Master spread across 4 teams…
57 SM spread across 2 teams
58 Development Team members spread across 4 teams…
59 Dev Team members not 100% dedicated to one Team
60 A Development Manager.
61 A Development Manager insisting that all teams document their Retrospectives using the same document template
62 A Development Manager sending all teams their Definition of Done
63 Checking in code and immediately going home without checking that the build worked, leaving the build broken for others to fix? Even worse, done 3 times by the same person :(
64 A product owner not invited to the retrospective :)
65 No shared definition of done 
No Def of Done at all

66 A pause between sprints

67 More than one product owner
68 
A daily scrum only twice a week

69 No testing in the sprint
,我们经常会见到,如果做不完了,我们就把这个sprint的工作,放到下个sprint去测试
70 No professional testers in the Team

71 Unfixed bugs on (so-called) done stories

Share

小抄

小抄是个好东西
Cheating
“小抄”,很多人会嗤之以鼻。那不就是在学校考试中,老师们拼命要防范的。其实不然,小抄其实是一种很聪明的学习工具。

中午去公司旁边的西安饭馆吃饭,墙上贴着下面的口诀,这个陕西老板好聪明。

IMG_2237

初学者往往对新的领域没有系统的了解,属于盲人摸象阶段,需要一个菜谱一类的东西,简单的抄一下,就可以解决很多基本问题,对培养学习的自信也很有益处。

每当在客户团队中需要引入新的工具方法时,我经常会做一个工作坊,是给大家设计一个不是很难的题目,然后给一份小抄,让他们在一定的时间内把问题解决。下图是在一次Cucumber, Watir工作坊中提供的小抄。

cheatsheet

http://www.staqs.com/ruby/watir_reference.pdf

如何去找到小抄?

 

 

Share

2012

转眼又来到了2013年,是时候反省一下整个去年的成长以及设定一下2013的目标。

主要领域
回顾一下去年的回顾,主要的努力方向有三个,分别是:
* 用户中心设计 (User Centric Design)
* 需求方面的团队合作 (Requirement Collaboration)
* 技术

用户中心设计方面,主要针对Jeff Patton的用户中心设计,Kent McDonald的特征注入(Feature Injection),Gojko Adzic的Effect Map,Alan Cooper的情景人物(Persona)下了不少功夫,并把这些概念和工具与精益创业(Lean Startup)结合,与Jackson Zhang设计出了一个“从想法到产品Backlog的工作坊”。在多个客户项目中,已经帮助数个团队以这个工作坊为基础的启动工作坊(Liftoff workshop)启动了项目,确定了初始的项目目标、情景人物、根据情景人物的需要延伸出了需求,并排出了优先级,做出了发布计划。2012年年底我们也把该工作坊做成公开课形式,已经发布过三次,接下来还会以大约每个月一次的频率持续的发布。

需求方面的团队合作方面,主要是体现在客户项目中,促进团队的各个角色。主要是做了几方面的尝试,包括团队工作坊以及小范围个体工作坊。在产品Backlog梳理,发布计划以及Sprint计划会议中,主要是通过需求工作坊和设计工作坊,写用户故事工作坊、三个伙伴(Three Amigo)工作坊等。需求的定期梳理变成了很多团队的习惯。

因为其他高优先级项目的引入,技术方面方面投入的精力不够。主要是年初研究了一阵子Metrics-fu,年底的时候研究了ApprovalTest,并开始在项目中尝试通过ApprovalTest实现XSLT项目的测试驱动开发。技术方面另一个有趣的尝试,是与RubyChina的吕国宁(Daniel Lv)同学一起准备了七周七语言之Ruby的活动,并由此激发我们把准备过程录制成系列视频([1]不要只展示代码,展示如何演进代码,[2]视频: 两个Daniel结对写 Game of Life – 2),获得了很多不错的反馈。另外在一个客户项目中,有机会全程参与并指导了一个跨地域、大规模团队的持续集成导入,经历了从最初的代码和自动化脚本管理到最后的各种各样自动化测试以及环境的自动化部署和配置。

除了计划好的领域,另外几个主要着力的领域包括:
* 教授(Teaching)技术。
* 教练(Coaching)技术。
* 个人的修养提高。

教授(Teaching)技术方面,出了读书之外,2012年有更多的机会参加了一些培训、工作坊以及Co-coaching。今年参加了不少有意思的培训,对我个人影响比较大的包括Odd-e的认证Scrum开发人员培训、Jerry Weinberg&Ester Derby&Johanna Rothman的Problem Solving Leadership工作坊、Bas的认证ScrumMaster课程、Pete Behrens的认证Scrum产品负责人课程。

  • 尽管自己也是Odd-e认证Scrum开发人员培训的讲师,参加了三次包括Java和C++版本的培训,还是从中学到了很多东西,主要加深了包括对具体技术、测试驱动开发、演进式设计、重构的认识;除了技术,另一个有趣的方面是团队调教,如何在短时间内,把互相不认识的团队成员糅合成一个整体,促进其自管理,自我反思,如何通过培训+在适当时机抓住机会干涉(Intervene)去帮助团队成长。
  • Problem Solving Leadership工作坊对我来说是一个自我反省和演进的工作坊,让我更好的认识到我自己,以及如何在客户项目和社区发展中影响别人;另外一个重要的Learning是关于问题的设计,好的领导应该花更多的精力去设计问题而不是冲到前台去解决问题。
  • Bas的CSM培训具有极强的Bas特色,首先是极其丰富和深刻的教授、案例分析以及实时的问题解答总是相当精彩,每次参加或者Co-train都会有新的认识。
  • Pete Behrens是Scrum联盟原来CSC的Lead,他基本不做公开课,很幸运有机会跟他在同一个客户项目中合作,并在波士顿与他一起做了一次CSM和CSPO的课程。十分惊叹于Pete整个培训的整体设计,以及通过”Training From the Back of the Room”方式并结合多种引导技术、图像记录等引导学员自我觉醒、自我学习。

教练(Coaching)技术方面,今年有机会跟更多不同领域、多种背景的客户,系统的实践了如何组合多种敏捷教练的工具包括建议(Advise)、例子(Set example)、提高Awareness、以及激励持续学习。通过Create Awareness -> Set example -> Pair create -> Individual-exploring -> Feedback -> Let coachee teach的方式成功引导了多个组织的敏捷转型。

个人修养提高方面,最主要提高的是持续反思的实践。过去几年总会花很多时间去读书。今年总的读书量相对于前几年减少不少,但是我发现通过持续的反思,包括对读过的书、组织的活动,我获得的反而更多。感觉过去总是在不停的丢西瓜捡芝麻。另一个强化的方面是个人backlog、优先级,会更有意识地控制自己的工作项目,当然也意味着鼓起勇气不做不少事情。另外就是又尝试了不少有意思的工具和实践,不少是从吕国宁同学、Odd-e的同事们、柴锋以及Andy Hunt那里偷来的。更有意思的是把这系列工具和实践做成了一个工作坊,成了我的一个有用的影响别人的工具。

书籍
与往年一样,也有必要回顾一下去年读过的书。由于花了相当的精力去反思和回顾,今年的读书量大大减少。我尝试按照对我的影响程度去年读过的书排序。
* Lean Startup。很多朋友都给我推荐这本书,果然名不虚传。它是对敏捷开发灰色地带一个强有力的补充。有了它,让我对产品设计和开发有了更全面地认识,有一种醍醐灌顶的感觉。书中同时也给我很多有意思的思考。
* Leading Teams。这不是一本关于敏捷的书。但是它其实就是整个敏捷团队实践、合作的理论基础。哈佛大学教授Richard Hackman研究了全世界各种各样的团队,提出了系统地总结、比较和分析,并提供了很多实际可行的工具。我成了Richard的粉丝,迫切希望读他的新书”Collaborative Intelligence”。
* Drive。终于静下心来把著名TED视频”The Surprising Science of Motivation”作者Dan Pink的书好好读了三遍。无论是对于直到团队甚至教育自己的儿子都十分有效,我们想在常用的很多激励的方法其实是会带来很多副作用的。
* Pragmatic Thinking and Learning – Refactoring your web ware。作为敏捷宣言的签署人之一, Andy Hunt有很多好的工具和工作习惯值得我们学习。
* How to Solve It。这是一本著名数学书。主要学到了:1. 如何象好的数学老师那样一步一步引导学生自学;2. 为以测试驱动开发和重构为基础的演进式设计找到了理论基础;3. 数学家们的思考方式,包括简化问题、归纳、演绎、类比等等。
* 重构到模式。一本经典的重构书,如何具体实现中抽象,并一步一步推出设计模式。设计模式应该是从最基本的代码和硬编码中发现并推导出来的,而不是一开始想出来的。这跟How To Solve It的思维模式是一样的。
* Behind Closed Door。一本很实际的敏捷经理菜谱。
* Leadership Agility。在敏捷大会遇到了Pete Behrens和Brad Swanson,他们都给我推荐了这本书。尽管从书名看这是本敏捷书,但是其实作者并不知道敏捷软件开发。而好的Leader会经历个人英雄主义阶段包括Expert level、Achiever level和后英雄主义阶段包括Catalyst level, Co-creator level, Synergist level。
* The Power of Now。只有当下才是我们应该关注的东西。Yesterday is history, tomorrow is mystery, today is a gift.
* How Google Test Software。通过测试专家James Whittaker洞察了Google测试的方式以及质量团队的架构。
* The Cucumber Book。学习Cucumber的最佳指导。
* Agile Product Development with Scrum。如果希望了解Scrum产品负责人的话,这是必读的一本书。
* Software Requirement Memory Jogger。很多的需求建模以及团队合作的工具。
* Liftoff。十分实际的项目启动手册。
* Maven The Definitive Guide。Maven大全
* Visual Teams。是Visual Meeting作者的新书,把图像技术应用到了团队建设方面。
* Blink – The Power of Thinking Without Thinking。如何利用“急中生智”。

新习惯
* 个人Backlog。严格通过Things来管理个人的工作项目及优先级。对工作项目列表做经常性梳理。确保所有任务从列表中来,我变得更加专注了。
* 及时及持续反思。

  • 主要是针对过去的learning和组织的培训、活动等做及时的总结和反思。
  • 对自己过去笔记的复习以及重新整理,每个周五不会阅读新的东西,而把精力集中于“反刍”。

不足
* 持续发布,老问题,博客更新不够,在新的一年中需要假如一些强制性习惯。谢谢Bill、王宇组织了一个敏捷教练的圈子,可以有更多的群体压力了。
* 技术与开源项目。参与一个开源工具的编写。

新年新目标
* CST。2013年最主要的目标是成为认证Scrum讲师。通过实现这个目标,系统地提高教授的功力。
* 国际性发表与分享。去年收到了越南和印度的分享邀请。今年要做更多的尝试,系统提高自己英文演讲的能力。另一个方向是发表至少一篇英文文章。
* 技术与开源项目。参加一个Github开源项目,并发布可用版本。
* 博客争取两周一篇。
* 把Meditation变成一种习惯。

 

Share

视频: 两个Daniel结对写 Game of Life – 2

Daniel Lv (吕国宁)和Daniel Teng(滕振宇,www.danielteng.com)一起用结对编程和测试驱动开发方式,利用用Ruby, RSpec, Rake实现Game of Life编程练习(Kata)。这是第二部分。(第一部分不要只展示代码,展示如何演进代码)

第一期视频发布后,我们陆续收到下面一些Feedback:

Feedback from RubyChina
* 对游戏规则不熟悉
* 对极为细小的单元测试步伐不适应
* 为什么不用自动测试工具?
* 尽量帮助初学者学习TDD的方法,原理
Feedback from Daniel Teng’s friends
* 有些测试用例的沟通性不强
* 接口设计不够友好
所以在本期视频的开头部分,两个Daniel分别就这些Feedback给大家做了解释,以及我们如何在后续的视频中提高视频质量。此外Daniel Teng还特别阐述了这个系列视频教程背后的原则以及方法论。

背后的原则/方法论
* Always drive code from requirement – 代码是从需求一步一步推演出来
* Limit red phase – 尽快让失败的测试用例通过,从而尽量缩短代码RED状态的时间
* Improve design only when code base is safe – 只有在代码安全的状态下,才去优化和改进设计
从本期开始,我们每发布一期新的视频,会根据前一期视频的Feedback做出调整,解释大家遇到的问题以及提升视频的质量,希望大家尽量多的给我们一些本期视频的Feedback。

Youku

Youtube

Daniel Lv, http://ruby-china.org/ 创始人。

Blog: http://lvguoning.com/
Twitter: https://twitter.com/lgn21st
Weibo: http://weibo.com/lgn21st

Share

犯错-为了获得反馈

在前两天的培训中,一个学员给我一个有意思的场景,问我的建议。“我们今年一月份受到一个很严重的Bug,优先级是ASAP!(尽快解决!),可是我们给客户发邮件确认,客户一直没有反馈,我们也不断地通过各种渠道去升级这个问题,催客户赶紧给我们确认,现在已经到了十一月份了,还是没有消息。你有什么建议么?”

我的回答很简单,“那就照一个最简单的,觉得差不多的方案做,然后扔给客户。”客户一直不回应这个问题,有可能很忙,也有可能渠道不畅、还有可能这个问题现在已经不再是ASAP!(但是客户不会跟我们说)。那就做一个丢给客户,如果没有消息,这说明这个问题已经不重要,或者已经不是问题,或者问题已经被解决;如果有消息,哈哈,我们终于收到确认了。

顺便分析一下花那么多的精力、那么多的时间去单单要这个确认的心理动机,其实就是因为害怕犯错,但是有时候试错是一种更好的探寻答案的方法,更好的学习策略。

Share

任伟与“群策群力的技巧”

任伟去年在敏捷上海沙龙分享了“个人及人与人之间的互动和Satir Change Model”。通过现场的访谈,使我们了解了Satir。很多人事后都很感兴趣。

现在机会又来了,13号任伟再次驾临上海浦东,他这次要结合前一阵子在尼泊尔欣赏式探寻和引导大会的见闻,来和我们一起探讨群策群力的技巧。

微博注册http://t.cn/zlsptHC

Share