How to Model a Process Part Two

First off sorry that it has taken me a little bit longer then expected to come up with part two.  Let's begin shall we.


At each step in the process or workflow you need to determine what information is collected, displayed, allowed to be modified, validation rules, business rules the list is a bit long.

Let's start at the smallest unit at least in our system, the question.

You need to determine a lot about a question and its corresponding answer.  At a minimum you need to determine:

  1. What it should look like
  2. Where it should appear on the page
  3. Is this question repeated
  4. How should it be stored in a database
  5. Where should it be stored in a database
  6. How does it behave / business rules
  7. Does it react to answers supplied to other questions
  8. Does is have default or automatically calculated values
  9. Does it have a list of static or dynamic options available as answers
  10. Who gets to see, edit the answer

Once you have determined all the questions being asked you need to group them together so they can be stored in the database in a logical way. 

Here you need to determine if the groups of questions you are asking are answered only once, an indeterminate amount, a determinate amount.  This contributes to how you should layout the group of questions on the form. 

You may also need to determine if logically one group of questions can be considered as having a parent-child relationship with another group of questions.


In other steps of the process you may need some sort of data manipulation to happen.  I.e. data is translated from one system to another and back again.  The main things you need to be asking yourself are:

  1. For each column (or field) what is it, how is it stored, does it need to be parsed in some way and where is it going.
  2. For each row (or record) does it need to be broken into multiple records in the new system or do multiple rows or records need to be combined in some way into the new system.


In these types of gates where information is displayed or sent to users the questions you need answered are simply:

  1. What do you want to see
  2. How do you want it presented (layout, color etc)
  3. Who do you want to see it
  4. When do you want them to see it
  5. By which method (email, webpage) do you want it presented

How to Model a process Part One

There are a range of questions I need to ask in order for me to effectively model a current workflow process. 

I won’t go into all of the different methodologies but will just briefly tell you of one of the two methodologies we use.  This methodology was specifically developed by us to do our requirements gathering for implementing workflow applications.  As such we made it into a workflow application that guides us through the steps to create a requirements specification and an AS IS workflow diagram(s)
Question 1
What am I trying to do?
What is the commercial driver for putting in this workflow system?

Question 2
Who am I trying to make happy?

Question 3
What do I want to be able to show at the end?  Most people have some idea of the must have or nice to haves of what they want from their system.  Also if they have any reports or example reports that they want the system to produce look at these almost immediately. 
This will tell you the minimum amount of information the system will need to collect in order for you to deliver the report.

Question 4
What are the end points of the workflow/process i.e. when does the process terminate?
Remember an end point is a high level goal and this most be looked at key to the systems success.

Question 5
What is the step or steps immediately preceding the endpoint(s)?  Our philosophy is working from the back (i.e. the goals) to the front.  This allows us to better capture all the steps.  People who work from beginning to end sometimes skip steps whereas if they are asked what must immediately follow step a they are less likely to leave things out.
*Please note that we define a step as a placeholder where ONE person or ONE machine is able to supply all the information required for that step to be completed at a single point in time.
**A step is also often referred to as an activity.

Question 6
Are there any rules under which a step is omitted?
Answering all these questions allows us to create a workflow diagram (in the application I mentioned above the diagram is actually created for us)
but we still need to find out what information is displayed, created, updated at each of the steps.  I will get into that in my next blog entry.
In Part Two, of this discussion I plan to go into more depth about understanding what is going on in the current process.
In Part Three, I will examine what questions you should be asking to take your current workflow and determine what steps can be:
1) eliminated
2) automated
3) done in parallel
4) divided into multiple steps
5) combined into single steps
6) outsourced
7) assigned business rules for escalations