ProcessModel—A Competitive Advantage
A process engineering tool for improving business processes. It has been said that nothing is more powerful than an idea whose time has come. ProcessModel is a process engineering tool for visualizing, analyzing, and improving business processes. Designed specifically for managers and planners, ProcessModel combines simple
flowcharting technology with powerful simulation capability to bring flowcharts to life through graphical animation.
A decision-making tool. With the increasing challenge confronting businesses to improve their processes and the advent of powerful computing technology, computer simulation is emerging as a powerful decision making tool for process engineering. Simulation uses a computer to mimic a process in order to visualize and analyze its
performance in terms of cycle times, throughput capacity, and resource utilization. ProcessModel gives you the best simulation information as a basis for your decisions.
A tool for trying out new ideas. Imagine being in a highly competitive industry and managing a manufacturing or service operation that is burdened by outdated technologies and inefficient work practices. To stay competitive, you know that changes must be made, but you are not sure what changes would work best, or even if certain changes will work at all. You would like to try out new ideas for improving your business processes, but recognize that this would be very time consuming, expensive, and disruptive to the current operation. ProcessModel can provide a way to run these tests efficiently.
A powerful tool for performing “what-if” analyses. Suppose that there were some cost and risk free way to rearrange any activity, reallocate any resource, or change any operational procedure. What if you could even try out completely new technologies and methods of operation? Suppose that all of this experimentation could be done risk free—without committing any capital, wasting any time, or disrupting the actual process. This is precisely the kind of capability that ProcessModel provides. This powerful tool lets you perform “what-if” analyses with a computer model of your process in compressed time giving you insight into ways to improve your processes that would otherwise be unattainable.
Why Use ProcessModel?
ProcessModel is quick and easy to use. It takes only minutes to learn because it uses basic flowcharting techniques. The on-line, context sensitive help system provides all the information needed to define your model quickly and easily. And the User’s Guide is full of examples of common modeling situations, giving you a repository of knowledge before you even begin.
ProcessModel is useful for improving all types of business processes including transaction processing, customer servicing, production and assembly operations, and transportation services. ProcessModel takes the guesswork out of decision making enabling you to make informed and confident decisions. Typical ProcessModel applications include:
• Staff scheduling and shift planning
• Task prioritization and interruption
• Method selection
• Capacity planning
• Lot sizing
• Appointment scheduling
• Job sequencing
• Production scheduling
• Productivity improvement
• Cycle time reduction
• Cost reduction
• Quality management
• Bottleneck analysis
• Activity and resource-based costing
• Resource scheduling for breaks and downtime
Another reason to use ProcessModel is that it provides replication analysis, user definable variables and attributes, and standard and customized reports.
Additionally, ProcessModel allows you to create hierarchical models to better organize and manage large modeling projects. Teams can define different parts of a complex model and then put them together to simulate the entire process. The possibilities are endless with ProcessModel.
To realize your best possibilities, ProcessModel makes available the power of special features: LIVE Animation™, OneStep™ modeling approach, and Visual Staffing™, as well as Process Optimization.
To communicate changes or visually evaluate your current processes. LIVE Animation™ stands for Life-like Validating and Envisioning Animation. ProcessModel provides much more than just blinking boxes. With ProcessModel, you can actually see people, paperwork, and other objects flowing through the system, making it easy to recognize bottlenecks and see how extensive they are. LIVE Animation™ is a powerful tool for communicating changes or visually evaluating your current processes.
OneStep™ Modeling Approach
To describe processes easily in a minimum of steps. Processes that are difficult or even impossible to define using other tools are easily described using ProcessModel’s OneStep™ approach. This modeling approach is designed to make modeling common processes as easy as one step. Other tasks are also reduced in complexity, so a minimum number of steps are required to define process logic.
To include people and resources in your model, so you improve the success rate of your implementation. ProcessModel gives you the ability to put people back into the process. Extensive staffing functions allow you to model any situation including the use of multiple resources or personnel. It is easy to use, allowing more people to become involved in the modeling process. ProcessModel is a great communication tool. By animating changes, employees will be able to visualize the effects of proposed changes on their jobs, making implementation easier.
To evaluate your existing ProcessModel simulation models and perform “what-if” analyses to find better ways to achieve the results you desire. ProcessModel uses the sophisticated optimization algorithms of the SimRunner application to help you optimize multiple factors simultaneously. By controlling input settings, ProcessModel will find the course of action that will optimize your entire system’s performance.
ProcessModel provides the following features:
Types of Modeling
• Single level or true hierarchical modeling
• Push / pull flow control
• Reorder-point inventory replenishment
• Individual or group processing
• Assembly and disassembly of items
• Realistic visual representation
• Dynamically updated scoreboard with key performance indicators
• On-screen variables
• Changing of graphics during simulation
• Ability to import graphics from the program of your choice
People and Resources
• Use of multiple or alternative resources
• Prioritized or interruptive use of resources
• Shift assignments
• Random or planned failure or loss of time
• Downtime specifications
Routing and Control of Entities
• Routing of items based on type, percentage, or user-defined conditions
• Continuous, periodic, fluctuating, or scheduled customer or work item arrivals
• Matching of orders to the correct customer
• Document splitting and tracking
• Customers dropping out of line (reneging)
• Unlimited branching and merging
Analysis and Improvement
• Multiple scenario analysis
• Multiple replication analysis
• Advanced Process optimization
• Cost tracking
• Value added, non value added, and book value added
• Total project cost
• Cost per entity
Logic and Detail
• Pre-defined and user-defined attributes and variables
• User-defined logic for special circumstances
• Full trace capability during simulation
• Data spreadsheet import and export capability
• Process templates
• Model objects—for reusable building blocks
• Link models to Excel.
|10.1.1||Activity time that varies randomly due to the variable nature of the entity or activity or as a result of the inconsistent behavior of the resource used at the activity.|
|10.1.2||Multiple entities are allowed to enter an activity and be processed concurrently (at the same time at the same activity), independent of other entities.|
|10.1.3||The activity time or some other activity action is based on the value of a particular attribute of the entity.|
|10.1.4||The activity time or some other activity action occurs only a percentage of the time.|
|10.1.5||Attach or join one or more entities (e.g. component parts) to a base entity.|
|10.1.6||Detach one or more entities from another entity to which they have been attached.|
|10.1.7||An activity through which the same entity passes multiple times, possibly with a different activity time or routing with each pass.|
|10.1.8||Collect two or more entities into a batch or group after an activity in order to move them on to the next activity as a batch.|
|10.1.9||Hold all items until a specific time of day, then batch all entities in the queue.|
|10.1.10||Separate an entity batch into individual entities after the completion of an activity. It is assumed that entities have been previously batched.|
|10.1.11||Collect two or more entities in the input queue of an activity in order to process them together as a batch.|
|10.1.12||For entities routed to an activity as a batch, it may be desirable to unbatch the entities prior to the activity (in the input queue) for processing each entity individually.|
|10.1.13||Create a batch that is the same size as a previous batch without specifying a quantity.|
|10.1.14||A grouped entity (as a result of attaching or picking up) enters an activity input queue where each entity in the group entity is processed individually.|
|10.1.15||In situations where one or more activities are performed during different shifts or time periods, it may be useful to reflect this difference in a schedule during the simulation.|
|10.1.16||Stop the processing and hold entities from further processing or movement until a condition is fulfilled.|
|10.1.17||In situations where an activity is scheduled to go off shift or on break, it is sometimes desirable to interrupt the current activity rather than wait until it is finished.|
|10.2.1||Attaching one or more entities to a base entity.|
|10.2.2||One or more new entities are created or split off from another entity at an activity.|
|10.2.3||Set an attribute, variable, or expression to control whether one or more new entities are created or split off from an existing entity. Also control the quantity of entities to be created.|
|10.2.4||A single entity is divided up into two or more entities.|
|10.2.5||Reunite or join one or more entities to the entity from which they were either created or detached.|
|10.2.6||The entity requesting the pickup is attached to the requested entity.|
|10.2.7||Separating entities that were previously attached or picked up.|
|10.2.8||An activity that examines the name or some other attribute of an entity to determine how to route the entity for further processing.|
|10.2.9||Changing the name of an entity at an arrival, activity, or move time (routing). The name is important because statistics are reported by entity name when entities exit the system|
|10.2.10||An entity attribute is assigned a different value or descriptor based on a random percentage.|
|10.2.11||A customer is waiting for service and decides to leave rather than continue waiting.|
|10.6.6||Pull entities out of a queue based on a priority.|
|10.3.1||An arrival that supplies entities to the attached activity whenever that activity has the capacity to take more entities (any input queue capacity is ignored).|
|10.3.2||Arrivals in which one or more entities arrive at fixed time intervals.|
|10.3.3||An average number of entities arrive randomly throughout a specified period. Useful in modeling situations where no specific pattern seems to exist.|
|10.3.4||Arrivals occurring at specifically scheduled times such as office appointment schedules.|
|10.3.5||Arrivals occurring at specifically scheduled times with provision for variable early and late adjustment.|
|10.3.6||Scheduled arrivals that are grouped in an activity (usually the first) using the Rebatch selection in the Batching tab, thereby grouping the same quantity of entities that arrived for that particular scheduled arrival.|
|10.3.7||A production schedule in which a sequence of different items is repeatedly produced.|
|10.3.8||A job shop produces a sequence of jobs with varying quantities for a specific time period, e.g., a day or week.|
|10.3.9||Replenishing inventory once that inventory reaches a certain level. Useful in maintaining certain levels of stock for production processes.|
|10.3.10||The arrival rate of customers fluctuates according to a daily pattern. Useful for modeling customer traffic with busy and slow periods.|
|10.4.1||Routing entities from one activity to one of several subsequent activities based on percentages, e.g. 40% go here and 60% go there.|
|10.4.2||Routing entities based on a condition such as the value of a variable or attribute.|
|10.4.3||Routing entities to an alternate storage or activity when the primary routing condition cannot be met.|
|10.4.4||Entities are routed to the next activity only when the next activity is ready for it. Useful for simple just-in-time or pull systems.|
|10.4.5||An entity is routed to activity or storage to pick up another entity which has been routed to the same activity or storage. The other entity is then attached to the entity doing the picking up.|
|10.5.1||A resource (employee, machine, etc.) is used at an activity to perform the activity.|
|10.5.2||Routing an entity with the use of a resource (employee, machine, etc.).|
|10.5.3||A resource is continuously used throughout a number of activities, including the moves from one activity to another.|
|10.5.4||Using more than one resource (employee, machine, etc.) to perform an activity.|
|10.5.5||Designating a resource as an alternate to be used if the primary resource assigned to the activity or move is unavailable.|
|10.5.6||When an alternative resource is captured by an entity and a decision or activity time depends on which resource was captured, the OwnedResource function may be used to determine which resource was captured.|
|10.5.7||When a resource is used at more than one activity or routing, one activity may have higher priority over another. When that is the case, the resource will be used at the activity with a higher priority when both activities are trying to capture the resource at the same time.|
|10.5.8||Taking a resource off a task to perform another whether or not it has finished the original task. Then the resource returns to the interrupted task to finish it.|
|10.5.9||Scheduling equipment for regular maintenance so that it is unavailable for use during certain periods.|
|10.5.10||A resource, such a a machine, fails during the simulation.|
|10.5.11||Employees, for one reason or another, are not always available. An employee may miss a day or a half day or an hour of work.|
|10.5.12||In situations where one or more resources are available during different shifts or time periods, it may be useful to reflect this difference in a schedule during the simulation.|
|10.5.13||Modeling consumable resources such as money, energy, water, etc. Useful for modeling the consumption of a resource.|
|10.5.14||Sharing resources between two or more activities. Useful when a resource may be used at more than one activity.|
|10.5.15||Taking into account the additional duties of employees that are not defined in the model by using resource availability. Useful when an employee is not always available to perform the activity assigned to him or her in the model due to personal circumstances or extraneous duties.|
|10.6.1||Reordering more items when an inventory level has been depleted to a certain level. Useful for stock replenishment based on a reorder level.|
|10.6.2||Producing additional items when an in-process or finished goods storage has been depleted to a certain level. Useful for producing on demand based on the monitoring of an inventory level.|
|10.6.3||Having an initial quantity or inventory of entities at a storage area or queue when the simulation begins.|
|10.6.4||Having an activity check the current number of entities that are onhand at a particular storage area. Useful for making decisions based on the number of entities in a storage, activity, or range of activities.|
|10.6.5||The last entity to enter the storage is the first to exit or leave. Thus entities entering 1, 2, 3 exit in the order 3, 2, 1. Useful when it is important to model entities that are processed first in, last out.|
|10.7.1||Making a decision based on a particular condition. Useful when an activity time, action logic, or routing decision is based on the value of an attribute or variable.|
|10.7.2||Making a decision based on probabilities—on a percentage basis. Useful when an activity time, action logic, or routing decision is based on a random percentage.|
|10.8.1||Tracking the cost of using resources (people, machines, etc.) in the model.|
|10.8.2||Tracking the cost of an activity.|
|10.8.3||Tracking the cost applied to the time an entity spends in the model waiting to be processed at an activity or moved to the next activity.|
|10.8.4||Tracking additional costs based on special circumstances.|
|10.9.1||Counting the total number of entities meeting a special condition.|
|10.9.2||Tracking the time weighted average number of entities occupying a stage in the process that consists of more than a single activity.|
|10.9.3||Tracking the length of time spent in a particular stage of a process.|
|10.9.4||Counting the number of times that an activity or other time consuming events fell within a particular range.|
|10.9.5||Tracking the number of times a particular resource is used for a particular activity or set of activities.|
|10.9.6||Creating an on-screen clock that will display the time of day and day of week.|
|10.9.7||Show dynamic variables while the simulation runs.|
|10.10.1||Changing the name and graphic representation of an entity at some point in the model. Two techniques are given. Change the statistics or not depending on the technique used.|
|10.10.2||Making the connection invisible entities appear to move without a path connecting the origin and destination of the entity.|
|10.10.3||Creating a background for the model. Useful in illustrating your model.|
|10.10.4||Adjusting the rate of the animation to speed past uneventful time segments in the simulation, show only important time periods, or slow the simulation to examine details.|
|10.10.5||Import graphics to be used as entities to enhance the dynamic representation of your model.|
Setup & Installation
In this section you will find the necessary instructions to get your copy of ProcessModel installed and running on your system. Please Note that while you can run ProcessModel on the minimum required hardware, you should use the fastest PC (fast processor) with the most RAM that is available to you in order to enjoy faster simulation and smoother animation.
How To Setup the ProcessManager
ProcessManager is a stand-alone web based document management system hosted by ProcessModel, Inc. It runs independently from the ProcessModel application, though there is a link to the ProcessManager on ProcessModel’s File menu. Because it is web based, no installation is necessary on individual computers. After purchasing this application from your ProcessModel account manager, you will be setup with a company account which will be authorized for the specific number of user accounts you have purchased. Your login username will be your email address.
If you would prefer to host the ProcessManager and all associated documents yourself, you can purchase a version that can be installed on your own local server and access the application through your company intranet.
For a description of the benefits and features of the ProcessManager, See “ProcessManager”.
File Extensions Used
The following file extensions are used in ProcessModel.
- .abc iGrafx flowchart file (older versions).
- .ecf iGrafx collection file which contains a group of palettes.
- .emf enhanced metafile created by ProcessModel and updated each time the model is saved.
- .flo iGrafx flowchart file (older versions).
- .flx file to customize the integration of iGrafx.
- .glb graphics library which contains the entity icons and any custom graphics and libraries.
- .igt iGrafx template file.
- .igx iGrafx/ProcessModel flowchart file (new versions). This is the Micrografx flow chart file which contains the flow diagram of the model. (Registered to iGrafx in Windows.)
- .mod compiled model file used by the simulation engine.
- .opt SimRunner project file.
- .pmd this is the model database which contains all pertinent model information entered in the properties dialog as well as the simulation menu data. This file is the model database which contains all pertinent model information entered in the properties dialog and the dialogs accessed from the simulation menu. (Registered to ProcessModel in Windows.)
- .rdb results database used by the output module used to create statistical charts and reports.
- .rdt time series results file use to create time series charts and graphs.
- .rdw file used to maintain a snapshot of all the reports and graphs open in the output module.
- .sbj iGrafx subject file containing the graphics for each palette.
- .sed random number seed file.
- .sft shift file. This is the shift file defined for the model. Shift files allow you to create work schedules for activities and resources.
- .spg ProcessModel package file. The compressed file containing all the files needed to install and simulate a model, including the main model, submodels, shifts, output formatting and external files.
- .src SimRunner source file.
- .trc trace file showing simulation process steps
ProcessModel Technical Support
If you have any questions or comments, you may contact technical support Monday through Friday 8:00 AM to 5:00 PM Mountain Time.
ProcessModel comes with one year free Maintenance & Support.
Maintenance and Support includes:
1. Customer support
2. Queries & help regarding models
3. Help with any simulation errors
4. Access to the Model Objects Library
5. Access to the Knowledgebase
6. Access to the User’s Cafe’
7. Upgrades within the same version number
To renew Maintenance & Support for your ProcessModel software call Sales.