Searching workflow/process tool based on ZF - zend-framework

Does anyone know a workflow system based on Zend (or php), which is open source and can be integrated in a project? What do I understand as workflow system:
User starts a workflow through submitting some start parameter (e.g. SOAP/HTML request)
Zend runs the workflow in the background (on high server load the operations are lined up in a queue)
Workflow may be build out of several modules/actions e.g. export xml > create pdf > send pdf to user > send email (Backend)
User sees current status of the running workflow online and gets the result as soon as finished through ajax requests to the server. (User Interface)
Admin has a overview of general running workflows (Admin Interface)
Thanks for your hints!

If I understand correctly, the workflow is just a pre-defined set of actions.
I don't believe there is a ready tool for this, but I think you may be interested in running a set of cron jobs from the Zend Framework CLI (e.g. building your own Zend_Tool Provider) and in Zend_Queue.

You might want to use the right tool for such task - eg. Gearman. It is a piece of software solely for the requirements you described. See more here:
http://www.slideshare.net/felixdv/high-gear-php-with-gearman
http://weierophinney.net/matthew/archives/240-Writing-Gearman-Workers-in-PHP.html

You may want to try eZ Components Workflow library: http://www.ezcomponents.org/docs/api/trunk/introduction_Workflow.html
This post describes how to integrate the eZ Components library with Zend:
http://devzone.zend.com/article/156
Other than that I haven't found any real examples of integrating the eZ workflow classes with a Zend MVC application.

Symfony has a component for this. http://symfony.com/doc/current/components/workflow.html
Oro platform has a bundle for this.
https://github.com/oroinc/platform/blob/master/src/Oro/Bundle/WorkflowBundle/Resources/doc/index.md
Otherwise, you could build your own implementation based on maybe the State design pattern. Here is a nice example from Sebastian Bergman.
https://github.com/sebastianbergmann/state

Related

what are the pitfalls in implementing Dynamics CRM integration using plugins?

We are trying to choose an approach we should follow in integrating on-promise Dynamic CRM with other companies and third-party software and systems, we use in our company.
Concerning this msdn page: https://msdn.microsoft.com/en-us/library/dn932127.aspx we have some options. But my team members want to implement integration through service calls to external systems inside plugins.
I am talking about Data Integration and Data Synchronization for a total solution that Dynamics CRM is a part of it. Considering the limitations in plugin and the options written in the mentioned msdn page, I think bringing the integration code and logic out of the CRM stuffs and encapsulate it in into a separate connector solution would be a better solution. The connector of course
should support real-time and offline or on-demand data synchronization.
I want to know what are the disadvantages/advantages in plugins approach in integration with external systems, and what are advantages/disadvantages of using a connector solution?
Thanks
Implementing integration to third party system within plugins can be a good approach. You should be aware of how plugins work and how the result of your integration affects the success or failure of the database action that triggers the plugin. Some important items to consider:
Is the database action dependent upon a result from the integration. For instance if your integration is verifying/modifying your data, you may want the result of the integration to affect what is written to the database. Such a plugin would probably be registered on a pre plugin.
Should the database action go through if the integration fails? Many integration are done in a post plugin outside of the transaction so that if the integration fails it does not cause the database action to fail.
This really sounds like something you might want to solve using tooling outside of CRM. For example Scribe, SSIS (with Kingswaysoft) or some ESB type application.
Especially the first two provide no-code solutions and would probably have a lower TCO than writing your own plugins.

How to use alfresco java API to submit form values

I have developed one spring based java web application. In my project it is requirement to use alfresco as a CMS. For this I want to integrate this application with alfresco. So I decided to use alfresco java API's.
http://dev.alfresco.com/resource/docs/java/
But I am not getting how to use those API's to complete backend work of my web application. Suppose I would like to submit one form having user name & password fields in it. After click on submit button how can I handle request in backend so it will use Alfresco java API to process request and store details in database.
I have to do many operations in my project like upload file, play with documents, Submit different forms. view those forms etc.
My first question is am I going in right direction by using alfresco java API's. if yes then how can use those API? is there any other way to do this?
Any help would be appreciate!!!
Thanks in Advance,
Kailas Salunke.
Well, based on my experience, Alfresco is an excellent ECM but not suitable for being a CMS.
Apart from that, it is difficult to give suggestions, starting from the very general overview you have given, but things like user name and password have little to do with an ECM and storing of data in a database.
You have two options available.
One involve using the Web Content Management Quick Start, it's a Spring Surf app you can (not easily in my opinion) customize for your needs.
The other solutions, if you have an existing web app, rather than develop your own API have a look at CMIS, I have put a simple wikipedia explanation, you can dig further from there.
Then, when you are ready, have a look at Alfresco CMIS first, and the most used Java API for doing CMIS call, which is Apache Chemistry
CMIS, in its intent, guarantee that Alfresco could be replaced with any other CMIS compliant ECM. You can easily integrate Apache Chemistry in your Spring app.

Selenium Automation Framework

I am user of Selenium RC with java for a quite long time. But till date I am not able to find the best framework for Selenium RC scripts. I would like to know the following details,
a) What are the different frameworks available for Selenium RC?
b) Which is the best one for Selenium RC with Java?
Help me with your answer, please also provide the supporting URL so that I can have some basic idea about the frameworks and chose the best one for my project.
Thanks in advance
We have been using OpKey, a framework on selenium build by CresTech. What we liked about it was out of box Object map and data map implementation..For us script maintenance was a issue we were struggling with.I would recommend OpKey
We use TestNG. In addition to providing a JUnit-type organization for system tests, it supports data driving and has scope for Continuous Integration.
Page Object - [http://roadtoautomation.blogspot.in/2015/02/page-object-model-for-selenium-webdriver.html]
Keyword Driven Framework - Keyword-based test design and test automation is formed on the idea that the discrete functional business events that make up any application can be described using short text description (keywords). In this framework testers to develop test cases using Microsoft Excel using a list of keywords. When the test is executed, the framework
processes the Excel workbook and calls functions as sociated with the
keywords entered in the Excel spreadsheet. These keyword functions in
turn perform specific actions against the application under test
(AUT).
http://seleniumeasy.com/selenium-tutorials/keyword-driven-framework-example
Data Driven Framework
https://www.youtube.com/watch?v=FSiba01-R2M
Hybrid framework - Combination of Keyword and Data Driven framework

alfresco workflow configurable and barcodes

i have a couple of questions on Alfresco.
Is Alfresco workflow module, point and click configurable or is programming needed?
Can Visio diagrams be used to set workflow?
Can Alfresco process 1-D and 2-D barcodes?
Regards
vish
Currently Alfresco workflows can be developed using the JBPM Graphical Process Designer, which produces XML files you directly upload into Alfresco. Be aware of the fact that in the future the default workflow engine of Alfresco will change to be Activiti.
Barcode generation/scanning is not supported by Alfresco.
At the Alfresco Devcon in New York (2010) Neil McErlean did a presentation on the Alfresco Action Framework where he demoed an example of working with QR codes.
The presentation can be found at http://www.slideshare.net/alfresco/custom-action-framework
I am not sure where the source code lives for this customization. So while it can't be done OTB, it is a customization that is possible and has been done as a POC.
More recently, the Activiti workflow engine is the default in Alfresco (though jBPM is still available). There is an Eclipse plugin that can be used to do the initial workflow design graphically (and output BPMN XML files).
However, the BPMN is not useful until it has been manually enhanced with Alfresco-specific features such as the assignee (person or group) for a task, the form to use to display the task, and scripts to create and maintain process and task variables, and/or hook into events triggered during the workflow. Further work may be needed to define the task model (the variables that each type of task needs) and to customise the Share user interface to display the tasks correctly to users. See this article for an example.
So although the initial draft design can be done graphically, detailed programming is also needed. The Alfresco training materials for workflows specifically state that end users cannot create new workflows without assistance from a developer.
The exception is "simple workflows", which don't use BPMN or jBPM, and are simple one-step Accept/Reject decisions that can be created by end users.
You can use whatever BPMN tool as long as it generates an xml BPMN xml output so you can import it into Alfresco activiti

Windows Workflow Foundation in ASP.NET 3.5 Web Application - Best Approach

What is the best way to use Windows Workflow Foundation in ASP.NET 3.5 Web Application.
In my case there are several workflows(sequential) which includes numerous steps, user has the privilege to save and exit at any of these steps; the state must be persisted, possibly in SQL Server.
Exposing workflows as web service is good idea? I have very little idea about workflows and only tried out wf console applications.
Please guide me in right direction, also I would like to know is there any specific and established architecture to use wf in ASP.NET Web Apps. We have layered architecture for our web apps (BLL, DAL, Services etc) and I would like to know where we can incorporate workflows in current architecture.
Many thanks in advance.
Update: thank you Rubens Farias for helping me out in first place.
We are still unsure which approach will be the best.
Please provide any example frameworks or sample webapplication which use workflow
So far...
1. Is it good idea to use Page Flow Application Block
2. There are lots of changes in WF4, should I wait for that?
3. Or use WF as Rubes Farias suggested
Please guide me friends, am desperate :(
You definitely must read this document: Foundations: Workflow Services
You can to add an out-of-box persistence service, so your workflows get persisted into a SQL Server database, and to expose them as WCF services (RESTfull approaches is also available).