技术开发 频道

巧借知识地图,提高软件开发复用效率

    二.什么是软件开发的知识地图?

    (1)什么是知识地图

    知识存在于人脑中,大致可以分为两种性质。一种是客观及易于用语言表达的,另一种是主观及不易形式化的。前者称为显性知识,后者称为隐性知识。显性知识是可以客观捕捉及描述的概念,譬如报告书、手册、程序、文件、记录等,多具有文字性与结构性。隐性知识是主观的概念,体现为个人经验、印象、熟练的技术、文化、习惯等。如果一定要将其形式化,最多能做到的是故事性的描述或是条例式的原则。

    顾名思义,知识地图是知识指引、导航。知识地图这一概念最早是由知识专家布鲁克斯提出的,他认为知识结构可以绘制成以各个知识单元概念为结点的学科认识地图。它能够使知识寻找者在浩如烟海的信息中快速找到自己所需要的部分,及时准确地做出决策。

    对于软件开发项目来说,项目团队知识地图就是指团队的知识资源的总分布图,具体包括两部分内容:一是项目知识资源的总目录及各知识点间的关联;二是人员专家网络,即对项目人员的知识技能及相关领域专家的描述。所以,一幅好的团队知识地图不仅能清楚揭示团队内部、外部相关知识资源的分布及知识节点间的相互关联,而且还能建立知识与人、人与人之间的联系。简单的说,就是知识地图的主要功能在于当我们需要某项专业知识时,可以透过知识地图的指引,找到所需的知识或拥有知识的人。

    (2)知识地图的功能和作用

    根据定义,知识地图是一种帮助用户知道在什么地方找到知识的管理工具。知识地图虽然看起来是一个很复杂的导视系统,但一张看似简单的地理结构图实际上却蕴含了大量、细致的工作,而且应用起来很简单和方便。它的功能和作用主要有:

    ①指示团队的知识资源的位置

    这是知识地图最根本的功能,它能告诉人们到哪里去找需要的知识,并通过各种方式引导人们找到所需的知识和信息。因此,知识地图也可以认为是反映团队内外部知识资源状况的导航图。

    ②揭示团队中的隐性知识

    由于隐性知识存在于人脑中,很难显性表述或者转化成本太高,或在提炼过程中会失去很多特性,因此找到拥有知识的人也就找到了需要的知识。简单地说,就是团队里面有哪些人员,这些人员具体从事过哪些项目,有些什么知识背景和经验。所以,知识地图的一个功能就是指向这些拥有丰富的隐性知识的专家。其它成员通过知识地图就能找到和利用团队中的隐性知识,从而有效地利用好团队的隐性知识来提高工作效率。例如,某位软件工程师甲曾经开发过基于Oracle编程的人事管理软件,当项目现在也需要开发一个基于Oracle系统的人力资源系统时,通过专家知识地图就可以很快寻找到这位软件工程师甲,让他把一些经验和思路进行分享,从而大大的提高工作的复用效率。此外,知识地图不仅能对团队内部成员的隐性知识进行揭示,而且还能揭示团队外部专家的知识,从而将外部的专家资源纳入资源网络中,使内部人员可以方便地获得外部的支持。

    ③揭示知识节点之间的关系

    知识地图能揭示知识节点之间以及知识节点与人或特定事件相互之间的关系。例如,知识地图通过揭示款目之间的关系实现知识的提取和共享,如等级关系、相关关系、因果关系、逻辑关系、评价关系等。每个知识节点与其它节点相连,或与相关的人员相连,或与相关的事件相连,这样就构成了一个知识网络。顺着这个网络,就可以找到所有与这个知识节点相关的东西。因此,很多学者认为知识地图在揭示知识之间的关系时,往往会发生意想不到的效果,就是发现以往所没有发现的某些知识之间的新的关系,从而产生新的知识。这一点在软件开发中能大大的提高知识的复用效率。

    ④知识地图能帮助团队成员共享知识

    知识地图不但有助于增强团队的学习能力和共享文化,也能使新员工尽快适应工作岗位。因为各成员通过在知识地图中的漫游和查询时,不仅可以进行实时学习,还可以发现关联的知识,这种特性可使团队成员大大增强分享的活力。

0
相关文章