写点什么

使用 SilverLight 构建工作流即服务平台

  • 2009-03-26
  • 本文字数:1541 字

    阅读完需:约 5 分钟

几周前新的工作流即服务(Workflow-as-a-Service)平台 SnapFlow 发布了 beta 版。该平台构建在微软系列产品上,其工程副经理 Gopinath Dhanakodi 说到

去年在开始构建 SnapFlow 时,我们曾考虑过 Flex,最后选择了 C#进行业务层开发、SQL Server 2005 作为后端存储。

考虑使用 SilverLight 来代替 Flash 的因素包括:

  • 与业务逻辑层的整合
  • 构建时间
  • 学习曲线
  • 专门技术
  • 部署
  • 特征集
  • 客户的选择
  • 代价

最初 SnapFlow 选择的是 Flash,但在原型开发的几周后:

我们对进度很失望。用户界面很起来毫无生气,每次简单的改变都要花很长时间。

就在那时,我们对 SilverLight 进行了深度调研:

尽管大多数的开发者并不是 UI 专家,但在短短的一个月之内我们取得了重大的进展。在不借助于任何帮助的情况下,团队可以实现一个相当复杂的原型了。

好的方面有:

  • 团队可以快速进入状态
  • 前端的开发速度要比使用 Flash 快 2 倍
  • 开发起来更有生气
  • 整个的集成设计与开发环境

差的方面有:

  • 遇到问题时不容易解决
  • Silverlight 的高级控件不多
  • 缺少自动化测试工具的支持
  • 从 Silverlight 2 beta 迁移到 Silverlight 2 比较麻烦

Gopinath 总结到:

我们是先驱者,遇到了数不胜数的挑战,这些挑战都伴随着领域问题。总而言之,我们对自己的决定感到满意,因此我强烈推荐 Silverlight,尤其是你有.NET 经验。

InfoQ 又对 SnapFlow 的 CEO Samad Wahedi 进行了简短的采访,提到了该新 PaaS 背后的哲学:

我们不同于当前的平台即服务(Platform-as-a-Service)供应商。我们主要的目标是让工作流变得像 powerpoint 一样简单,目标用户是 Andy(一个销售人员),他今年 30 岁,工作在一个分散的拥有 30 个成员的销售团队中,他们主要为一些更大的公司服务(通常都有 500 多名员工)。他有一个 facebook 帐号,对 office 产品套件非常熟悉。

我们决定从头开始并对不了解的一切问题追根问底。Andy 是怎么想的,对他来说什么东西才有意义,他是如何工作的,他正在解决什么问题,如何解决的等等。就这样,SnapFlow 诞生了。

综上所述,SnapFlow 没有使用任何传统的 BPM 标准(BPMN 或 BPEL)。Samad 说到:

销售员 Andy 并不是专业的流程工程师,因此我们并没有围绕 BPMN 进行设计。

我们的工作流模型以活动(activity)和行为(action)为中心。行为决定了接下来执行哪个活动。该模型并没有使用泳道(Swim Lanes),因为用户与角色都关联到每个活动上了。

我们将继续根据 Andy 来构建系统,但同时我们也认识到还需要增加更多复杂的功能。我们的目标是对 Andy 隐藏这些特性,仅仅将其开放给拥有更高权限的用户。这非常有挑战性,但我相信我们能够搞定。

SnapFlow 是首个构建在微软技术之上的 PaaS,同时具备完整的基于 Web 的表单与工作流设计器。当然它还没有使用 Azure,但却向我们展示了.NET PaaS 的样子。 SilverLight 程序经理 Tim Heuer 最近发表了一些关于 SnapFlow 的文章,他的文章主要根据产品的一个三分钟演示而来。他说到:

其中一个很酷的特性就是一旦工作流的创建者创建完毕后,他还可以将该工作流部署到 Web 站点或是其他 portal(比如演示中就使用了 Sharepoint)上,这样我们就可以使用工作流从站点上收集一些数据并将 Silverlight 应用嵌入到站点中,整个过程无需额外的编码。

业界对如何设计BPMN 还不是很清楚,更别提在BPMN 和BPEL 之间定义精准的清晰度了,SnapFlow 似乎重提了这个话题:现在是探索BPM 模型替代者的时候么——让更多的用户参与到设计过程,而不仅仅是BPM 分析师。它还抛出了这个问题:PaaS 的目标是专业的开发者(他们可以将其解决方案部署到EC2 或是Azure Windows Services 上)还是普通的用户呢(他们需要快速构建简单的应用,通常是一次性的项目)?你怎么看待这个问题?

查看英文原文: A Workflow-as-a-Service Platform using SilverLight

2009-03-26 01:522394
用户头像

发布了 88 篇内容, 共 273.8 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

MySQL 指令

武师叔

8月月更

Python 教程之输入输出(7)—— 如何在 Python 中不使用换行符进行打印?

海拥(haiyong.site)

Python 8月月更

Go-Excelize API源码阅读(三)——OpenReader()

Regan Yue

Go 开源 源码分析 8月日更 8月月更

Java+EasyExcel实现文件导入导出

Bug终结者

Java 8月月更

深入了解 Spring篇之BeanDefinition结构

邱学喆

对象初始化 BeanDefinition 对象创建 属性注入 对象检索

Spring Security OAuth实现GitHub快捷登录

阿提说说

Spring Security OAuth

全面了解Java中的15种锁概念及机制!

TimeFriends

8月月更

深入浅出边缘云 | 6. 监控与遥测

俞凡

架构 边缘计算 网络 深入浅出边缘云

毕业总结

Geek_701557

Python爬虫eval混淆,爬虫进阶实战系列

梦想橡皮擦

Python 爬虫 8月月更

什么是 Office Open XML 文件格式

汪子熙

xml 微软 Office 8月月更 openOffice

2022-Java后端工程师面试指南-(SSM)

自然

spring cloud stream Java core 8月月更

OpenHarmony像素单位

坚果

开源 OpenHarmony 8月月更

关于架构的认知

yuexin_tech

架构

低成本、大容量、高交互…Polkadot 引领 GameFi 实现新突破

One Block Community

区块链

即将开幕!阿里云飞天技术峰会邀您一同探秘云原生最佳实践

阿里巴巴云原生

阿里云 云原生 阿里云飞天技术峰会

2022-Java后端工程师面试指南-(消息队列)

自然

Rocket Rabbit MQ 8月月更

模块九(电商秒杀系统)

Geek_701557

【LeetCode】算术三元组的数目Java题解

Albert

LeetCode 8月月更

聊聊电源自动切换电路(常用自动切换电路总结)

矜辰所致

电路设计 8月月更 电源自动切换

STM32+移远MC20模块采用MQTT协议登录OneNet上传GPS数据

DS小龙哥

8月月更

数据治理(二):数据治理功能方面

Lansonli

大数据 数据治理 8月月更

详解中断系统

timerring

8月月更

一文带你搞懂OAuth2.0

闫同学

Go 后端 OAuth 2.0

leetcode 232. Implement Queue using Stacks 用栈实现队列(简单)

okokabcd

LeetCode 数据结构与算法 栈和队列

《编程的原则》读书笔记(一):编程的前提和准则

Chares

软件工程 软件开发 程序开发 编程原理

Spring(四、配置数据源)

开源 MySQ Druid 8月月更

2022-Java后端工程师面试指南-(计算机网络)

自然

网络 8月月更

企业文化如何治好“企业内耗”?

涛哥 数字产品和业务架构

企业文化 企业架构

开源一夏 | 对于jQuery选择器和动画效果停止动画的实战心得【前端jQuery框架】

恒山其若陋兮

开源 8月月更

SpringBoot实战:国际化组件MessageSource的执行逻辑与源码

看山

源码 spring源码 MessageSource Spring原理 SpringBoot实战

使用SilverLight构建工作流即服务平台_架构_Jean-Jacques Dubray_InfoQ精选文章