Infoworld: Fire up a workflow engine to improve software development
Workflow engines help ensure enterprise application development stays on track -- if you know how to use them
Workflow engines are underused and underappreciated. Most companies configure or develop enterprise software so that it implicitly reflects their business processes and leave it at that -- big mistake.
Instead, workflow engine can be used to provide state diagrams for developers. They enable you to map and store the state of the system, as well as hook into state transitions that trigger events and functionality.
Using a workflow engine forces you to rethink the way you write software. It forces you to decouple business process from business software, which can help your software become more robust and componentized. You retain the atomic components of your logic -- even if the overall process changes.
Further, using a workflow engine also provides solid documentation for your business process. A new developer, for instance, can understand the whole process at a glance, rather than only after they've read through thousands of lines of code or digested what a series of remote calls mean. Sure, you could document this anyhow, but I've rarely seen hand-generated documentation kept up to date after a few releases.
Read the rest of my article over at InfoWorld.
After you're done. Please consider sending me ideas on other topics you'd like me to write about. I'm always looking for ideas.