首页 > 代码库 > 开放产品开发(OPD):开篇

开放产品开发(OPD):开篇

     OPD?这是什么玩意?google一下。忘记说了,最近google被封锁的厉害,那就百度一下吧。可惜,OPD找不出是什么。你今天你找不到是正常的,因为之前还没有OPD,而现在才开始有OPD这个东东。相信很多人听过敏捷个人了,这个词汇到现在已经很容易被搜索到了,敏捷个人创立以来,我一直未放弃对IT技术方法的实践和整理,而OPD就是我又要创建的一个东西,全称是Open Product Development。没错,是OPD,不是IPD,当然两者会有些关系,之所以我取Open,是因为我的IT产品开发方法大多数不是原唱,而是来自现有IT界中的已有方法,我只是类似在敏捷个人体系发展中占据的角色一样,我是一个集成者。OPD的工作无非就是把这些方法无缝的配合在一起,这个事情看起来考谱吗?

      靠不靠谱不能太随意下结论,现在重要的是先了解一下OPD是什么,看看是不是适合你和你的团队需要?如果需要的话,如何去学习、掌握并用在实际的工作中。

 OPD是什么?

      OPD  (Open Product Development),它是由敏捷个人创始人周金根创立的另一个新方法体系,这一个来自实践的开放产品开发方法,它结合了精益创业Lean、企业架构TOGAF、架构描述语言ArchiMate、业务分析知识体系BABOK、敏捷开发Scrum、软件产品线、模型驱动架构设计OpenExpressApp。

      原本这些方法是针对产品开发过程中不同人群的方法,但是方法设计者本身并未考虑到不同方法之间如何去衔接配合,这就带来了好方法不能被很好地使用的状况。如何在一个产品团队中,利用好这些方法,定制成一个适合一般性团队的通用方法就是OPD需要面临解决的问题。OPD会提供一些产品开发过程中的理念、框架、方法和工具来帮助产品开发团队中各个角色,不管是刚加入这个行业的初学者,还是工作已久的丰富经验者,我相信大家都会有所新的收获。

  OPD关注的是产品开发的完整生命周期,要想知道涉及哪些角色,最简单的办法就是了解一下原本的方法是干什么的,主要面向哪些角色?所以,接下来我会概况的说一下Open中所指引到的那些方法分别是干什么的,有什么用,给谁用的。

 Open指引的方法

  • 精益创业 Lean: 这部分适合产品人员,帮助产品人员从无到有创建一个正确的产品

 

 

  • 企业架构TOGAF:这是一个企业架构方法,来源于IT信息化领域的发展,其中对架构的分层以及架构开发方法值得IT产品开发人员借鉴。如果想初步了解TOGAF,可以看看我以前的文章 企业架构 - 开篇:TOGAF介绍

 

 

 

  • 架构描述语言ArchiMate:在我实践TOGAF和研究模型驱动开发中,我发现了ArchiMate,一个架构描述语言,一张A4纸即可把图例都列出,东西不多却功能强大。如果想初步了解Archimate,可以看看我写的 架构语言ArchiMate - 开篇

 

  • 业务分析知识体系BABOK:一个产品应该做成什么样子?我们都知道这是需求工程师去做了解需求,然而产品失败率却一直很高,原因在哪里?就是因为缺少业务分析,而BABOK就是这样一个知识体系,它可以帮助业务分析人员、需求人员、产品负责人等于产品业务相关的人更好地去做产品业务分析。想初步了解BABOK的可以看看我写的 BABOK – 开篇

 

  • 敏捷开发Scrum:敏捷开发是现在软件开发企业常用的一种开放方法,它重在产品价值,适合整个产品开发团队,包括业务负责人,通过学习和反馈来完成产品开发。如果想Scrum方法的可以看看我写的 从IT方法论来谈Scrum

 

  • 模型驱动架构设计OpenExpressApp:OpenExpressApp是一个基于模型驱动开发的开源框架,虽然已经历时多年未更新,不过原有的产品可以看做是模型驱动开发的一个简单雏形。模型驱动开发是IT产品线级别的复用方法,适合技术架构师学习。如果想了解模型驱动开发方法的可以看看我写的 MDSF:模型驱动开发(MDD)介绍 以及 软件产品线:四个主要方法原则

 

 

这些方法怎么能够串起来

如果我们简化产品开发,那就是产品负责任决定产品方向,做正确的事,然后由开发团队来争取的做事。这其中有几个重要的岗位,那就是产品负责人,业务架构师和技术架构师,这可以堪比三驾马车,只要这三个人掌管的事情弄好了,之间衔接也好了,那么产品的成功性就会比其他产品大很多,所以OPD必须要从产品管理、业务架构和需求分析、以及架构三方面去集成方法。

从上面我们可以看到,这些Open来的方法囊括了以上重要岗位的部分,并且这些部分原有方法的交集很少。因为交集少,自然方法之间的冲突也很少,这正利于这些方法的集成。通过这些方法的集成,从产品概念提出,到产品开发发版,我们全生命周期都关起来了,这是不是很好呢?如果你有志于了解如何更好地从无到有的做一个产品,你不甘于只是埋头了解和一直做手头的工作,那么OPD将是开拓你视野的一个好东西,也是你所在团队一个提升技能的好方法。

更多

后续我会继续写一些OPD主题的文章,如果你喜欢OPD,那就关注我的博客吧。