知识管理是Choerodon猪齿鱼的一个重要功能,支持在线自定义文档编辑、成员协助共享等功能,帮助团队集中管理创意、需求和设计。本文将会和你们聊一聊知识管理对敏捷团队的重要性,介绍Choerodon选用XWiki做为开发基础的缘由,以及开发团队如何设计Choerodon知识管理,最后会简单介绍一下Choerodon知识管理的一些主要功能和特点。java
对于软件开发团队来讲,每一个成员都是知识工做者,知识工做者须要具有一个很重要的能力——知识管理能力。知识是软件行业的灵魂和生存之本,然而不少时候你们都忽略或轻视了团队知识管理的重要性,因此Choerodon但愿可以为团队提供一个便捷高效的知识管理方式。git
Choerodon猪齿鱼知识管理是为了解决敏捷团队在快速迭代的开发过程当中可能忽视的知识沉淀、文档管理和团队协做等问题而诞生的。github
印第安人在赶了3天路以后,会停下来小憩一天,由于他们要等待本身的灵魂跟上来。敏捷开发过程也是如此,在经历一个迭代或者冲刺以后,也须要作一些休整,那就是敏捷回顾。每次回顾时,团队成员须要概括总结开发过程当中积累下来的各类问题或经验,并将这些知识记录在可共享的wiki上,这样既便于团队成员互相学习,也利于之后须要时快速查阅。spring
如今常见到的wiki有不少,开源免费的如 MediaWiki、DokuWiki,企业收费的如 Confluence等。在开发Choerodon猪齿鱼知识管理初期,团队但愿可以选择一款既开源,又能针对Choerodon猪齿鱼平台的应用场景,作定制化的wiki系统。好比适应Choerodon的组织项目层级结构,以及与Choerodon猪齿鱼中的敏捷管理、测试管理等作更多的互动,让用户可以在使用平台时,快速准确地记录下本身的知识,让知识管理在应用交付和自动化运营过程当中发挥更大的价值。在通过许久对比和甄选以后,团队选择了一个优秀、强大的开源wiki系统——XWiki。安全
XWiki是由一家法国的公司XWiki SAS于2004年开发出的一款wiki系统,并于2007年开源。至今已经10多年,这个社区仍然有众多活跃的贡献者和使用者,而且拥有大量的客户群体和产品案例。XWiki有健壮的编辑器、强大的编辑语法,能提供多种拓展特性来定制化wiki。除了XWiki官方提供的功能之外,还有超过100个社区参与者贡献的拓展项目,这些拓展均可以直接在XWiki系统的拓展市场上安装和管理。微信
接下来经过XWiki与Confluence以及MediaWiki的对比,来谈谈Choerodon为何选择XWik做为其知识管理的基础。架构
XWiki是一个开源的项目,使用了LGPL开源协议,使用者可本身搭建和拓展XWiki而不须要购买任何受权。它使用java语言开发,提供了众多面向企业的特性,而且拥有丰富的拓展库和宏,灵活性与拓展性很强。有许多如Amazon、AFP、EDF等大型的公司使用XWiki建立知识库或者协做工具,也有一些企业和组织使用XWiki搭建门户网站。框架
Confluence是一个团队协做软件,由澳大利亚的公司Atlassian开发和销售,它是一个面向业务的专业wiki,使用java开发,主要应用于企业环境。目前Confluence有许多大型客户案例,如Facebook、eBay、Adobe等,不过使用Confluence,须要向Atlassian公司购买受权。编辑器
MediaWiki是一款使用PHP开发的开源wiki软件,它最著名的案例就是维基百科,因此也是受众最大的wiki。MediaWiki支持多语言管理、各类扩展和媒体格式,还可以配置wiki外观。可是MediaWiki在权限管理,组织架构管理上并不适合Choerodon的解决方案,也不太适用企业的业务需求。ide
除了上面谈到的三款wiki软件以外,咱们还对比了其余比较流行的wiki软件,综合考虑以后,最终选择了开源的、有强大的拓展特性以及适应企业多种业务场景的XWiki。
Choerodon猪齿鱼平台是基于spring cloud的微服务架构开发,而Choerodon知识管理选择以XWiki做为开发的基础,那么就须要作到统一的用户、权限以及组织架构。所以开发团队开发了微服务wiki-service,这个微服务主要用于监听Choerodon平台中其余服务的操做,好比IAM的建立组织、建立项目等,而后使用http请求的形式,让XWiki作对应的业务处理,好比建立对应的空间和页面。另外XWiki须要使用Choerodon猪齿鱼平台统一的登陆和权限校验,因此Choerodon在XWiki中添加了OAuth登陆认证。下图是Choerodon猪齿鱼知识管理设计示意图:
Choerodon猪齿鱼平台中有三层组织层次,即全局层、组织层和项目层。Choerodon 使用三层组织结构来管理用户、权限、项目、环境资源、菜单,以及其余系统资源和功能。其中全局层包含了系统的一些基本设置,例如组织管理、菜单管理、全局角色管理等;组织层管理用户、权限、项目、环境资源,以及其它系统资源和功能;项目层用来管理软件的开发,项目属于组织。Choerodon知识管理也是按照组织层和项目层,以及组织和项目下的空间来管理wiki的。为了保证XWiki与Choerodon平台有统一的组织和项目以及组织、项目对应的人员、权限等,须要将每一个组织项目的建立、角色分配等都在XWiki中作对应的处理。下图是当IAM建立一个组织时,wiki-service为保证数据一致性作的处理:
Choerodon知识管理实现了一个强大的Wiki平台,容许用户根据本身的特定需求自定义Wiki,为企业、IT团队提供方便的项目协做平台和强大的项目内容管理平台,集中式管理产品相关内容,例如需求收集、架构设计、功能设计、开发规范、命名规范、会议记录、计划安排等。目前Choerodon知识管理除基础的空间页面建立、文档编辑、文档共享等,还开发了一些特点功能,如我的空间、组织项目文档权限控制、匿名分享、文档模板等。
空间至关于一个分组,它是一类文档的集合,组织和项目下均可以建立空间。在空间下能够建立对应类型的文档树,实现各种文档的分别维护和管理。
页面是Wiki中的基本内容单元,也就是使用者在空间下建立的文档。页面能够建立在空间下或者在其余页面之下,这样用户就能够随意地组织团队的文档结构。页面能够进行编辑、分享、评论、收藏等操做,还支持使用多语法编辑和多人协做编辑,另外每一个页面均可以有版本控制。
Choerodon知识管理中除了组织项目下的共享空间以外,Choerodon还设计了一种特殊的空间——我的空间。这个空间为每一个wiki用户提供了一个私人的编辑区域,用户能够在我的空间中随意编辑和记录文档,而且能够选择将一些文档发布到须要的公开区域,好比某个组织或者项目下。
在Choerodon知识管理中,空间和页面采用相同的权限模型,以用户组的形式配置权限。对于组织和项目下的空间、以及空间下的页面,在不单独配置权限的状况下,默认是继承组织和项目的权限的,也就是只有组织或者项目成员才能够查看。
同时,用户能够针对某个页面或者空间,个性化配置权限,能够是对某个用户组开放,也能够对全部人或者匿名用户开放,权限包括视图查看、评论、编辑、修改脚本、删除和设置管理员。以下图的权限配置页面所示:
Choerodon知识管理的内容使用空间和页面的形式组织,而且受到组织项目权限的管控,当用户想将文档分享给未注册用户时,能够将一些须要公开的文档设置成可匿名访问,既不影响其余页面的权限,也保证了文档的安全。在权限设置中选择未注册用户勾选相应权限便可。
Choerodon知识管理预置了产品需求和敏捷回顾会议记录等文档的模板,能够直接进行编辑,简化了用户编辑排版操做。平台管理员也能够自定义建立团队经常使用文档模板、修改页面布局界面。
除了上面提到的几个特点之外,Choerodon知识管理还提供了好比:
全部更新、热门:用户能够查看最近wiki中发生的文档建立、编辑、评论等操做,以及一些浏览量较高的文档,可以了解到一些新的文档动态,及时的学习和共享。
最近工做、最近访问:用户能够在wiki中查看到本身最近编辑以及查看的文章,方便用户查看本身的历史操做记录。
通知:页面的操做能够经过站内信或者邮件的形式通知到关注者,帮助用户及时跟进文档的状态。
搜索:wiki系统提供了强大的文章搜索引擎,能够搜索到文章中的关键字,提升搜索精度。
导入、导出:页面还能够进行批量的导入导出,能够导入office文档,wiki会自动解析文档内容,并添加到页面中。
了解更多功能,请查看Choerodon知识管理用户手册。
Choerodon知识管理。自发布以来,经历了多个版本的更新和迭代,提供了愈来愈便捷和完善的功能,但愿可以让用户在敏捷开发和项目管理过程当中,沉淀各类知识与经验,提升团队协做的便捷性和积极性,从此也会持续优化,欢迎各位朋友前来社区交流。
Choerodon猪齿鱼做为开源多云应用平台,是基于Kubernetes的容器编排和管理能力,整合DevOps工具链、微服务和移动应用框架,来帮助企业实现敏捷化的应用交付和自动化的运营管理,同时提供IoT、支付、数据、智能洞察、企业应用市场等业务组件,致力帮助企业聚焦于业务,加速数字化转型。
你们也能够经过如下社区途径了解猪齿鱼的最新动态、产品特性,以及参与社区贡献:
欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态平台。