InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

A Workflow-as-a-Service Platform using SilverLight

Posted by Jean-Jacques Dubray on Mar 05, 2009

Sections
Process & Practices,
Development,
Enterprise Architecture
Topics
Silverlight ,
Rich Internet Apps ,
Business Process Management ,
Architecture ,
SaaS ,
Business Process Modeling
Tags
Flex ,
Flash

SnapFlow, a new Workflow-as-a-Service platform, launched its beta program a couple of weeks ago. The platform is built on a Microsoft stack as Gopinath Dhanakodi, VP of Engineering, explains:

When we set out to build SnapFlow in 2008, we picked C# for business layer and SQL Server 2005 for the backend, after briefly considering flex. 

Factors that were considered in their decision of using SilverLight over Flash included:

  • Integration to business logic layer
  • Time to build
  • Learning curve
  • Expertise
  • Deployment
  • Feature set
  • Customer Adoption
  • Cost

SnapFlow had initially chosen Flash but after a few weeks into the development of their prototype:

[They] were quite disappointed with the progress [they] made. The user interface looked clunky and every simple change was taking a longtime.

At that point they investigated SilverLight in greater details and:

Within a month the team made great progress even though most of our developers were not UI experts. Our team was able to learn and build a fairly sophisticated prototype without any support. 

The Pros include:

  • [The] team was able to quickly come up to speed
  • [The] progress on the front end twice as fast as flash
  • The time based animation.
  • The overall integrated design and development environment

The Cons:

  • Finding help whenever [they] came across issues.
  • Silverlight didn’t have lot of advanced controls
  • Lack of support for test automation tools
  • Silverlight 2 migration from Silverlight 2 beta brought another unexpected challenge

Gopinath concludes:

We are an early adopter and face many of the standard challenges, that just comes with the territory. Overall we are very happy with the decision we made and I would recommend Silverlight, especially if you have .NET expertise.

InfoQ spoke briefly with their CEO, Samad Wahedi, about the general philosophy of this new PaaS:

We are different from the current Platform-as-a-Service providers. Our main goal is to make workflow as simple as powerpoint. Our target user is Andy the Sales Guy. He is 30 Years old. Works within a small geographically dispersed sales team of 30 members, working for a much larger firm of 500 employees. Has a face book account and is very familiar with the office suite of products.
We decided to start from scratch and question everything. How does Andy think, what would make sense to him, how does he work, what are the problems he is trying to solve and how would he go about solving them… SnapFlow was born.

With that in mind, SnapFlow does not use any of the traditional BPM standards (BPMN or BPEL). Samad explains:

Andy our Sales guys is not a professional process engineer, hence we did not design around BPMN.

The workflow model is centered on activities and actions. The actions decide which activity comes next. This model removes the need from Swim Lanes as users and roles are associated to each activity.

We will continue to build for Andy but we do recognize that we will need to expose more complex capabilities. Our goal is to hide these features from Andy, yet expose it to the power users. This is a challenging balance to achieve, but I believe we are up to the task.

SnapFlow is the first PaaS built on Microsoft technologies and comes fully equipped with Web-based form and workflow designers. It does not use Azure yet, of course, but it provides a good view of what a .NET PaaS would look like. Tim Heuer, SilverLight Program Manager, wrote recently about SnapFlow. His post features a 3 min demo of the product. He notes:

What is cool in one of the features is that once you, the creator of the workflow, are complete, you can then deploy that workflow into your web site or other portal (the demonstration shows using Sharepoint for example). So you could develop a workflow for gathering some data from your web site, and embed the generated Silverlight application on your site with absolutely no coding required on your part.

As the industry is still unsure about how to design BPMN moving forward, let alone define a precise articulation between BPMN and BPEL, SnapFlow seems to be reopening the question of whether it is time to explore alternative BPM models that can bring more users into the design process, not just BPM analysts? It also asks the question whether PaaS should be designed for professional developers which can deploy their solutions on EC2 or Azure Windows Services, or if PaaS should rather focus on more casual users which need to build simple solutions quickly, often for a one-off project? What do you think?

Related Sponsor ;) by Robert MacLean Posted
Flex vs. Silverlight? Competencies is the master issue by Matthieu Hug Posted
  1. Back to top

    Related Sponsor ;)

    by Robert MacLean

    Got to love the fact the first half of the article says Silverlight is better than flash and at the end the related sponsor is Adobe punting Flex and Air ;)

  2. Back to top

    Flex vs. Silverlight? Competencies is the master issue

    by Matthieu Hug

    This technology better than that one... Well that's mainly a question of competencies. At RunMyProcess we're running a BPM as a service platform with a user interface based on Flex, and I believe our interface proves that ergonomy and ease-of-use is largely accessible with Flex, in particular to design extremely powerful workflows and processes. Imho it's even a wonderful tool for building user interfaces. Competencies is the most important issue, way beyond technological "comparison"...

Educational Content

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.

Max Protect: Scalability and Caching at ESPN.com

Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.

The Seven Deadly Sins of Enterprise Agile Adoption

Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.

Questions for an Enterprise Architect

Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turning strategy into execution, Ensuring conformance, Where do the architects sit? Buying or building?

Wrap Your SQL Head Around Riak MapReduce

Sean Cribbs explains what Map-Reduce and Riak are, why and how to use Map-Reduce with Riak, and how to convert SQL queries into their Map-Reduce equivalents.