With a little googling I could find workflows - which automates the business process - to meet some business needs. i.e.; All I could find is it is a piece of software which allows us to split the process into sequence of steps - and allows us to track each step - also helps us in achieving those steps.

I could find the example of HR management software which automates it's hiring process with the help of workflows. Would like to know more about how workflows reduces the end consumer's headache.

Where do workflows fit in?

  • 1
    Hi queenritchie. Several things to consider. 1. Workflows are not software. It's a concept that provide some execution processes with a determined order. That being said, A. You can implement your own workflows according your needs. B. Some tools allow you to do it easier with the cost of having your workflow constrained by the tool's capabilities. 2. Asking for tools and sites is off-topic here. 3. You might be interested in BPM if managing business process is what you need. – Laiv Jul 15 '17 at 16:31
  • @Laiv Workflows are not software? Are we talking about the same thing? When I think of workflows I think of these things: Walkoff Workflows. – candied_orange Jul 15 '17 at 16:48
  • i also am confused by this question – Ewan Jul 15 '17 at 16:51
  • 2
    This is out of the scope of software engineering. – Martin Maat Jul 15 '17 at 16:58
  • 1
    you have edited my question in much appropriate way... thanks @CandiedOrange – gooogle Jul 15 '17 at 18:11

A workflow consists of an orchestrated and repeatable pattern of business activity enabled by the systematic organization of resources into processes that transform materials, provide services, or process information. It can be depicted as a sequence of operations, declared as work of a person or group, an organization of staff, or one or more simple or complex mechanisms.

Wikipedia : Workflow

A workflow could be getting me a product that I ordered. That workflow can be a clearly defined repeatable business practice that only involves humans and paper. In which case software engineering had nothing to do with it. Or it can be completely automated so no human is involved. Or it can be a mix.

A workflow is a process:

Process optimization, for example, can’t be achieved by simple automation. Automation is concerned with a single task – launching a web server, configuring a web server, stopping a service. Orchestration, however, is concerned with automating, if you will, the execution of a workflow – of a process. A provisioning process may be comprised of multiple tasks and involve multiple systems. An “application” is not just a single server, after all, it’s likely several servers – web, app and database in a traditional three-tier architecture.

devops.com - automation-versus-orchestration

If you're finding it hard to see the difference between automating tasks and orchestrating workflows of tasks you're not alone. I had the same problem. But some people just don't think of them the same way. I've worked with these things and to me at first the difference seemed more structural and architectural than conceptual.

The structural / architectural difference I saw was tasks typically ran on one machine. Where a workflow process would weave through many devices by the ochastrating machine either remoting into the machine with the task or comunicating with a host based agent on that task running machine.

The conceptual difference is by far the important bit. There is nothing that can be fully automated that couldn't just be tasks that execute and communicate from machine to machine.

enter image description here

But if that's all you have there is no one single place to stand and say: "here's the whole workflow process". "Here's where we control it". Without that nothing holds the concept of the workflow. Everything is simply part of it. It's just a bunch of things talking to other things.

enter image description here

With an orchestrator that is aware of and controlling the workflow you can reconfigure the workflow in one place. Direct parts to swap out at will. You can even nest workflows within workflows.

Those parts may be machines, networks, people, or whole departments. It's nice to have one place to coordinate all that rather then have to configure everything one at a time.

  • @queenritchie please don't be so quick to choose mine as the solution. Give it a day at least. I'm hoping more answers come in because I'm still learning this stuff myself. Might even set a bounty. – candied_orange Jul 15 '17 at 18:57
  • I liked the explanation given by you - and there were no other answers - so, I opted your's as the solution ... but anyways i always have option to switch to another solution ;-) – Tom Taylor Jul 15 '17 at 18:59
  • Yes but you're discouraging others who might answer. I only have about 1 year of experience with this stuff. Give it a chance. – candied_orange Jul 15 '17 at 19:01
  • @CandiedOrange you are very humble !! I haven't realised it that others might get discouraged when they have already solution for this question ... Now removed your's as solution.. Let's wait and see... So, that more people could answer... And we can choose the best one from them... – gooogle Jul 15 '17 at 19:02
  • @queenritchie feel free to check the answer that you consider to be more useful for you. People who don't dare to answer because you already got the one you need, probably means that they don't have nothing signifcantly better or different to say ;-). CandiedOrange few times is wrong and whether you already got the answer or not, people will continue posting their answers. I'm sure. – Laiv Jul 15 '17 at 19:41

According with the comments, looks like you are asking about the possibilities of automating repetitive jobs.

Human is falible. It's not good at doing repetitive and tedius things over and over. The more times it does something the more chances it has of failing. Here is where applications, as automated works, (or workflows) fit well.

Programms are good doing repetitive jobs. They don't get distracted, they don't get exhaust and if they are well implemented, they don't fail. Or in the worse case, they always do the same errors :-). And on top of this, they don't have payrolls.

They also are faster than us, what basically reverts in the consumer benefit. Consumers are provided with a service/product that generates predictive and faster responses.

The less time we spend doing an specific job, the more time we have to go shopping or to play video games.

Finally, it reduce the need of intermediaries. The interaction consumer - product/service is quite more straightforward and efficient. As you know, we humans sucks in communication, so the less intermediaries the better. And cheaper in the long run.

That being said, I have the feeling that you are probably asking about automate business processes. Humans workflows.

As I commented, some workflows are more administrative-like and they still may require intermediaries.

Here the final result of the process is not so predictive. The process still depends on the people doing their job. Like in the public administration.

This sort of automations are known as BPMS. BPMS allow us to computerize procedures that usually would take us to do manually and in person and that get involved different persons at different places and moments. These process still require some human activity like validations, confirmations, reviews, etc.

Think how we apply for unemployement benefits to the local administration. It require us to go to the local administration, wait for the turn, fill up a form and wait for the aproval. Then we have to be back for the renewval every month.

From the consumer point of view is a huge waste of time. From the guy/gal at the local administration office is an insane amount of work and papers.

Computerizing this workflow, the local administration allows citizens to apply for the benefits from home. Or from wherever they are. They also can check out the request's status (in process, waiting for aproval, aproved, rejected). Traceability we call it.

From the consumer point of view, automate workflows are seen as a time and energy savings. From the provider point of view, are seen as cost-cutting and reliable tools. They can make faster a business process that traditionally would take days or weeks to get done. The provider no longer need to send a messenger half way across the world to get the form X and wait for the best.

From everybody point of view, they allow us to focus on what matter. Anything but repetitive and tedius jobs.

  • Neatly explained @Laiv ! – gooogle Jul 15 '17 at 19:17
  • Hope it helps. I couldn't delve into the details because the question is fairly too broad. Would not surpise me if it gets closed. – Laiv Jul 15 '17 at 19:25

Not the answer you're looking for? Browse other questions tagged or ask your own question.