Current MS Students/Sepideh Nazari
From CSWiki
My CS 590 page.
Project Prospectus: CoolStateLA Workflow System
Contents |
[edit] What I am planning to accomplish
[edit] Brief Project specification
My project is include researching and finding a open source workflow system for CoolStateLA base on what CoolStateLA needs to perform their jobs and moreover setting up, customizing and configuring this system for their new arrival project and their newsroom.
I will also run into Business Process Management Systems. These are systems that let one automated business processes. They are less oriented to tasks performed by individuals. There is an obscure line between business process systems and workflow systems. Part of my project is to sort through all this things and figure out what's the best adaptive for CoolStateLA.
Per definition of Wikipedia, Workflow is the operational aspect of a work procedure: how tasks are structured, who performs them, what their relative order is, how they are synchronized, how information flows to support the tasks and how tasks are being tracked. Workflow is a reliably repeatable pattern of activity enabled by a systematic organization of resources, defined roles and mass, energy and information flows, into a work process that can be documented and learned.
These are some of the features that I find in various types of workflow systems and seems to me that we need them in CoolStateLA workflow system:
- Control project views and permissions by user
- Indexing capabilities for large and small format documents
- Revision control
- Comprehensive user management tools
- Routing engine caters
- Multi-level access control
- Authentication
- Powerful online reporting tools
- Automatic email alerts and notifications.
[edit] Why this is academically interesting
[edit] Intended audience
The users of this project are the people who will be developing the CoolStateLA system. The system lets them create and track the tasks. In one scenario, an editor may assign to a reporter the job of investigating and writing up a story. There should be some way to keep track of the fact that the task was created, that it was assigned to a particular person, the state of the task.
[edit] Why this is MS-level work
This project is a MS-level work because it requires to be compatible with newsroom automation software, it also is intended to manage the flow of projects from ingest to perform in a fairly complex and sophisticated operation. In addition it needs plenty of investigation in order to find out which workflow system works the best for CoolStateLA.
[edit] Previous work
[edit] Platforms to be used and what I will add to each
I haven't reach to a conclusion for the platform to be used yet.
[edit] Available platforms I am not using and why
Here's a review of Open Source Workflow Engines that are written in Java with the Apache Style License that I have reviewed
| Product | Description |
|---|---|
| Apache OFBiz Workflow Engine | (WAS OFBiz Workflow Engine) The Open for Business Workflow Engine is based on the WfMC and OMG spec. OFBiz Workflow Engine uses XPDL as its process definition language. Apache is currently "Incubating" this project to become a full fledged Apache Project. |
| Apache Agila | Agila is centered around Business Process Management, Workflow and Web Service Orchestration. It's composed of two specialized modules: Agila BPM and Agila BPEL. Agila BPM is basically handling tasks and users who have to complete these tasks. It's a very flexible and lightweight workflow component. Agila BPEL is a BPEL-compliant Web Services Orchestration solution |
| Open Business Engine | OBE is a flexible, modular, standards-compliant Open Source Java workflow engine. It is fully J2EE compliant, and supports several J2EE application servers, operating systems and databases. It implements several Workflow Management Coalition Open Standards (WfMC), to which it offers a variety of extensions and enhancements. OBE is equally suited to embedded or standalone deployment. |
| OpenSymphony OSWorkflow | What makes OSWorkflow different is that it is extremely flexible. |
| Zebra | Zebra is a workflow engine - originally developed to fill in the gaps in some commercial and open source workflow engines. The key differences between it and other workflow systems are able to model all the workflows described in workflow patterns, a GUI designer and Hibernate persistence layer. |
These are the systems that I have plan to look at them
| Product | Description |
|---|---|
| OpenWFE | OpenWFE is an open source java workflow engine. It features 3 components, easily scalable : an engine, a worklist and a web interface. Its workflow definition language is inspired of Scheme, a Lisp dialect, though it is expressed in XML. |
| ObjectWeb Bonita | Bonita is a flexible cooperative workflow system, compliant to WfMC specifications. A comprehensive set of integrated graphical tools for performing different kind of actions such as process conception, definition, instanciation, control of processes, and interaction with the users and external applications. 100% browser-based environment with Web Services integration that uses SOAP and XML Data binding technologies in order to encapsulate existing workflow business methods and publish them as a J2EE-based web services. A Third Generation Worflow engine based in the activity anticipation model. |
| wfmOpen | WfMOpen is a J2EE based implementation of a workflow facility (workflow engine) as proposed by the Workflow Management Coalition (WfMC) and the Object Management Group (OMG). Workflows are specified using WfMC's XML Process Definition Language (XPDL) with some extensions. |
| XFlow2 | Inspired by simple workflow definition language in XFlow developed to improve its implementation. Externalized SQL in iBatis mapping files. Works as embedded workflow engine. |
| Antflow | AntFlow is a tool for the automation and scheduiling of data system tasks, including those with complex dependencies and workflow logic. Antflow represents a new approach to simplifying system automation that leverages pipelines of hot folders chained together to perform a given task. Using XML, Antflow associates an automated task, such as data tran |
I am also considering to download a free trail of a sophisticate but not open source Workflow system in order to find out their features.
[edit] Literature review
- Integrating databases and workflow systems Srinath Shankar Ameet Kini David J DeWitt Jeffrey Naughton
- Workflow. NET
- Aspects in Workflow Management Simeon Petkov Eyal Oren Armin Haller
- Pagesetter Workflow Specifications Tony Jensen and Jørn Lind-Nielsen
[edit] Why I am re-implementing an existing system
I am not going to re-implement this system again. Because if I just find a best fit open source workflow system and probably add some new features would be more sophisticated way in compare of writing from scratch.
[edit] Anticipated challenge(s)
[edit] Challenge(s)
In the system that I am going to search about it, there are some fields probably not well defined. So some systems may be close to what CoolStateLA need while other systems may be far away. I need to find a system to best fit for CoolStateLA requirements.
1- I need to find out what the use cases are and what kind of features does CoolStateLA need to perform their jobs.
2- Then I have to find proper open source workflow systems which matches with CoolStateLA requirements in order to organize their work.
3- After finding an appropriate system I should install and customize it. And surely train the people who expect to work with it.
[edit] Anticipated approach to each challenge
1- Lots of investigation and research needs to be done in order to find out what are CoolStateLA requirements.
2- Huge amount of search seems necessary to find suitable open source workflow systems.
3- Furthermore go through the documentation find out how to install it. And setup and configure the system. Then find out how each of the features works and teach them to the users.
[edit] What I bring to this work
[edit] My relevant background and experience (CS 590)
I have taken Design and analysis of algorithm, Web programming and Software engineering, which I assume may help me to understanding and designing new projects. And I have taken Advanced software engineering that helped me to find out what is the requirements of the project and taught me the best way to research about the subjects and also gave me an interesting view to the project which is “AS IS, TO BE, SHOULD BE”. I have also years of experience in web programming that can provide me a better understanding of design and structure of the web application systems.
[edit] How this work goes beyond my experience and course work
There may be some other futures that we going to need in for CoolStateLA workflow system but are not included in any of current open source workflow systems. So I need to go through the algorithm and design of System and its code. Then start implementing CoolStateLA’s required features.


