科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件敏捷建模——IBM Scott Ambler访谈录

敏捷建模——IBM Scott Ambler访谈录

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

许多程序员对建模持怀疑态度,但事实上不必如此。我们特意采访了IBM的Scott Ambler,请他谈谈如何在项目中使用敏捷建模,以及为什么你可能已经使用敏捷建模,只是没有意识到而已。

作者:builder.com.cn 2007年6月29日

关键字: 敏捷建模 建模 UML IBM

  • 评论
  • 分享微博
  • 分享邮件

许多程序员对建模持怀疑态度,但事实上不必如此。我们特意采访了IBM的Scott Ambler,请他谈谈如何在项目中使用敏捷建模,以及为什么你可能已经使用敏捷建模,只是没有意识到而已。

Builder AU:敏捷建模对于Web 2.0领域内的开发者有什么意义?

Scott Ambler:敏捷建模的目的是为建模和文档构建描述一组原则和实践,最好是用于敏捷项目中。但如果它们不是那么敏捷也没有问题。

我们已经看到,它的主要用途在于XP(极限编程)方面,目的是使现代文档构建过程更加明晰;或是与RUP(Rational统一过程)结合,降低一些官僚作风,并使它尽可能精简。

它只是通过你正在做的一些事情,不必死啃不必要的文件,为你描述有效思考的方法。从敏捷的角度看,它提出一些直接的策略,帮助你避开希望你做过多文案工作的官僚主义者,并就如何管理工作提供一些建议。

敏捷社区的一些更加极端的交流激发一些人去做错误的事情,我不是在嘲笑敏捷爱好者,只是他们的做事方式可能是错误的。

你认为程序员对于建模持什么观点?

我认为,许多程序员出于一些原因,对建模嗤之以鼻。

首先,他们没有受到过良好的培训。我想学校根本就没有建模课程,就我所知,从来就没有过,但他们现在在这方面的表面确实不如人意。

许多时候,开发者接受第一份工作,第一次做建模时,他们几乎总是会面临以下两种不良状况之一。他们要么加入一个项目团队,这个团队首先为你提供所有建模条件,然后你会慢慢忽略它。于是他们发现在建模文档方面浪费了许多精力,然后他们会说:“嗨,我做了所有这些建模工作,但它对产品没有任何影响,这真是浪费!”因此他们开始讨厌建模。

或者,更糟糕的是,他们会做他们的工作,他们成功部署项目进入生产,然后有人会指出:“嗯,现在我们需要用接下来的两个月时间构建所有的文档,我们应当让人们觉得我们遵循了工作流程。”这完全是浪费精力,只是有人为了给工作找到合理的理由,与交付价值根本无关。许多开发者厌恶这种事情。

另一个常见的问题是他们努力将建模与构建文档区分开来。如果我在一个白纸板上画草图,那么这是一个模型,但却不是一份非常整洁的文档。从某种意义上说,错在供应商,因为我们想出售CASE工具。我们试图让开发者确信,建模必须用这些复杂的工具来完成。

不,并不全是如此——我们只是观察到这样的事实:许多建模在白纸板上完成,许多建模在纸上完成,那样很好。如果你需要取得更加复杂的效果,就需要使用更加复杂的工具。

例如,我拥有熟练的建模技巧,因此在建模时,我使用RSA(Rational软件构建器,Rational Software Architect)或RSM(Rational软件建模器,Rational Software Modeller)这类工具比用手“涂鸦”更加有效,然后生成我的代码和数据库材料。

如果能够生成代码,却要去编写它,那样做就很愚蠢了。我认为在这方面,工具可以生成优良的代码。问题在于,使用工具需要掌握大量技巧——如果你不具备那种技巧,也没有花时间来掌握它,或是与某个掌握这种技巧的人合作,那么工作起来就相当艰难。许多开发者发现如果可以选择,他们愿意做更多建模工作,但他们并没有获得学习的机会。

我们肯定需要区分模型和文档,它们是完全不同的概念;虽然一些模型会进化成文档,但许多模型不会,那样也很好。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章