免费文献传递   相关文献

Application of Workflow Technology in Digital Forestry Grid

工作流技术在数字林业网格中的应用



全 文 :第 wu卷 增刊 t
u s s y年 | 月
林 业 科 学
≥≤Œ∞‘׌„ ≥Œ∂ „∞ ≥Œ‘Œ≤„∞
∂²¯1wu o≥³qt
≥ ³¨qou s s y
工作流技术在数字林业网格中的应用
顾 雷t 张 旭u 黄震春t 范东璞u
kt1 清华大学计算机科学与技术系 北京 tsss{w ~ u1 中国林业科学研究院资源信息研究所 北京 tsss|tl
摘 要 } 数字林业领域中部分应用为典型的数据流驱动 o但传统的数字林业领域对数据流驱动型应用还缺少有
效的支撑环境 ∀在数字林业网格中 o设计基于工作流的面向数字林业网格的数据驱动支撑平台 o并在此平台上开
发若干林业生态工程应用 ∀描述基于工作流的林业应用支撑平台 • ŒƒŠkº²µ®©¯²ºp¥¤¶¨§¬±©µ¤¶·µ∏¦·∏µ¨ ©²µ©²µ¨¶·µ¼ ªµ¬§l
的设计以及该平台的特点 o介绍基于该平台开发的应用 ) ) ) 退耕还林规划来说明如何使用该系统进行快速开发 ∀
关键词 } 工作流 ~网格 ~数字林业
中图分类号 }×°vsu1t 文献标识码 }„ 文章编号 }tsst p zw{{kussyl增 t p stst p sw
收稿日期 }ussx p s{ p tz ∀
Αππλιχατιον οφ Ωορκφλοω Τεχηνολογψιν ∆ιγιταλ Φορεστρψ Γριδ
Š∏¨¬t «¤±ª÷∏u ‹∏¤±ª«¨ ±¦«∏±t ƒ¤± ⁄²±ª³∏u
kt1 ∆επαρτµεντ οφ Χοµπυτερ Σχιενχε ανδ Τεχηνολογψo Τσινγηυα Υνιϖερσιτψ Βειϕινγ tsss{w ~
u1 Ρεσεαρχη Ινστιτυτε οφ Φορεστ ΡεσουρχεσΙνφορµατιον Τεχηνιθυεσo ΧΑΦ Βειϕινγ tsss|tl
Αβστραχτ } ≥²°¨ ¤³³¯¬¦¤·¬²±¶¬±§¬ª¬·¤¯ ©²µ¨¶·µ¼¤µ¨ §¤·¤p©¯²º §µ¬√¨ ±q‹²º¨ √¨ µo±² ©¨©¬¦¬¨±·¶∏³³²µ·¨§ ±¨√¬µ²±°¨ ±·©²µ§¤·¤p©¯²º
§µ¬√¨ ± ¤³³¯¬¦¤·¬²±¶ ¬¨¬¶·¶¬±©²µ¨¶·µ¼qŒ±³µ²­¨¦·²©§¬ª¬·¤¯ ©²µ¨¶·µ¼ªµ¬§o¤º²µ®©¯²ºp¥¤¶¨§¬±©µ¤¶·µ∏¦·∏µ¨©²µ§¬ª¬·¤¯ ©²µ¨¶·µ¼ªµ¬§·«¤·
¶∏³³²µ·¶§¤·¤p©¯²º §µ¬√¨ ± ¤³³¯¬¦¤·¬²± ¬¶§¨¶¬ª±¨ §q ≥²°¨ ¤³³¯¬¦¤·¬²±¶¤µ¨ ¤¯¶² §¨√¨ ²¯³¨ § ¥¤¶¨§²± ·«¬¶³¯¤·©²µ°q ׫¬¶³¤³¨µ
§¨¶¦µ¬¥¨¶·«¨ §¨¶¬ª± ¤±§©¨¤·∏µ¨¶²© • ŒƒŠ kº²µ®©¯²ºp¥¤¶¨§¬±©µ¤¶·µ∏¦·∏µ¨ ©²µ©²µ¨¶·µ¼ ªµ¬§l qƒ¬±¤¯ ¼¯ o¤¶³¨¦¬©¬¦¤³³¯¬¦¤·¬²± ²©
³¯¤±±¬±ª©²µ¦²±√¨ µ·¬±ª¦µ²³¯¤±§·²©²µ¨¶·¬¶¬±·µ²§∏¦¨§·²¬¯¯∏¶·µ¤·¨ «²º·²∏¶¨ ·«¬¶¶¼¶·¨°©²µµ¤³¬§§¨√¨ ²¯³°¨ ±·q
Κεψ ωορδσ} º²µ®©¯²º ~ªµ¬§~§¬ª¬·¤¯ ©²µ¨¶·µ¼
无论在商业应用还是科学研究领域 o一些过程被一再地重复执行 o只是每次的输入数据不同 ∀这些过程
通常包括一组较小的子任务 o每个子任务是一个独立的工作单元 o子任务间互相依赖 ∀通常 o一个过程中输
入输出相依赖的一组任务被称为工作流 o而工作流系统是用来定义 !执行和监控工作流的 ∀
在最近几年中 o工作流技术在商业应用和科学研究领域得到越来越广泛地关注和使用 ∀ ÷°⁄k÷ 
³µ²¦¨¶¶§¨©¬±¬·¬²± ¤¯±ª∏¤ª¨ o÷ 过程定义语言l和 …°∞k¥∏¶¬±¨ ¶¶³µ²¦¨¶¶ ¬¨¨¦∏·¬²± ¤¯±ª∏¤ª¨ o业务过程执行语言l
正逐渐被越来越多的公司采纳并已经应用到实际的产品和项目中 ∀工作流的基本功能可以用/三个正确0来
概括 o即在正确的时间选择正确的人做正确的事情 ∀通常适用于过程固定 o但流程参与者和流程处理数据变
化的应用 ∀在工作流系统中 o数据的流向能够被清晰展现 ∀此外 o工作流系统能够很好地支持协作式信息系
统 !计算机支持的协同工作 !群件系统和功能库 ∀
在数字林业部分应用中 o数据是应用的核心 ∀应用中最常见的查询 !分析 !过滤 !合并和显示等操作都可
以看作是数据的过滤器 ∀数据在不同的过滤器之间流动 o根据一定的规则实现应用的目标 ∀在若干年的数
字化过程中 o数字林业领域积累了大量可重用的标准格式的数据和各种处理服务 ∀为了提高林业数据和
ŠŒ≥服务的重用性并简化应用的开发维护 o采用了基于工作流技术的方案来实现 ∀ • ŒƒŠkº²µ®©¯²ºp¥¤¶¨
¬±©µ¤¶·µ∏¦·∏µ¨ ©²µ©²µ¨¶·µ¼ªµ¬§o基于工作流的林业网格支撑平台l项目的目标是提供一个基于工作流系统的安全
可控的运行环境 o使得对整个应用的全生命周期进行管理和监控 ∀在科学研究领域 o已经存在一些应用系统
是以工作流系统为支撑平台的 o其中有些系统是以子任务交互为中心的k • ¶¨®¨ ετ αλqot||y ~ ∂²¶¶¨± ετ αλqo
t|||l o有些系统是以数据访问为中心的k„¬¯¤°¤®¬ετ αλqot||{l ∀随着网格技术的发展 o还出现了一类弱化过
程概念 o完全以数据为中心的应用系统k⁄¤√¬§ ετ αλqousswl ∀
针对数字林业应用的服务重用性高 !数据量大 !操作耗时长的特点 o• ŒƒŠ设计了如下特性 }tl系统可扩
展 系统的状态采用对象模型 o可以持久化在内存 !数据库和文件中 o可以通过分布式的数据库和文件系统共
享 o实现分布的工作流系统 ~ul 支持页面引擎 • ŒƒŠ提供了页面引擎来控制应用页面的跳转以及数据在
页面和服务之间的传递 o使得开发基于 • ŒƒŠ的 • ¥¨应用更为简便 ~vl插件灵活 系统遵循模块化设计 o每
个模块都设计了接口 ∀用户可以遵循接口开发持久化服务层 !服务 !规则等 ∀灵活的插件使得系统的适应性
增强 o便于将来改造扩展 ~wl容错性强 工作流的数据和状态都可以保存在数据库中 o而工作流的运行状态
则完全由数据库中的状态来决定 o因此可以通过数据库的事物来确保工作流的事物 ~此外 o可持久化的工作
流实例也使得系统在遇到灾难后 o可以从以前的状态恢复 ∀
本文介绍 • ŒƒŠ的体系结构 !设计和实现 o给出一个基于 • ŒƒŠ的开发实例 o最后对该项目进行总结 ∀
t 体系结构
图 t是 • ŒƒŠ的体系结构 ∀ • ŒƒŠ分为用户层和系统层 ∀用户层模块负责和用户交互 o将用户的请求转
化为系统可识别的命令 o转发给 • ŒƒŠ系统的核心模块 o将系统的处理结果以用户可理解的方式反馈给用
户 ∀系统层模块根据用户的请求 o使用系统控制的资源处理该请求 o并返回处理结果 ∀
图 t • ŒƒŠ的体系结构
ƒ¬ªqt ׫¨ ¤µ¦«¬·¨¦·∏µ¨ ²© • ŒƒŠ
111 用户层
用户层是用户与工作流系统交互的界面 o流程的整个周期可以分为 }定义 !部署 !创建和运行几个阶段 ∀
用户层为不同的阶段提供了相应的辅助工具 ∀
设计工具在流程设计阶段使用 ∀设计工具提供可视化的界面 o让用户设计工作流程以及流程中需要使
用的决策规则 !交互页面以及功能服务等 ∀设计好的规则 !页面 !服务和工作流 o可以作为模板保存起来 o供
以后的设计和运行时使用 ∀设计工具最主要的功能是设计工作流脚本 o脚本中描述了工作流中需要调用的
服务 !流转的判断规则 !与用户交互的界面以及流程的组成 ∀
管理工具在流程部署阶段使用 ∀主要是针对工作流脚本的管理 o包括部署 !反部署 !分类和设置权限等 ∀
工作流设计出来后 o还不能够马上被工作流引擎所执行 o必须使用管理工具部署到引擎中 ∀在部署过程中 o
引擎会验证工作流脚本的语法 o维护工作流脚本的版本 o使得同一流程的不同版本可以在系统中运行 ∀
工作间在流程启动和运行中提供给流程用户 ∀用户在工作间中可以启动应用 o并且在工作流引擎的控
制下一步步执行应用 ∀这里用户可以启动新的应用 !继续原有应用以及中止和退出应用 ∀
运行时监视器是为系统管理员提供的 ∀在系统运行过程中 o系统管理员通过运行时监视器可以查看所
有流程的运行情况以及系统的负载 o并可以做相应的调整 ∀
112 系统层
系统层是 • ŒƒŠ的核心 ∀底层是丰富的数据库 !服务库 !页面库 !规则库和流程库 o中间层是灵活强大的
数据库引擎 !服务引擎 !页面引擎和规则引擎 o最上层是工作流引擎 ∀
数据库引擎封装了对数据库的操作 ∀系统运行过程中 o整个工作流的实例都是持久化保存在数据库中
的 ~此外工作流运行中 o一些流程相关的数据也需要保存在数据库中 ∀数据库引擎可以方便地对数据库进行
操作 o并且屏蔽各种关系数据的异构性 o使得系统具有数据库无关的特性 ∀此外将流程状态数据保存在数据
ust 林 业 科 学 wu卷
库中 o便于运行时查询分析系统的运行情况 ∀
服务引擎是工作流系统的执行单元 ∀工作流具体执行的功能通过调用外部的服务完成 ∀具体对服务的
调用是由服务引擎完成的 ∀服务引擎可以调用不同类型的服务 o例如可执行代码 !脚本代码 !• ¥¨服务等 ∀
页面引擎是工作流系统的渲染单元 ∀工作流执行时 o具体功能的输入输出由页面引擎来处理 ∀在运行
阶段 o用户指定每个任务的页面 o页面引擎以表单形式收集用户的输入 o并传递给工作流引擎 ∀在需要显示
页面的时候 o页面引擎会将页面需要的数据从工作流系统中取出并格式化 o页面引擎完成和用户的交互 ∀
规则引擎是工作流系统的决策单元 ∀在流程运行中 o经常需要根据流程的运行情况做一些决策 o例如条
件分支 !条件同步和访问控制等 ∀与外部服务相类似 o规则也需要支持可执行代码 !脚本代码和 • ¥¨服务 ∀
因此在系统中引入规则引擎来判断条件 ∀
工作流引擎是工作流系统的对外接口 o主要负责流程状态的转换 ∀在流程运行时 o根据流程定义调用相
应的引擎执行相应的操作 ∀简单来说 o工作流引擎只负责流程的逻辑 o具体的功能都是调用相应的引擎来完
成的 ∀需要与用户交互时 o调用页面引擎来展现结果 o接收输入 ~需要执行外部服务时 o调用服务引擎执行
脚本中定义的服务 ~需要判断流转情况时 o调用规则引引擎来选择执行路线 ~需要保存流程状态和相关数
据时 o调用数据库引擎来操作 ∀
u 设计和实现
211 工作流定义规范
在 • ŒƒŠ中 o工作流脚本采用 ÷ 格式 ∀ • ŒƒŠ中提供了一组自定义的标签来表示工作流的元素 ∀首
先介绍其中最主要的 w个元素 }步骤 !结果 !服务和规则 ∀图 u是一个包含了分支条件的流程示意图 ∀
图 u 流程示意图
ƒ¬ªqu „ ¶¬°³¯¨ º²µ®©¯²º
˜• }˜±¦²±§¬·¬²±¤¯ µ¨¶∏¯·~≤• }≤²±§¬·¬²±¤¯
µ¨¶∏¯·q下同 ∀ ׫¨ ¶¤°¨ ¥¨ ²¯º q
步骤是流程图中的每一个节点 o是流程的基本元素 o每
一步代表一个用户功能 ∀流程每运行到一个步骤 o将和用
户交互一次 o处理用户请求 o根据结果选择下一个步骤 ∀结
果是流程图中的每一条有向边 ∀结果分为有条件结果和无
条件结果 ∀流程运行时 o首先判断条件 o当判断满足某一条
件 o则沿着相应边转换到下一个步骤 ∀服务是工作流执行
功能的基本单位 ∀在流程从一步转换到另一步时 o会依次
产生步骤预处理 !有条件结果预处理 !有条件结果后处理和
步骤后处理 w个事件 ∀每个事件会触发相应脚本中定义的
服务 o服务是在流程转换过程中被调用的 ∀规则主要用在判断条件结果的时候 ∀当判断一个有条件的分支
时 o会调用规则引擎来判断相应脚本中定义的规则是否被满足 o满足则执行该分支 ∀
此外还设计了分支和同步 u种路由元素 ∀位于分支后面的多个步骤可以被并行执行 o同步需要等待之
前的步骤全部执行完毕 ∀图 v是一个含有并行分支和并行同步的流程示意图 ∀
图 v 含有分支和同步的流程示意图
ƒ¬ªqv „ ¦²°³¯ ¬¨ º²µ®©¯²º ¦²±·¤¬±¬±ª©²µ®¤±§­²¬±
212 引擎的设计和实现
• ŒƒŠ中工作流引擎的设计和开
发参考了开源的工作流项目 ­…°和
’≥• ²µ®©¯²ºo采 用 了 u∞∞ k¤√¤ u
³¯¤·©²µ°o ±¨·¨µ³µ¬¶¨ §¨¬·¬²±o¤√¤u平台企
业版l技术中的轻量级组件技术 ∀
u1u1t 模板库 使用工作流来构建
数据驱动的应用 o主要目的是为了重用流程和各种功能组件 ∀在 • ŒƒŠ中 o各种组件k工作流脚本 !规则 !服
务 !页面l资源都是以 ÷ 格式保存的 ∀用户在设计工作流脚本时 o可以随时设计新的组件并添加到模板库
中 o且可以随时使用模板库中的现成组件 ∀
u1u1u 数据库引擎 引擎在运行时 o流程的状态 !流程的相关数据都保存在数据库中 ∀ • ŒƒŠ的数据库引擎
使用了基于 ‹¬¥¨µ±¤·¨的对象关系映射技术 o使得引擎中对数据库的访问同访问 ¤√¤对象一样方便 o并可以
在不改动代码的情况下移植到各种 ‹¬¥¨µ±¤·¨支持的数据库上 o这一点尤为重要 o在开发测试阶段 o为了部署
vst 增刊 t 顾 雷等 }工作流技术在数字林业网格中的应用
运行方便 o底层使用的是 ‹≥±⁄…这一轻量级纯 ¤√¤数据库 ∀系统实际部署时 o可运行在 ¬¦µ²¶²©·≥±
≥¨ µ√¨ µusss和 ’µ¤¦¯¨ {¬Π|¬上 ∀为了能够方便的访问工作流相关数据 o还开发了基于 ‹¬¥¨µ±¤·¨的可持久化的
属性集 o使得开发人员可以方便的使用 ¶¨·¨µk属性设置方法lΠª¨·¨µk属性获取方法l来保存Π访问相关数据 ∀
u1u1v 页面引擎 使用≥°k¤√¤¶¨µ√¨ µ³¤ª¨ o¤√¤服务器端页面l技术来渲染页面 ∀为了方便的展现工作流相
关数据 o• ŒƒŠ系统提供了一组 ×k¤√¤·¤ª ¬¯¥µ¤µ¼o¤√¤标签库l来显示可持久化的属性集中的数据 ∀
u1u1w 服务引擎 服务引擎采用插件结构 o不同的插件可以支持不同类型的功能服务 ∀ • ŒƒŠ中已经支持
的服务类型有 }¤√¤类 !∞…k ±¨·¨µ³µ¬¶¨ ¤√¤…¨ ¤±o企业级¤√¤组件l !≥’„°k¶¬°³¯¨²¥­¨¦·¤¦¦¨¶¶³µ²·²¦²¯ o轻量级对
象访问协议l服务 !…¨ ¤±≥«¨¯¯k轻量级 ¤√¤脚本l和 ¼·«²±k°¼·«²±语言的 ¤√¤实现l ∀用户可以开发新的插件 o
例如支持 ¤√¤¶¦µ¬³·k一种流行的基于对象的语言l和 Šµ²²√¼k一种基于 ¤√¤虚拟机的语言l等 ∀在调用服务的
时候 o服务引擎会传递 v类参数 }用户从页面提交的参数 !脚本引擎中预先设置的参数和工作流相关数据的
属性集 ∀每种方法返回字符串类型的值表示服务调用的结果 ∀
u1u1x 规则引擎 规则引擎的结构同服务引擎 o也是支持插件的结构 ∀支持的插件类型同服务引擎 o唯一
区别在于返回值不是字符串 o而是布尔类型 ∀
u1u1y 工作流引擎 工作流引擎使用 ⁄’k§²¦∏°¨ ±·²¥­¨¦·°²§¨¯o文档对象模型l来解析 ÷ 格式的工作流
定义文件 o将之转化为 ¤√¤对象 ∀在运行过程中 o将状态一步一步保存到数据库 o根据预先定义好的流程 o
调用相应的子引擎来完成相应的功能 ∀
213 用户接口
用户接口提供给工作流系统的使用者 ∀使用者包括流程设计 !流程部署 !流程管理 !流程使用等角色 ∀
不同接口供不同角色使用 ∀
u1v1t 设计工具 • ŒƒŠ使用 Šµ¤³«开发的可视化流程定制工具 o支持独立运行和浏览器嵌入式运行 u种
模式 ∀编辑器支持鼠标拖拽 o并可以设置每个工作流元素的属性 ∀ • ŒƒŠ可以自动在可视化流程和 ÷ 格
式之间转换 ∀该开发环境还支持模板的编辑和使用 ∀
u1v1u 管理工具 管理工具是完全基于 • ¥¨的 o在 • ¥¨界面中可以对流程进行部署 !分类 !修改状态以及
设置权限等操作 ∀
u1v1v 工作间 工作间是基于 • ¥¨的 ∀每个普通用户登录到系统之后可以进入个人的工作间 o这里列出用
户可以启动的应用 o以及用户正在运行的流程 ∀
u1v1w 运行时监视器 运行时监视器通过查询底层数据库获得工作流实例相关的数据 ∀通过监视器 o可以
查看正在运行的流程以及对流程实例进行停止 !挂起和恢复的操作 ∀
v 应用开发
以/退耕还林规划0流程应用为例 o描述使用 • ŒƒŠ开发应用的过程 ∀退耕还林规划流程的目标是要得
到河流两岸坡度小于一定范围的耕地 ∀为了得到这一结果 o需要对基础地图 !土地利用图和耕地分布图进行
各种 ŠŒ≥操作 ∀为了得到不同地区的结果 o需要使用不同地区的地图数据来操作 o但是流程是固定的 ∀整个
开发分为如下步骤 }定义流程 !开发服务 !开发页面和配置部署 ∀
311 定义流程
退耕还林规划应用虽然流程不是非常复杂 o但是用到了流程中的分支 !并行和合并 ∀使用 • ŒƒŠ编辑器
绘制的流程图如图 w o图 w可以清楚的看出退耕还林的过程 ∀
312 开发服务
在林业中 o大量的 ŠŒ≥操作是可重用的 o为此开发了几个非常常用的 ŠŒ≥服务 }缓冲区分析 !空间分析 !
叠加分析以及结果显示 ∀此外 o在网格应用中 o资源的查找注册也是常用的服务 ∀基于数字林业网格的另一
个子项目中开发的资源注册平台 !搜索服务也是通用的 ∀在开发服务的时候需要明确定义服务的输入输出
参数的名称和格式 ∀
313 开发页面
这一步是开发每一步用于和用户交互的页面 o所有的页面可以基于相同的模板按照 • ŒƒŠ的页面规范
来开发 ∀页面使用 • ŒƒŠ提供的 ×可以方便的访问流程相关的数据 o用户请求也只需要提交给 • ŒƒŠ引
wst 林 业 科 学 wu卷
图 w 退耕还林流程
ƒ¬ªqw „ º²µ®©¯²º ²©¦²±√¨ µ·¬±ª¦µ²³¯¤±§·²©²µ¨¶·
擎 ∀在页面层不需要考虑如何处理用户输入 o下一步跳转到什么页面 ∀使得页面开发可以更多的考虑表示
层的东西 o而不需要考虑过多逻辑层 ∀
314 配置部署
流程开发完毕之后 o需要将开发好的服务在 • ŒƒŠ编辑器中设置到相应的预处理和后处理元素中 o将开
发好的页面设置到相应的步骤中 o并且将页面添加到页面库中 ~然后将工作流部署到系统中 ~再次登入系统 o
即可启动应用 o按照流程定制的步骤一步步的完成应用 ∀
w 结论
在数字林业网格中使用工作流技术具有以下优点 }tl 利于不同专长的人员的合作 ∀熟悉应用流程的
人员和熟悉应用开发的人员可以通过工作流定制工具进行准确交流 ∀ul 提高了服务和应用的重用性 ∀在
实际开发的时候 o只开发了少量功能单一的业务服务 ∀此外 o如果某一地区需要使用该服务 o只需要将本地
的数据按照规定的格式注册到资源注册中心 o即可以使用系统提供的应用流程来处理本地数据 ∀vl 适合于
长时间运行的服务 ∀使用工作流技术后 o每个应用的运行状态都被记录下来 o应用可以随时中断 !随时继续 ∀
而且支持并行执行 ∀对于大量使用耗时的 ŠŒ≥操作的林业应用 o能够明显提高工作效率 ∀wl 缩短了二次开
发的时间 o降低了开发的难度 ∀
当然 o系统中也存在一些不足 o如工作流引擎自身的效率还有待提高 o此外页面系统暂时只支持 ≥° o不
支持 „≥°k„¦·¬√¨ ≥¨ µ√¨ µ°¤ª¨¶o活动服务器页面l语言 !°‹°k°¨ µ¶²±¤¯ «²°¨ ³¤ª¨ ‹¼³¨µ·¨¬·°µ¨³µ²¦¨¶¶²µo个人主页超
文本预处理l语言等常见的动态 • ¥¨语言 o使得与这类系统集成时需重新开发页面 ∀今后将进一步改进 ∀
参 考 文 献
„¬¯¤°¤®¬„ oŒ²¤±±¬§¬¶≠ ∞o¬√±¼  qt||{1 ≥¦¬¨±·¬©¬¦º²µ®©¯²º °¤±¤ª¨ °¨ ±·¥¼ §¤·¤¥¤¶¨ °¤±¤ª¨ ° ±¨·q≥·¤·¬¶·¬¦¤¯ ¤±§≥¦¬¨±·¬©¬¦⁄¤·¤¥¤¶¨ ¤±¤ª¨ ° ±¨·ot|s p
t||
⁄¤√¬§× o¬¦«¤¨¯ƒ qussw1 Šµ¬§⁄…}„ §¤·¤p¦¨±·µ¬¦²√¨ µ¯¤¼©²µ¶¦¬¨±·¬©¬¦ªµ¬§¶qŒ±·¨µ±¤·¬²±¤¯ ≤²±©¨µ¨±¦¨ ²± ∂ µ¨¼ ¤µª¨ ⁄¤·¤¥¤¶¨¶k∂⁄…l
∂²¶¶¨± Š o • ¶¨®¨  qt|||1 ׫¨ • „≥„u ²¥­¨¦·p²µ¬¨±·¨§º²µ®©¯²º °¤±¤ª¨ °¨ ±·¶¼¶·¨° q°µ²¦¨ §¨¬±ª¶„≤  ≥ŒŠ ’⁄Œ±·¨µ±¤·¬²±¤¯ ≤²±©¨µ¨±¦¨ ²± ¤±¤ª¨ °¨ ±·²©
⁄¤·¤k≥ŒŠ ’⁄t|||l ox{z p x{|
• ¶¨®¨  o∂²¶¶¨± Š o  §¨¨¬µ²¶≤ …qt||y1 ≥¦¬¨±·¬©¬¦º²µ®©¯²º °¤±¤ª¨ ° ±¨·} • „≥„ ¤µ¦«¬·¨¦·∏µ¨ ¤±§¤³³¯¬¦¤·¬²±¶q ƒ¤¦«¥¨µ¬¦«·„±ª¨ º¤±§·¨ ¤·«¨ °¤·¬® ∏±§
Œ±©²µ°¤·¬®svΠ|y p Œ
k责任编辑 石红青l
xst 增刊 t 顾 雷等 }工作流技术在数字林业网格中的应用