UMLChina第21期专家交流 实录




嘉宾:Marko Boger,Gentleware AG的创始人和CEO。Marko Boger在汉堡大学获计算机科学博士学位。专著领域:Java、敏捷建模、UML。Gentleware AG的产品是基于开源项目ArgoUML的商业UML建模工具:Poseidon for UML。人民邮电出版社出版的《极限编程研究》(XP Examined)有一篇他关于极限建模的文章。




netsong对freekany说: 怎么折衷理想和现实的差距,就是做得好坏的标准,我觉得(14:41)
上善若水对jason1973说: 人民邮电出的中文版(14:41)
freekany对netsong说: 我觉得现在方法很多,但是成功的案例好象不多!(14:41)
netsong对freekany说: PSP就不说了,基础(14:42)
freekany对大家说: 我们聊点其他的吧,各位!(14:32)
freekany对大家说: 难道就这样干等?(14:32)
reduce对大家说: 谁用过Poseidon for UML或ArgoUML?(14:33)
freekany对大家说: 各位对PSP看法如何?(14:34)
freekany对大家说: 个体软件过程!(14:34)
reduce对大家说: 大家好!(14:35)
netsong对freekany说: 任何人都应该看的书(14:36)
上善若水对大家说: 正在看humphrey的pspi,挺好的,我现在正在习惯为各种活动做计划。(14:36)
freekany对netsong说: 是吗?(14:37)
freekany对netsong说: 我觉得现在的软件开发方法好多!(14:37)
freekany对netsong说: 学都学不过来!(14:38)
netsong对freekany说: 对阿,不过每种方法都有它的弱点和优点(14:38)
jason1973对上善若水说: humphrey的pspi???(14:38)
jason1973对上善若水说: 什么东西?(14:39)
netsong对freekany说: 灵活应用扬长避短才好,不过这个度很难掌握(14:39)
jason1973对上善若水说: 能不能给介绍一下(14:39)
freekany对netsong说: 对,学起来似乎很好,然而要真的做起来,觉得就很难把握!(14:40)
freekany对netsong说: 能就PSP,XP,RUP做一下比较吗?(14:40)
netsong对freekany说: 对阿,学的总是思想嘛。思想和现实还是有差距的(14:40)
netsong对freekany说: 怎么折衷理想和现实的差距,就是做得好坏的标准,我觉得(14:41)
上善若水对jason1973说: 人民邮电出的中文版(14:41)
freekany对netsong说: 我觉得现在方法很多,但是成功的案例好象不多!(14:41)
netsong对freekany说: PSP就不说了,基础(14:42)
netsong对freekany说: xp和rup可以互补的(14:42)
freekany对netsong说: 继续。。。(14:42)
netsong对freekany说: 尤其是rup的局部阶段,但我觉得还是应该在rup的控制之中(14:43)
umlchina对markoboger说: hello(14:43)
umlchina对markoboger说: hello, professor(14:43)
freekany对netsong说: 主角来了!(14:43)
markoboger对大家说: Good morning(14:43)
freekany对netsong说: 以后交流。(14:44)
umlchina对markoboger说: good morning(14:44)
freekany对netsong说: 呵呵(14:44)
netsong对freekany说: ok(14:44)
umlchina对markoboger说: 提问及参与讨论:草原之蓝,嘉宾发言:正宗喜红,互相说话:绝对黑色(14:44)
markoboger对大家说: I guess login worked well(14:44)
umlchina对markoboger说: yes, your color is the right one.(14:45)
umlchina对大家说: OK! any questions?(14:45)
umlchina对markoboger说: Which UML diagrams fit XP?(14:47)
freekany对inevity说: Can you tell me the CORE IDEAS of XP?(14:48)
netsong对markoboger说: what is the difference between XP & RUP?(14:50)
Ankh对markoboger说: what is the difference between XP & RUP & MSF?(14:50)
reduce对大家说: We are intersted in Poseidon for UML.How many people do you enhanced to develope Poseidon for UML?(14:50)
freekany对inevity说: I don't know of XP!(14:50)
yuansj对markoboger说: How about the CMM and CMMI?(14:50)
markoboger对大家说: Ok, so I see there are some questions coming in(14:51)
markoboger对大家说: Let me start with some words about me that might already answer some questions(14:51)
markoboger对大家说: For a number of years I was reasearcher at the University in Hamburg(14:52)
reduce对markoboger说: We have tried Poseidon. Poseidon is some better than XDE for java,but we have many model made by Rose,how can we use it?(14:52)
markoboger对大家说: There I actually was working on a distributed language (called Dejay)(14:52)
freekany对markoboger说: Dejay?(14:53)
netsong对markoboger说: which entironment is fit for XP?(14:53)
markoboger对大家说: To better show the results I started working with UML tools(14:53)
markoboger对大家说: And I discovered ArgoUML.(14:53)
markoboger对大家说: Me and a number of students started to adopt Argo to the needs we had(14:54)
markoboger对大家说: We became kind of the leaders of the open source project.(14:54)
freekany对markoboger说: Continue...\(14:54)
yuansj对markoboger说: Yeah(14:54)
markoboger对大家说: And during our research we also addressed software engineering questions like XP, and extreme modeling(14:55)
freekany对markoboger说: Great!(14:55)
markoboger对大家说: After we had some very good results and after ArgoUML had become very popular(14:55)
reduce对markoboger说: We have used ArgoUML and GEF,there's too many bugs to use it.(14:55)
markoboger对大家说: we decided to start a company to make our vision of software engineering come true(14:56)
markoboger对大家说: Right, Argo had a lot of little bugs and problems.(14:56)
reduce对markoboger说: How do you develope Poseidon from ArgoUML? Restruction or rebuild? Use XP or RUP?(14:56)
netsong对markoboger说: how can we get the ArgoUML?(14:56)
markoboger对大家说: It is quite a long way from a research project like Argo to a full working product like Poseidon(14:56)
freekany对markoboger说: Yeah...(14:57)
markoboger对大家说: ArgoUML is available at
markoboger对大家说: With Poseidon we are trying to leverage the potential that Argo has(14:57)
netsong对markoboger说: thank u(14:57)
markoboger对大家说: to develop a fullgrown and highly usable UML tool(14:58)
reduce对markoboger说: Can Poseidon compitable with Rose?(14:58)
markoboger对大家说: Ok, we feel we have kind of reached this now and we can go back to some of our original goals(14:58)
netsong对markoboger说: where can we use uml in xp?(14:59)
markoboger对大家说: and develop tools that support for example XP in modeling(14:59)
markoboger对大家说: And I think , yes you can very well use UML in XP(14:59)
reduce对markoboger说: Are you plan to do that?(14:59)
markoboger对大家说: I guess many of you will have found the site
markoboger对大家说: There some ideas on how to use UML in XP are described(15:00)
markoboger对大家说: However, the main author there is a consultand. He has to live with the tools available(15:00)
reduce对markoboger说: How many people do you enhanced to develope Poseidon for UML?(15:00)
markoboger对大家说: We are (now) toolbuilders and we can build the tools we feel are necessary to improve a process that involves XP and UML(15:01)
netsong对markoboger说: do u have a develop doc for an actual project and can u give it to me ?(15:01)
markoboger对大家说: In our company there are currently working about 7 developers(15:02)
markoboger对大家说: And we are making very good progress.(15:02)
markoboger对大家说: Internally, we use a lot of elements of XP(15:02)
markoboger对大家说: However, it is not strictly XP(15:02)
founder_chen对markoboger说: UML 2.0 will support real-time design , what do you think about that?(15:02)
markoboger对大家说: We also use a lot of UML ofcourse.(15:03)
markoboger对大家说: Gentleware is very much involved in the development of UML 2.o(15:03)
smilemac对大家说: Hi, Mr. Boger(15:03)
yuansj对markoboger说: How about the cycle time of the Poseidon for UML project?(15:03)
markoboger对大家说: We are leading a submission for diagram interchange(15:03)
markoboger对大家说: We have a cycle of about 2 to 3 months between minor releases(15:04)
freekany对markoboger说: Have you Successful Case About Argouml with XP(15:04)
markoboger对大家说: Well, we are internally using a lot of UML and XP, does that count as Case?(15:05)
markoboger对大家说: However, there are some elements of XP missing(15:05)
freekany对markoboger说: Oh....(15:05)
inevity对大家说: the Argouml Poseidon difference?(15:06)
markoboger对大家说: for example, we found it very hard to introduce testing into an existing project that was not designed for testing(15:06)
markoboger对大家说: Plus, testing for graphical user interfaces is much more difficult(15:06)
reduce对markoboger说: We think your Poseidon should be next generation in UML? But Rational have thousands people to devolope Rose.Do you think you must convert to RUP?(15:06)
markoboger对大家说: So we had to adjust XP to our needs and curcumstances(15:06)
netsong对markoboger说: so if there r not enough docs, how do u manage ur project?(15:07)
inevity对markoboger说: what is the difference between the Argouml and Poseidon ?(15:07)
founder_chen对markoboger说: TDD maybe better?(15:07)
markoboger对大家说: We are clearly a competitor to Rational(15:07)
markoboger对大家说: I think we would not have started with Argo if Rose was a better tool(15:07)
michael liu进入聊天室.(15:08)
markoboger对大家说: In many areas that is not very hard(15:08)
zjuxxl微笑着对markoboger说: How to develop UML CASE such as ArgoUML?(15:08)
markoboger对大家说: But there is still a lot of ground to be covered(15:08)
markoboger对大家说: Well, ArgoUML is an open source project(15:09)
markoboger对大家说: that is quite different from normal projects(15:09)
founder_chen对markoboger说: Does ArgoUML support refactoring?(15:09)
markoboger对大家说: there are no deadlines, no strict plan(15:09)
timwap_cn对markoboger说: How do you make profit from open source project ?(15:09)
markoboger对大家说: it just evolves. With Poseidon, ofcourse that is different(15:09)
michael liu对大家说: What do you think of testing method in UML?(15:10)
markoboger对大家说: Refactoring:(15:10)
markoboger对大家说: We have developed a refactoring tool as plugin for poseidon(15:10)
markoboger对大家说: It was presented at the last XP conference in Italy(15:10)
markoboger对大家说: About profit:(15:11)
michael liu对大家说: refactoring is a good idea, but how to practise testing or show testing phase in uml?(15:11)
markoboger对大家说: Well, we are not makeing profit from the open source project.(15:11)
zjuxxl微笑着对markoboger说: Have you proposed a formal semantics of UML for developing ArgoUML?(15:11)
markoboger对大家说: What we are making profit from is our advances over the open source project.(15:11)
timwap_cn对markoboger说: depend on services ?(15:11)
markoboger对大家说: Poseidon is by now much more advanced than Argo.(15:12)
freekany对markoboger说: Can ArgoUml Derictly Get Source Code?(15:12)
markoboger对大家说: And this advancement is what we sell.(15:12)
markoboger对大家说: There is by the way a free Edition of Poseidon(15:12)
markoboger对大家说: Yes, you can get the source of ARgo(15:12)
markoboger对大家说: We also do services, like consulting, teaching, special tools etc.(15:13)
timwap_cn对markoboger说: sorry , what advancement?(15:13)
founder_chen对markoboger说: RUP and XP which is better or RUP + XP = XUP?(15:13)
markoboger对大家说: Formal semantic:(15:13)
reduce对markoboger说: Does Poseidon Restructed from ArgoUML or rebuilt from ArgoUML?(15:13)
markoboger对大家说: the UML 2.o will have a much improved semantics.(15:13)
michael liu对markoboger说: what do you think of testing?(15:13)
markoboger对大家说: There is one proposal that has a very well defind formal semantics(15:13)
markoboger对大家说: This is done by a group called 2U that evolved from pUML(15:14)
markoboger对大家说: (look at
markoboger对大家说: We restructured Argo(15:14)
wubuy对markoboger说: hi,what's pUML?(15:14)
timwap_cn对markoboger说: is it possible for XP and RUP to merge into one process?(15:15)
inevity对umlchina说: what is the difference between the Argouml and Poseidon(15:15)
markoboger对大家说: It might have been easier to restart. But we needed to go through the process to learn(15:15)
freekany对markoboger说: No CODE of ArgoUML,But Like Rose Finally Can Generate Project Code!(15:15)
markoboger对大家说: pUML is a group (called precise UML), I know most members.(15:15)
markoboger对大家说: XP and RUP:(15:16)
markoboger对大家说: Well, Oncle Bob presented in a talk at the XP conferenc(15:16)
markoboger对大家说: that XP is an instance of RUP(15:16)
markoboger对大家说: General opinion is that RUP is so vague that about any process(15:17)
freekany对markoboger说: Instance?(15:17)
zjuxxl微笑着对markoboger说: what did you do for UML before developing ArgoUML?(15:17)
markoboger对大家说: actually is RUP(15:17)
markoboger对大家说: Yes, an instance, a manifestation.(15:17)
founder_chen对markoboger说: thans(15:17)
markoboger对大家说: Rup is like a meta-process, a description of process templates, if you liek(15:18)
founder_chen对markoboger说: thanks(15:18)
markoboger对大家说: then you can build a process from that, an instance.(15:18)
zjuxxl微笑着对markoboger说: Can ArgoUML support model checking,tracing and simulation?(15:18)
markoboger对大家说: What did I do before Argo:(15:18)
michael liu对markoboger说: how to include a testing process in RUP or express by UML?(15:18)
markoboger对大家说: I was a researcher at hte Hamburg University.(15:19)
markoboger对大家说: I wrote my first paper about UML and how to advance it in 1995(15:19)
wubuy对markoboger说: ?anybody?(15:19)
reduce对markoboger说: Can you give us State chart or Cooperator Chart or Sequence Chart for GEF in ArgoUML?(15:19)
markoboger对大家说: Then I suggested a diagram type that better reflects the structure of methods and how they interact.(15:20)
markoboger对大家说: Sequence diagrams are good for examples but not teh big picture.(15:20)
markoboger对大家说: So I developed a method diagram.(15:20)
markoboger对大家说: State charts and simulation(15:20)
timwap_cn对markoboger说: how does the process effect the development group ?(15:21)
markoboger对大家说: We ahve a plugin for Poseidon that acutally does generate code(15:21)
timwap_cn对markoboger说: idea or action ?(15:21)
markoboger对大家说: from state charts and alows their execution.(15:21)
markoboger对大家说: You can then see the states change in the diagram(15:21)
markoboger对大家说: a simuliation if you like.(15:21)
freekany对markoboger说: What Plugin?(15:21)
daxiake对大家说: hi markoboger!(15:21)
markoboger对大家说: The plugin is called State2Java.(15:22)
daxiake对大家说: are you like java?(15:22)
freekany对markoboger说: For java?(15:22)
markoboger对大家说: It is in beta right now. We will further advance it.(15:22)
markoboger对大家说: That also means it it currently free of charge.(15:22)
wubuy对markoboger说: State2Java?(15:22)
markoboger对大家说: But you need the Standard Edition of Poseidon.(15:23)
reduce对markoboger说: Can we see method diagram in Poseidon ?(15:23)
markoboger对大家说: Yes, you can get it from our site at
wubuy对markoboger说: i never hear about that,please tell me what's State2java?(15:23)
daxiake对大家说: is java and sql2000 good idea?(15:23)
markoboger对大家说: No, we have a prototype of method diagrams but it is not in the product.(15:23)
freekany对markoboger说: AS I know,Code Gerenater of Rose is so Simple,But....(15:24)
markoboger对大家说: State2Java is our plugin to execute state diagrams(15:24)
markoboger对大家说: That really is at the hart of our ideas about extreme modeling(15:24)
markoboger对大家说: Class diagrams dont model behaviour. so you can not execute them.(15:24)
markoboger对大家说: State charts do model behavior. So if you use those you can actually execute models.(15:25)
markoboger对大家说: It is very powerful. But it needs a little rethinking. It is(15:25)
wubuy对markoboger说: o ...thanks(15:25)
markoboger对大家说: a paradigm shift from coding to modeling.(15:26)
ozzzzzz对大家说: do not talk with me(15:26)
markoboger对大家说: But if you take that step, if your models become executable ..(15:26)
zjuxxl微笑着对markoboger说: How do you think state chart?(15:26)
markoboger对大家说: you can ofcourse also test models.(15:26)
markoboger对大家说: Sequence diagrams are very good for expressing such tests.(15:26)
ozzzzzz对大家说: what is extreme modeling(15:27)
markoboger对大家说: Use cases can be a test map.(15:27)
markoboger对大家说: Extreme modeling is a process suggestion that I develop.(15:27)
markoboger对大家说: There is an article in an XP book about it.(15:27)
markoboger对大家说: I believe there is an article in chinese of it.(15:27)
cinc对大家说: what is the major difference between extreme modeling and other modeling method?(15:28)
markoboger对大家说: There is also a site called by me(15:28)
markoboger对大家说: It is not quite finished, but it gives you a good idea(15:28)
timwap_cn对markoboger说: does this tools provide model guids ?(15:28)
freekany对markoboger说: oh.So Many Site!(15:29)
markoboger对大家说: The different to other methods? Well, you put more into(15:29)
markoboger对大家说: the model. Actually it is XP not on code but on models.(15:29)
markoboger对大家说: State2java is a plugin for Poseidon. You can find it at
ozzzzzz对markoboger说: what is the major difference between extreme modeling and other AM?(15:30)
ozzzzzz对markoboger说: what is the major difference between extreme modeling and AM?(15:30)
markoboger对大家说: Well, agile modeling concentrates on the tools that are available now.(15:30)
markoboger对大家说: And with tools like Rose, it is hard to stay agile.(15:31)
markoboger对大家说: So one of the conclusions of AM is that you better use the white board instead.(15:31)
markoboger对大家说: I have teh advantage that I am developing tools and I can build them the way I need them to make them agile.(15:31)
markoboger对大家说: But we are not quite there yet. State2Java is in beta and it need more advancement.(15:32)
markoboger对大家说: For example we started with a refactoring browser for UML(15:32)
cinc对markoboger说: hehe, very intresting...(15:32)
markoboger对大家说: That is also needed for agile modelin with tools.(15:33)
ozzzzzz对markoboger说: ROSE is costliness to me.(15:33)
markoboger对大家说: It is a complex topic and we still need some time to develop all the tools we need(15:33)
freekany对markoboger说: I wish Get Successful Case About All Great Ideas of you!(15:33)
cinc对markoboger说: Is CRC Card used in extreme modeling?(15:34)
markoboger对大家说: Yes, rose is very expensive. We are trying to offer tools at a much lesser price.(15:34)
markoboger对大家说: We can do that because we have a different marketing and distribution strategy.(15:34)
reduce对markoboger说: Are you plan to make Poseidon compitable with Rose that?(15:34)
timwap_cn对markoboger说: what are you main coustomer ?(15:35)
markoboger对大家说: CRC cards are a good idea. But I guess that would be a step before you go into extreme modeling.(15:35)
markoboger对大家说: Yes, we do plan that. Actually we have an mdl import in our next release(15:35)
markoboger对大家说: You will then be able to read in Rose files into Poseidon.(15:36)
markoboger对大家说: Our largest customer is HP at this point in time.(15:36)
markoboger对大家说: The majority of our customers though are small to medium size companies(15:36)
markoboger对大家说: with small to mid size Java projects.(15:37)
freekany对markoboger说: Which Zero OF HP?(15:37)
wubuy对markoboger说: now,we have a project to do,i want add the XP method to the project.have you any words to give me?(15:37)
markoboger对大家说: XP is very good.(15:37)
wubuy对markoboger说: how good?(15:37)
markoboger对大家说: Are you starting from zero?(15:38)
wubuy对markoboger说: yes(15:38)
reduce对markoboger说: Should next release be half year or one year later?(15:38)
markoboger对大家说: If you are, make sure you start testing VERY early.(15:38)
wubuy对markoboger说: zero(15:38)
timwap_cn对markoboger说: yeah , do you have some ideas about implmentation on XP ?(15:38)
markoboger对大家说: No, no, you need to release often.(15:38)
wubuy对markoboger说: i don't konw what's testing(15:38)
markoboger对大家说: That is important. you need to know that your tool is stable.(15:39)
markoboger对大家说: Don'T wait for half a year. Wait 2 months at most.(15:39)
markoboger对大家说: Oh, testing is important in XP. You have to learn.(15:39)
cinc对markoboger说: small release :)(15:39)
markoboger对大家说: You first write a test, the the code to fulfill it.(15:40)
wubuy对markoboger说: i am strange about xp or testing(15:40)
firebird_online微笑着对markoboger说: is xp useful for a develop team only four member?(15:40)
markoboger对大家说: And you need to test every feature you have.(15:40)
wubuy对markoboger说: can u give any info about xp or testing(15:40)
wubuy对markoboger说: website?(15:40)
wubuy对markoboger说: or books(15:40)
markoboger对大家说: Oh, you need a team. We found it very difficult to do XP with a small team. it is propably best with 6 to 8 people(15:40)
coolie2k对wubuy说: don't you know testing, sigh(15:41)
wubuy对markoboger说: we are three man(15:41)
reduce对markoboger说: Should next release be half year or one year later?(15:41)
markoboger对大家说: We are now a team of 7 developers, now it works well.(15:41)
wubuy对markoboger说: in my project(15:41)
wubuy对markoboger说: but we only 3 people(15:41)
awarmer对大家说: Which tools do you use in developing poseidon?(15:41)
markoboger对大家说: If you have too few, then you can not pairprogram since often you cant find the partner you need.(15:41)
wubuy对markoboger说: is we equal useing XP(15:42)
markoboger对大家说: Go ahead and try. It works better with a mid size team. But if you have a small team, XP is still better than anything else.(15:42)
markoboger对大家说: Tools:(15:43)
coolie2k对markoboger说: Can requirement documenting use pairprogram?(15:43)
wubuy对markoboger说: HOW start?(15:43)
markoboger对大家说: For modeling, we use our own tool, of course.(15:43)
markoboger对大家说: For programing we use IDEA. We also use Netbeans an eclipse.(15:43)
wubuy对markoboger说: i am wondering...(15:43)
markoboger对大家说: Also some emacs, but most develpers here now use IDEA. it is a great product.(15:44)
cinc对markoboger说: is IDEA suitable for web development?(15:44)
firebird_online微笑着对markoboger说: what do you think about pairprogram?I mean the developer's diathesis(15:44)
cinc对markoboger说: such as jsp site.(15:44)
markoboger对大家说: We do a lot of pair modeling. So I guess you could do pair requirements modeling ;-)(15:44)
markoboger对大家说: How to start on XP? Well, difficult question(15:45)
wubuy对markoboger说: expert(15:45)
markoboger对大家说: But the corner stone is testing. Get familiar with junit(15:46)
wubuy对markoboger说: i think u must can do it,why difficult?(15:46)
markoboger对大家说: and first write some tests. This will make your API much simpler and(15:46)
markoboger对大家说: it also makes it testable. That is very important.(15:46)
wubuy对markoboger说: just hear about junit to me(15:46)
reduce对markoboger说: how pairprogram work? Two people work at same thing in the meantime?(15:47)
michael liu进入聊天室.(15:47)
michael liu对markoboger说: you said testing, so what do you think of testing process and testing engineers ?(15:47)
coolie2k对markoboger说: Do you have any suggestion to software development in mobile/telecommunication?(15:47)
wubuy对markoboger说: en ...thanks(15:47)
markoboger对大家说: Testing has to be done by the people doing the programing.(15:47)
markoboger对大家说: You might still want a test process and test engineers.(15:47)
markoboger对大家说: but you need to write tests by the develpers.(15:48)
markoboger对大家说: Only that way you can find all problems.(15:48)
coolie2k对markoboger说: but it is the developers who code(15:48)
wubuy对markoboger说: other question:is any project befitting used with XP?(15:48)
markoboger对大家说: You use tests in a different way. You don't try to find bugs.(15:48)
firebird_online微笑着对markoboger说: doesn't xp need SE?(15:48)
markoboger对大家说: you try to prove that your feature works under all situations.(15:49)
cinc对大家说: in XP you should write test first and then write code to let test pass, it is an important XP principle.(15:49)
coolie2k对markoboger说: does that mean feature test?(15:49)
reduce对markoboger说: How pairprogram work? Two people work at same thing in the meantime?(15:49)
markoboger对大家说: And if you keep your tests updated you can change something and see if this broke something else.(15:49)
markoboger对大家说: This gives you much more currage to change something.(15:49)
markoboger对大家说: And so you become more agile.(15:50)
cinc对大家说: How do you deal with automatic testing? using jarkata ant?(15:50)
markoboger对大家说: Pair programming: Yes, you sit down with two people at one machine.(15:50)
wubuy对markoboger说: other question:is any project befitting used with XP?Waiting...(15:50)
coolie2k对markoboger说: "gives you much more currage to change something" yes, i agree.(15:50)
reduce对markoboger说: Does you use pairprogram at Poseidon?(15:50)
markoboger对大家说: Both look at the code. One focuses more on details one more on the global picture.(15:51)
markoboger对大家说: But this can change all the time.(15:51)
firebird_online微笑着对markoboger说: agile?how xp prove the quality(15:51)
coolie2k对markoboger说: So agile program must need XP(15:51)
wubuy对markoboger说: hehe,i hear Pair programming,but that seem like no efficiency(15:51)
markoboger对大家说: Yes, we do a lot of pair programming for Poseidon.(15:51)
markoboger对大家说: It ensures that all know about the architecute, it reduces design problems.(15:52)
coolie2k对markoboger说: since developer can not write test case while coding.(15:52)
firebird_online微笑着对markoboger说: do the two developer often change role?(15:52)
markoboger对大家说: it increases fun. It is more productive.(15:52)
markoboger对大家说: We believe it is more efficient.(15:52)
coolie2k对markoboger说: per mark, developer act as two roles(15:53)
markoboger对大家说: After all, most time is spent on fixing code. So if you can reduce that by pair programming you win.(15:53)
markoboger对大家说: Yes, you have to write your test cases while programming.(15:53)
markoboger对大家说: Actually you have to write the test first. then programm.(15:53)
cinc对大家说: How do you deal with automatic testing? using jarkata ant ?(15:54)
firebird_online微笑着对markoboger说: can you give us a example?(15:54)
markoboger对大家说: Developers have so many roles that you might just call it Developer.(15:54)
coolie2k对markoboger说: but i wonder if the quality is good if the same person act two roles(15:55)
freekany对markoboger说: "Actually you have to write the test first. then programm",I agree!(15:55)
markoboger对大家说: Yes, tests have to be automated. You have to be able to rerun tests over and over again.(15:55)
wubuy对大家说: please use a actual example to explain XP,OK?thanks(15:55)
firebird_online微笑着对markoboger说: then what do you think the most role of pairprogramer?not SE,i think(15:55)
markoboger对大家说: Quality: it is a matter of learning.(15:56)
wubuy对markoboger说: please use a actual example to explain XP,OK?thanks(15:56)
markoboger对大家说: And the more roles someone has in a project the more he gets the whole picture.(15:56)
markoboger对大家说: This will increase quality.(15:56)
coolie2k对markoboger说: given that i have a mis-understanding of requirement. i can't find it during test yet(15:56)
markoboger对大家说: Hang on, let me get a coffee...(15:57)
firebird_online微笑着对markoboger说: what's to be useful when the pairprogramer in discuss?(15:58)
coolie2k对markoboger说: enjoy it. :)(15:58)
wubuy对markoboger说: please use a actual example to explain XP,OK?thanks(15:58)
freekany对大家说: "please use a actual example to explain XP!" Waiting....(15:58)
cinc对大家说: very intresting.(15:58)
markoboger对大家说: Ok, an example for XP:(15:58)
wubuy对markoboger说: everybody no speaking(15:58)
markoboger对大家说: I actually met Kent Beck when XP was quite unknown.(15:58)
markoboger对大家说: I met him on a train coming back from a conference we both atended.(15:59)
markoboger对大家说: We started to talk and he explained he was working on something called XP.(15:59)
markoboger对大家说: So I will use the little example he used.(15:59)
markoboger对大家说: We were actually sitting in a train and he used his laptop.(16:00)
markoboger对大家说: So, we decided we wanted a little program that converts currencies.(16:00)
markoboger对大家说: So, you start with a little test that describes what you actually want to do and what the result should be.(16:01)
markoboger对大家说: For a currency converter, you migh want to convert 100 Dollar to Euro.(16:01)
markoboger对大家说: Well, currently that is very simple since the exchange rate is about 1.(16:02)
markoboger对大家说: So the result should be, say 98.(16:02)
markoboger对大家说: You write that in a test using Junit.(16:02)
markoboger对大家说: You write the interfaces so that your test compiles.(16:03)
markoboger对大家说: Now your test fails (there is no implementation yet)(16:03)
markoboger对大家说: But the interface already is testable, because you designed the test first.(16:03)
markoboger对大家说: It might seem trivial for such an example, but it gets important for large projects.(16:04)
wubuy对markoboger说: best regard.thanks u(16:04)
markoboger对大家说: So your test fails. Well, now we can implement the method.(16:04)
markoboger对大家说: And see whether we get the result we wanted. You simply rerun the test.(16:04)
markoboger对大家说: Oh, and remember, our tests are all automated. They all result in true or false.(16:05)
markoboger对大家说: So we now have one little feature implemented. Conversion of 100 Dollar to 98 Euro.(16:06)
markoboger对大家说: Now lets test, if this works also for negative numbers. -100 Dollar should result in -98 Euro.(16:06)
markoboger对大家说: Write a test and see if it does.(16:06)
markoboger对大家说: Then go on. Lets say now we want to decide which currecy you want to use.(16:07)
markoboger对大家说: So you first write a test doing that.(16:07)
markoboger对大家说: Get it to compile, so you know you have the right interface. It fails, since it is not imple(16:08)
markoboger对大家说: Oh and here pair programing is important. Discuss what interface is best. Get different ideas. The interface is really important.(16:09)
markoboger对大家说: Now, implementing this might (or might not) break your fist test. But since you have a test for it, dont worry.(16:09)
markoboger对大家说: If you did something to break the code, the test will fail and you will immediatly know what the problem is.(16:10)
markoboger对大家说: This is the point were you gain speed over other methods. Your debuging is much faster, since you already have tests for every little feature.(16:11)
markoboger对大家说: You know exactly what went wrong and were to look for the problem.(16:11)
markoboger对大家说: Now, we use a lot of UML modeling infront or while doing this.(16:11)
markoboger对大家说: We tend to think and work in structures a lot and UML gives you a better picture(16:12)
markoboger对大家说: of the structure. We use our own roundtrip tool to do that.(16:12)
markoboger对大家说: You get the picture?(16:13)
wubuy对大家说: no,(16:13)
markoboger对大家说: Kent Becks book about XP explains all this very well. It is a very good book.(16:13)
charliexia对markoboger说: I don't know Archtecture clearly,couldn't you say what the Archtecture of a application with a simple example is ?Thanks!(16:13)
cavinniuk微笑着对markoboger说: me too(16:13)
wubuy对markoboger说: i think that be cost many many time.(16:13)
markoboger对大家说: Ok, architecture.(16:14)
markoboger对大家说: If you look at a bridge, you can very clearly see its architecture.(16:14)
markoboger对大家说: There are brigdes that are carried by metal rope,(16:15)
ozzzzzz对大家说: but Kent Becks don't like uml :)(16:15)
markoboger对大家说: there are bridges like an arc,(16:15)
markoboger对大家说: there are bridges that are very solid and stable through all that material.(16:16)
markoboger对大家说: and so on.(16:16)
ozzzzzz对大家说: and I don't like Kent Becks .but I LIKE his book(16:16)
firebird_online微笑着对markoboger说: what's mean 'our tests are all automated'?just with junit?(16:16)
markoboger对大家说: Now, with software the architecute is harder to see.(16:16)
markoboger对大家说: but here are similar things, architectures that recure.(16:17)
cavinniuk微笑着对markoboger说: could you explain, i can't understand your meaning?(16:18)
markoboger对大家说: Like, we have a tree layer architecture in Poseidon, a repository, controller and interface. The interface itself is also built up in three layers. Then we use an event(16:18)
markoboger对大家说: mechanism to communicate changes.(16:18)
markoboger对大家说: If your code is clean, you can find such architectures in your UML diagrams.(16:19)
markoboger对大家说: Patters are a good language to describe software architectures.(16:19)
cinc对大家说: yes, I like MVC too, it is a very good archetecture.(16:20)
freekany对markoboger说: Patters?(16:20)
reduce对markoboger说: Does the GEF part of Poseidon put to open source?(16:20)
markoboger对大家说: Patterns, yes. There is a very good book by Eric Gamma and three others.(16:21)
firebird_online微笑着对markoboger说: design patterns?(16:21)
markoboger对大家说: They are also called the Gang of Four (Gof).(16:21)
freekany对markoboger说: Oh,I see...(16:21)
markoboger对大家说: They have described a set of patterns that recure in software and gave them a name.(16:21)
firebird_online微笑着对markoboger说: what's mean 'our tests are all automated'?just with junit?(16:21)
markoboger对大家说: They also described them. Gamma, by the way also wrote Junit, together with Kent Beck.(16:22)
reduce对markoboger说: Does the GEF part of Poseidon be put to open source?(16:22)
wubuy对markoboger说: now,in china,some project(not a little)is only have 2 or 3 can them use XP?if they according to your just said,i think the peple number is to few.(16:22)
wubuy对markoboger说: can you give me a best advise?(16:22)
markoboger对大家说: Yes, tests are all automated. We use JUnit for code testing and something called QFtest for the user interface.(16:22)
markoboger对大家说: Gef is opensource.(16:23)
markoboger对大家说: No, you can start with 2 or 3, but it would be easier to have 6 or 8.(16:23)
charliexia对markoboger说: Do you think the Archtecture of an application can't be changed while the application's develpment?(16:24)
markoboger对大家说: 3 members are very difficult, due to the pair programming.(16:24)
markoboger对大家说: But make sure you get the testing right, even if you can not do the pair programing.(16:25)
markoboger对大家说: The architecture can evolve. but it is a good idea to get the basic architecture right from the beginnign.(16:25)
firebird_online微笑着对markoboger说: by the way ,what developer do you want to pair?(16:26)
markoboger对大家说: But how do you know, when you start? We had to change the architecture of Argo a couple of times to build Poseidon.(16:26)
markoboger对大家说: But that is a lot of work.(16:26)
markoboger对大家说: What devepers to pair? Well, the ones on your team, all of them.(16:27)
markoboger对大家说: If they have different skilles, well very good, they can teach one anther.(16:27)
coolie2k对markoboger说: Can I map the protocol layer(communication) to the architecture you refer to?(16:27)
timwap_cn对markoboger说: is there resistant during implementation XP?(16:28)
markoboger对大家说: Yes, layers are an important form of architecture.(16:28)
timwap_cn对markoboger说: how do you do in such situation?(16:28)
wubuy对markoboger说: sorry,some phone break our my company,no project have more is actual in so much company in china.(16:28)
markoboger对大家说: Resistence. Yes, there might be. But there is always resistence to management.(16:29)
markoboger对大家说: For XP the biggest resistence,though, usually comes from management.(16:29)
timwap_cn对markoboger说: how to elvalue the work in XP?(16:29)
freekany对markoboger说: What Difference has architecture and FrameWork?(16:29)
markoboger对大家说: We did not have that problem because I as manager introduced XP-(16:29)
firebird_online微笑着对markoboger说: my company have sixteen developers ,but less SE,do you think it posible to XP?(16:29)
timwap_cn对markoboger说: management ?(16:29)
markoboger对大家说: Architecture and Framework:(16:30)
markoboger对大家说: That is a different thing. A framework can have an architecture (it should).(16:30)
coolie2k对markoboger说: marko, can you illustrate an architecture for multiple layers communication system?(16:31)
markoboger对大家说: A framework is different from a library. A library is something that you can call from your aplicaiton.(16:31)
coolie2k对markoboger说: some basic elements is ok(16:32)
markoboger对大家说: A framework is something that can call your application. It is the inverse.(16:32)
markoboger对大家说: EJB is a framework for example, there you have to write your code so that EJB can call your components.(16:33)
markoboger对大家说: Swing is a library, you call and use it.(16:33)
markoboger对大家说: The combination of your code, the framework and the libraries is part of the architecture.(16:33)
markoboger对大家说: XP with 16 people:(16:34)
freekany对markoboger说: then...(16:34)
markoboger对大家说: Well, 16 developer would be too much for XP. One of the problems of XP is it does not scale to larger groups.(16:35)
markoboger对大家说: But if you have, say 10 developer and 6 others involved in the project, that might work.(16:35)
wubuy对大家说: something i have to go,can you tell me your email,i think i have more thing to ask for you.(16:36)
markoboger对大家说: But I recomment to not have more than 10 in XP projects(16:36)
markoboger对大家说: In any project more than 10 is hard to handle.(16:36)
freekany对markoboger说: A sample About architecture?(16:37)
timwap_cn对markoboger说: is there some metric for XP?(16:37)
markoboger对大家说: But the most important part in XP is the team leader.(16:37)
firebird_online微笑着对markoboger说: do you mean XP can effictive without SE?(16:37)
markoboger对大家说: You have to have a good team leader. It is management after all.(16:37)
wubuy对markoboger说: something i have to go,can you tell me your email,i think i have more thing to ask for you.((16:37)
timwap_cn对markoboger说: how about other developer in XP ?(16:37)
markoboger对大家说: Metrics:(16:38)
wubuy对markoboger说: something i have to go,can you tell me your email,i think i have more thing to ask for you.thanks(16:38)
markoboger对大家说: Well we are thinking of developing metrics as a plugin for Poseidon.(16:38)
firebird_online微笑着对markoboger说: dode xp leader would be a good coder?(16:38)
markoboger对大家说: They can be a help in finding problems in your architecture.(16:38)
markoboger对大家说: But it can also be misleading. Good tests are much more important.(16:39)
markoboger对大家说: The leader does not have to be a good coder. It helps though.(16:39)
markoboger对大家说: He needs to be a good tester, a good architect, but most of all a good leader.(16:40)
timwap_cn对markoboger说: what is XP' base ? team of project , or a project .(16:40)
markoboger对大家说: he has to convince people to follow XP, he has to teach them how, he has to create the atmospeher.(16:40)
timwap_cn对markoboger说: sorry , one team of project .(16:40)
timwap_cn对markoboger说: is there some guides to do this ?(16:41)
markoboger对大家说: Sorry, timwap, what is your question?(16:41)
firebird_online微笑着对markoboger说: I see, I will try my best to be the leader as you say above(16:41)
charliexia对markoboger说: None can write an up-front archtecture because the software is soft and it could and should evolve easly!Do you agree ?(16:41)
charliexia对markoboger说: Morever,the RUP ,XP and so on ,all of these methodology are based on some guru's experience and some succsussful projects.(16:41)
markoboger对大家说: Guides for XP, yes,(16:41)
markoboger对大家说: There are very good books about XP, start with Kent Beck(16:41)
markoboger对大家说: Software has to evolve, I agree.(16:42)
charliexia对markoboger说: Morever,the RUP ,XP and so on ,all of these methodology are based on some guru's experience and some succsussful projects.(16:42)
timwap_cn对markoboger说: i mean , XP is usful to a mid-size project , or just fit for a 10-man team(part of one project).(16:42)
charliexia对markoboger说: They aren't proved true with some science method !(16:42)
firebird_online微笑着对markoboger说: what's the realition between the XP and RUP?(16:42)
markoboger对大家说: We very much had that experience in Poseidon, we had to learn how to build such a tool while building it.(16:42)
markoboger对大家说: Experience is very important. But where do you start if you do not have the experience.(16:44)
markoboger对大家说: And the only way to get the experience is to start.(16:44)
markoboger对大家说: Well, you look at those who have done it. And XP is a good example of that.(16:44)
freekany对markoboger说: "And the only way to get the experience is to start",Good.(16:45)
markoboger对大家说: RUP is too. But it is designed for large scale project. Also it is designed to make profit for Rational.(16:45)
timwap_cn对markoboger说: how long have you taken to implement XP in your team?(16:45)
markoboger对大家说: XP is designed for smaller projects and evolved from the pain of some good programmers.(16:45)
markoboger对大家说: How long did it take to implement XP: it is an ongoing process.(16:46)
charliexia对markoboger说: Experience is important ,but other people's experience is not suitable for you sometimes!(16:46)
markoboger对大家说: We had to start and we used the parts of XP that we were able to use. But we are still trying to get some other things in place.(16:47)
markoboger对大家说: True, but you can only tell after you tried, right?(16:47)
markoboger对大家说: you need to make the experience.(16:47)
charliexia对markoboger说: So i think the archtecture is not so important as what the Booch said!(16:48)
markoboger对大家说: Well, architecture is important. But if you follow a process like Booch suggests..(16:49)
reduce对markoboger说: In XP, customers are part of our team, How to deal with them in case of they are working in difference place?(16:49)
markoboger对大家说: you just cannot change the architecture. If you use XP can still evolve the architecture.(16:50)
markoboger对大家说: Customer:(16:50)
markoboger对大家说: Yes, you have to adopt to the situation. We also had that problem.(16:50)
wubuy对markoboger说: please give some tools about XP,except junit(16:51)
charliexia对markoboger说: Yes,can you explain what defferent beteen the system metaphor and archtecture is?(16:51)
markoboger对大家说: We did not really have a customer (or too many of them). So I took up the role of the customer.(16:51)
markoboger对大家说: You might give someone of your team the role of customer. But it makes it harder to really immplement what your real customer wannts.(16:52)
markoboger对大家说: Oh, the metaphor is hard to explain.(16:52)
markoboger对大家说: It is intended as a comparision, a picture.(16:53)
reduce对markoboger说: Yes,thank you!(16:53)
markoboger对大家说: It has nothing to do with architecture.(16:53)
ozzzzzz对大家说: thank you(16:53)
firebird_online微笑着对markoboger说: do you think the XP is adapter to scientific research project?(16:53)
markoboger对大家说: XP is difficult for research.(16:54)
timwap_cn对markoboger说: do you support collaborative work ?(16:54)
markoboger对大家说: In research you don't really know what you are looking for, so it gets hard to write the test for it.(16:54)
firebird_online微笑着对markoboger说: but the scientific research project has not customer(16:55)
markoboger对大家说: True, also you often work alone.(16:56)
markoboger对大家说: But it is better to use XP than use nothing.(16:56)
markoboger对大家说: In any case, you can learn a lot from XP for any kind of project, you just need to be prepared to adopt it to your needs.(16:57)
firebird_online微笑着对markoboger说: terrible,I often work in scientific research project(16:57)
markoboger对大家说: Well, I enjoid research a lot.(16:57)
markoboger对大家说: It gives you the freedom to experiment. I think I learned XP in research.(16:58)
markoboger对大家说: You have no manager, no time constraints...(16:58)
reduce对markoboger说: If in our project,the customer requirements are analysised to be different results,and we cannot make sure which one is correct,can we proceed with the project?(16:58)
markoboger对大家说: So, try it and learn from it, it just might not be the real thing,(16:58)
markoboger对大家说: but it is good to learn about it that way.(16:59)
markoboger对大家说: Oh, reduce, that is a too tough question. I can't tell.(17:00)
markoboger对大家说: Ok, thank you all.(17:00)
firebird_online微笑着对markoboger说: thans a lot(17:00)
markoboger对大家说: You might want to take a look at Poseidon at
reduce对markoboger说: Thank you !!(17:01)
charliexia对markoboger说: Thank you!(17:01)
freekany对markoboger说: Good Luck!(17:02)
umlchina对大家说: 嘉宾走了,他表示很高兴(17:02)
firebird_online微笑着对markoboger说: me too(17:03)
umlchina对大家说: 谢谢大家参与(17:03)
charliexia对大家说: 收获不少!886!(17:04)
umlchina对大家说: 8/12还有(17:05)
umlchina对大家说: 8/30是一位美女专家(17:05)
umlchina对大家说: 希望大家还能来(17:05)