You are here:Home>Knowledge Base>Creating a Scheduled Customer Arrival Pattern

Creating a Scheduled Customer Arrival Pattern

Today I will be discussing on how to create a scheduled customer arrival pattern in ProcessModel simulation software for use in process improvement processes. If you are looking for an arrival pattern where some of your entities will arrive on-time, some late and some not showing up at all, this is what you should be reading. To be true this article will help you ‘modify’ your current arrival pattern to all of the above rather than creating a new one and will help in fast tracking your work in the business simulation software.

Creating Process Map

Place STORAGE after the arrival route of your entity, from the STORAGE create three exit routes. The first route connected directly to the PROCESS (say PROCESS1) where you want the entities to go to be processed (this will be our on-time), place a DELAY activity and connect the second exiting route from STORAGE to it, from the DELAY activity create an exit route to PROCESS1 (this will be out late), The third exit route from the STORAGE should be left as-is (the entity is allowed to exit the model), this will be our no-show.

Declaring Attributes and Scenario Parameters

We will need one Attribute and three Scenario Parameters for this to work. The Attribute is to be used to control the flow of the entities to the three different routes; the attribute is to be ‘Descriptive’ with values like ONTIME, LATE, and NOSHOW (say attribute name is a_Path). The first Scenario Parameter will be used to store the historical percentages (from your record) of the entities that were no-show (say Scenario Parameter name is s_NoShow), the second Scenario Parameter will be used to store the historical percentage of the entities that arrive late (say Scenario Parameter name is s_Late), the third Scenario Parameter will give a time on how late an entity is to arrive, it’s usually a good idea to use distribution here (say Scenario Parameter name is s_LateTime).

Defining Routes

One of the easiest things to do in ProcessModel business simulation software is declaring route types. The route exiting from STORAGE to PROCESS1 is to be conditional, the entities flowing through here will be the one that arrive on-time, the condition on the route should be something like a_Path = ONTIME, The route exiting from STORAGE to DELAY should be conditional as well, with the condition set as a_Path = LATE, the third exiting route from STORAGE is to be conditional as well with condition a_Path = NOSHOW.

The Action Logic

ProcessModel is one of the easiest software’s in which one can create logic for process for business process improvement. The Action Logic in this scenario is very much simple and easy to implement. In the STORAGE goto the Action Logic tab and declare the Attribute (ex: a_Path) equal to a used defined distribution with three values. The first value to be is the Scenario Parameter Late plus (+) Scenario Parameter NoShow the descriptive value it should generate should be OnTime all this is to be subtracted from 100 (an in 100%) (ex: 100 – (s_Late + s_NoShow), OnTime), the second value is to be Scenario Parameter Late giving the descriptive value of LATE (ex: s_Late, LATE), the third value is to be Scenario Parameter NoShow giving the descriptive value of NoShow (ex: s_NoShow, NOSHOW).  The entire Action Logic will look something like this a_Path =  D3(100 – (s_Late + s_NoShow), OnTime, s_Late, LATE, s_NoShow, NOSHOW). At the exiting route from DELAY to PROCESS1, in the Action Logic tab write Action Logic so that the CycleStart is set to Clock()and VATime to 0, this will make the entity look as if it just came into the model (ex: CycleStart = Clock () and VATime = 0).

This should get you going on the problem where you want entities to have a custom scheduled pattern using the business simulation software, ProcessModel. You may also want to learn how to create an activity that has dynamic capacity. If you are looking for more resources and would like to learn something else write to me in the comments and I will try my best to cover it when I write again. I hope this can be of help to many of you out there looking for a solution to a relatively easy problem.


  1. Cara Berrios January 17, 2015 at 4:05 PM - Reply

    I have one question for you Scott. Is daylight saving time supported in this model object?

    • Scott Baird January 21, 2015 at 10:08 AM - Reply

      Good question Cara. There are many questions in modeling that are important when changing a system. Usually a model of this type is run for many weeks. The question of adding or subtracting an hour in one of the days becomes less significant in longer run lengths and was not included.

  2. Jeremy G. Singleton January 15, 2015 at 1:00 PM - Reply

    Scott, can you post about dynamically changing the capacity of an activity during the simulation? These knowledge based posts you write are very helpful.

    • Scott Baird January 21, 2015 at 10:25 AM - Reply

      Jeremy, take a look at the following post about changing the capacity of an activity during the simulation: Changing Capacity

      • Jeremy G. Singleton January 28, 2015 at 5:58 PM - Reply

        I see the post ”An Activity That Has A Dynamic Capacity…” thanks for this great post. You are very good teacher and writer man.

        • Scott Baird February 9, 2015 at 9:29 AM - Reply

          Thanks for the kind words Jeremy. It is fun for us to supply things that will make a difference.

  3. Thelma J. Davis January 10, 2015 at 8:27 PM - Reply

    This has great flexibility when it comes to modeling different systems. I have used many different software packages. This one is most powerful tool in business modeling and simulation.

  4. alex January 8, 2015 at 7:39 AM - Reply

    yes, Scott. please post how to create an activity that has dynamic capacity.

Leave a Reply